[Lldb-commits] [lldb] r238431 - Fix write register context in EmulateInstructionARM::EmulateMOVRdRm

Tamas Berghammer tberghammer at google.com
Thu May 28 08:09:45 PDT 2015


Author: tberghammer
Date: Thu May 28 10:09:45 2015
New Revision: 238431

URL: http://llvm.org/viewvc/llvm-project?rev=238431&view=rev
Log:
Fix write register context in EmulateInstructionARM::EmulateMOVRdRm

Modified:
    lldb/trunk/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp

Modified: lldb/trunk/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp?rev=238431&r1=238430&r2=238431&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp (original)
+++ lldb/trunk/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp Thu May 28 10:09:45 2015
@@ -815,7 +815,10 @@ EmulateInstructionARM::EmulateMOVRdRm (c
 
         // The context specifies that Rm is to be moved into Rd.
         EmulateInstruction::Context context;
-        context.type = EmulateInstruction::eContextRegisterPlusOffset;
+        if (Rd == 13)
+            context.type = EmulateInstruction::eContextAdjustStackPointer;
+        else
+            context.type = EmulateInstruction::eContextRegisterPlusOffset;
         RegisterInfo dwarf_reg;
         GetRegisterInfo (eRegisterKindDWARF, dwarf_r0 + Rm, dwarf_reg);
         context.SetRegisterPlusOffset (dwarf_reg, 0);





More information about the lldb-commits mailing list