Handle the case of interworking branch for EmulateLDMDA.
git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125392 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp b/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
index dccf5c0..9ed9c65 100644
--- a/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
+++ b/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
@@ -1996,7 +1996,8 @@
uint32_t data = ReadMemoryUnsigned (context, address + offset, addr_byte_size, 0, &success);
if (!success)
return false;
- if (!WriteRegisterUnsigned (context, eRegisterKindGeneric, LLDB_REGNUM_GENERIC_PC, data))
+ // In ARMv5T and above, this is an interworking branch.
+ if (!LoadWritePC(context, data))
return false;
}