compnerd created this revision. compnerd added reviewers: xiaobai, labath, clayborg. Herald added subscribers: abidh, atanasyan, kristof.beyls, arichardson, javed.absar, sdardis. Herald added a project: LLDB.
Enable the ARM emulation support on AArch64 which can execute ARM32 code. Similarly, handle MIPS 32 on 64. Repository: rLLDB LLDB https://reviews.llvm.org/D62159 Files: tools/lldb-server/SystemInitializerLLGS.cpp Index: tools/lldb-server/SystemInitializerLLGS.cpp =================================================================== --- tools/lldb-server/SystemInitializerLLGS.cpp +++ tools/lldb-server/SystemInitializerLLGS.cpp @@ -24,6 +24,10 @@ #include "Plugins/Instruction/ARM/EmulateInstructionARM.h" #endif +#if defined(__arm64__) || defined(__aarch64__) || defined(_M_ARM64) +#define LLDB_TARGET_ARM64 +#endif + #if defined(__mips__) || defined(mips) || defined(__mips) || \ defined(__MIPS__) || defined(_M_MIPS) #define LLDB_TARGET_MIPS @@ -44,10 +48,10 @@ HostObjectFile::Initialize(); -#if defined(LLDB_TARGET_ARM) +#if defined(LLDB_TARGET_ARM) || defined(LLDB_TARGET_ARM64) EmulateInstructionARM::Initialize(); #endif -#if defined(LLDB_TARGET_MIPS) +#if defined(LLDB_TARGET_MIPS) || defined(LLDB_TARGET_MIPS64) EmulateInstructionMIPS::Initialize(); #endif #if defined(LLDB_TARGET_MIPS64) @@ -60,10 +64,10 @@ void SystemInitializerLLGS::Terminate() { HostObjectFile::Terminate(); -#if defined(LLDB_TARGET_ARM) +#if defined(LLDB_TARGET_ARM) || defined(LLDB_TARGET_ARM64) EmulateInstructionARM::Terminate(); #endif -#if defined(LLDB_TARGET_MIPS) +#if defined(LLDB_TARGET_MIPS) || defined(LLDB_TARGET_MIPS64) EmulateInstructionMIPS::Terminate(); #endif #if defined(LLDB_TARGET_MIPS64)
Index: tools/lldb-server/SystemInitializerLLGS.cpp =================================================================== --- tools/lldb-server/SystemInitializerLLGS.cpp +++ tools/lldb-server/SystemInitializerLLGS.cpp @@ -24,6 +24,10 @@ #include "Plugins/Instruction/ARM/EmulateInstructionARM.h" #endif +#if defined(__arm64__) || defined(__aarch64__) || defined(_M_ARM64) +#define LLDB_TARGET_ARM64 +#endif + #if defined(__mips__) || defined(mips) || defined(__mips) || \ defined(__MIPS__) || defined(_M_MIPS) #define LLDB_TARGET_MIPS @@ -44,10 +48,10 @@ HostObjectFile::Initialize(); -#if defined(LLDB_TARGET_ARM) +#if defined(LLDB_TARGET_ARM) || defined(LLDB_TARGET_ARM64) EmulateInstructionARM::Initialize(); #endif -#if defined(LLDB_TARGET_MIPS) +#if defined(LLDB_TARGET_MIPS) || defined(LLDB_TARGET_MIPS64) EmulateInstructionMIPS::Initialize(); #endif #if defined(LLDB_TARGET_MIPS64) @@ -60,10 +64,10 @@ void SystemInitializerLLGS::Terminate() { HostObjectFile::Terminate(); -#if defined(LLDB_TARGET_ARM) +#if defined(LLDB_TARGET_ARM) || defined(LLDB_TARGET_ARM64) EmulateInstructionARM::Terminate(); #endif -#if defined(LLDB_TARGET_MIPS) +#if defined(LLDB_TARGET_MIPS) || defined(LLDB_TARGET_MIPS64) EmulateInstructionMIPS::Terminate(); #endif #if defined(LLDB_TARGET_MIPS64)
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits