Author: jhibbits
Date: Wed Nov 12 09:14:12 2014
New Revision: 221790
URL: http://llvm.org/viewvc/llvm-project?rev=221790&view=rev
Log:
FIx a bug with PC-register handling in a RA register.
The addition of RegisterNumber introduced a bug where if the PC is stored in a
return address register, such as on ARM and PowerPC, this register number is
retrieved and used, but never checked in the row if it's saved. Correct this by
setting the variable that's used to the new register number.
Patch by Jason Molenda.
Modified:
lldb/trunk/source/Plugins/Process/Utility/RegisterContextLLDB.cpp
Modified: lldb/trunk/source/Plugins/Process/Utility/RegisterContextLLDB.cpp
URL:
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/Utility/RegisterContextLLDB.cpp?rev=221790&r1=221789&r2=221790&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/Utility/RegisterContextLLDB.cpp (original)
+++ lldb/trunk/source/Plugins/Process/Utility/RegisterContextLLDB.cpp Wed Nov
12 09:14:12 2014
@@ -1190,6 +1190,7 @@ RegisterContextLLDB::SavedLocationForReg
{
return_address_reg.init (m_thread,
m_full_unwind_plan_sp->GetRegisterKind(),
m_full_unwind_plan_sp->GetReturnAddressRegister());
+ regnum = return_address_reg;
UnwindLogMsg ("requested caller's saved PC but this UnwindPlan
uses a RA reg; getting %s (%d) instead",
return_address_reg.GetName(),
return_address_reg.GetAsKind (eRegisterKindLLDB));
}
_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits