diff options
Diffstat (limited to 'lldb/source/Target')
-rw-r--r-- | lldb/source/Target/Platform.cpp | 6 | ||||
-rw-r--r-- | lldb/source/Target/Thread.cpp | 1 |
2 files changed, 7 insertions, 0 deletions
diff --git a/lldb/source/Target/Platform.cpp b/lldb/source/Target/Platform.cpp index 3087512fb77..c9849a9e5f0 100644 --- a/lldb/source/Target/Platform.cpp +++ b/lldb/source/Target/Platform.cpp @@ -1823,6 +1823,12 @@ size_t Platform::GetSoftwareBreakpointTrapOpcode(Target &target, trap_opcode_size = sizeof(g_aarch64_opcode); } break; + case llvm::Triple::arc: { + static const uint8_t g_hex_opcode[] = { 0xff, 0x7f }; + trap_opcode = g_hex_opcode; + trap_opcode_size = sizeof(g_hex_opcode); + } break; + // TODO: support big-endian arm and thumb trap codes. case llvm::Triple::arm: { // The ARM reference recommends the use of 0xe7fddefe and 0xdefe but the diff --git a/lldb/source/Target/Thread.cpp b/lldb/source/Target/Thread.cpp index bdc0c31e468..e12b9050110 100644 --- a/lldb/source/Target/Thread.cpp +++ b/lldb/source/Target/Thread.cpp @@ -2061,6 +2061,7 @@ Unwind *Thread::GetUnwinder() { case llvm::Triple::ppc64le: case llvm::Triple::systemz: case llvm::Triple::hexagon: + case llvm::Triple::arc: m_unwinder_up.reset(new UnwindLLDB(*this)); break; |