diff options
author | Oleksiy Vyalov <ovyalov@google.com> | 2015-08-10 21:49:50 +0000 |
---|---|---|
committer | Oleksiy Vyalov <ovyalov@google.com> | 2015-08-10 21:49:50 +0000 |
commit | 9dcdd2ee0370dd8d43b0a668a11721038aeaf2d4 (patch) | |
tree | 09d15c53f49047dfe7e6a506e358f1494c62fc5e /lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp | |
parent | e5101e2016311c315119c8ad50a970b6b0c87cc7 (diff) | |
download | bcm5719-llvm-9dcdd2ee0370dd8d43b0a668a11721038aeaf2d4.tar.gz bcm5719-llvm-9dcdd2ee0370dd8d43b0a668a11721038aeaf2d4.zip |
Revert r244308 since it's introducing test regressions on Linux:
- TestLldbGdbServer.py both clang & gcc, i386 and x86_64
- TestConstVariables.py gcc, i386 and x86_64
- 112 failures clang, i386
llvm-svn: 244514
Diffstat (limited to 'lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp')
-rw-r--r-- | lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp | 84 |
1 files changed, 51 insertions, 33 deletions
diff --git a/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp b/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp index dd577034f5e..a762930e8eb 100644 --- a/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp +++ b/lldb/source/Plugins/Process/Utility/RegisterContextLinux_mips64.cpp @@ -12,24 +12,66 @@ #include <vector> #include <stddef.h> +// For GDB, GCC and DWARF Register numbers #include "RegisterContextLinux_mips64.h" -// For GP and FP buffers -#include "RegisterContext_mips.h" - -// Internal codes for all mips32 and mips64 registers -#include "lldb-mips-linux-register-enums.h" +// Internal codes for all mips64 registers +#include "lldb-mips64-register-enums.h" +#include "RegisterContext_mips64.h" using namespace lldb; using namespace lldb_private; +// GP registers +typedef struct _GPR +{ + uint64_t zero; + uint64_t r1; + uint64_t r2; + uint64_t r3; + uint64_t r4; + uint64_t r5; + uint64_t r6; + uint64_t r7; + uint64_t r8; + uint64_t r9; + uint64_t r10; + uint64_t r11; + uint64_t r12; + uint64_t r13; + uint64_t r14; + uint64_t r15; + uint64_t r16; + uint64_t r17; + uint64_t r18; + uint64_t r19; + uint64_t r20; + uint64_t r21; + uint64_t r22; + uint64_t r23; + uint64_t r24; + uint64_t r25; + uint64_t r26; + uint64_t r27; + uint64_t gp; + uint64_t sp; + uint64_t r30; + uint64_t ra; + uint64_t mullo; + uint64_t mulhi; + uint64_t pc; + uint64_t badvaddr; + uint64_t sr; + uint64_t cause; + uint64_t ic; + uint64_t dummy; +} GPR; + //--------------------------------------------------------------------------- // Include RegisterInfos_mips64 to declare our g_register_infos_mips64 structure. //--------------------------------------------------------------------------- #define DECLARE_REGISTER_INFOS_MIPS64_STRUCT -#define LINUX_MIPS64 #include "RegisterInfos_mips64.h" -#undef LINUX_MIPS64 #undef DECLARE_REGISTER_INFOS_MIPS64_STRUCT //--------------------------------------------------------------------------- @@ -73,35 +115,17 @@ GetRegisterInfoCount (const ArchSpec &target_arch) } } -uint32_t -GetUserRegisterInfoCount (const ArchSpec &target_arch) -{ - switch (target_arch.GetMachine()) - { - case llvm::Triple::mips: - case llvm::Triple::mipsel: - return static_cast<uint32_t> (k_num_user_registers_mips); - case llvm::Triple::mips64el: - case llvm::Triple::mips64: - return static_cast<uint32_t> (k_num_user_registers_mips64); - default: - assert(false && "Unhandled target architecture."); - return 0; - } -} - RegisterContextLinux_mips64::RegisterContextLinux_mips64(const ArchSpec &target_arch) : lldb_private::RegisterInfoInterface(target_arch), m_register_info_p (GetRegisterInfoPtr (target_arch)), - m_register_info_count (GetRegisterInfoCount (target_arch)), - m_user_register_count (GetUserRegisterInfoCount (target_arch)) + m_register_info_count (GetRegisterInfoCount (target_arch)) { } size_t RegisterContextLinux_mips64::GetGPRSize() const { - return sizeof(GPR_linux_mips); + return sizeof(GPR); } const RegisterInfo * @@ -116,10 +140,4 @@ RegisterContextLinux_mips64::GetRegisterCount () const return m_register_info_count; } -uint32_t -RegisterContextLinux_mips64::GetUserRegisterCount () const -{ - return m_user_register_count; -} - #endif |