Author: carlokok
Date: Mon Oct 14 02:09:13 2013
New Revision: 192571
URL: http://llvm.org/viewvc/llvm-project?rev=192571&view=rev
Log:
Set the architecture from the remote executable when it's not set so the
register info can be loaded properly (and thus the callstacks work)
Modified:
lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
Modified: lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
URL:
http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp?rev=192571&r1=192570&r2=192571&view=diff
==============================================================================
--- lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp (original)
+++ lldb/trunk/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp Mon Oct
14 02:09:13 2013
@@ -564,6 +564,11 @@ ProcessGDBRemote::DoConnectRemote (Strea
GetThreadList();
if (m_gdb_comm.SendPacketAndWaitForResponse("?", 1,
m_last_stop_packet, false))
{
+ if (!m_target.GetArchitecture().IsValid()) { // Make sure we have
an architecture
+ m_target.SetArchitecture(m_gdb_comm.GetProcessArchitecture());
+ }
+
+
const StateType state = SetThreadStopInfo (m_last_stop_packet);
if (state == eStateStopped)
{
@@ -762,6 +767,10 @@ ProcessGDBRemote::DoLaunch (Module *exe_
if (m_gdb_comm.SendPacketAndWaitForResponse("?", 1,
m_last_stop_packet, false))
{
+ if (!m_target.GetArchitecture().IsValid()) { // Make sure we
have an architecture
+
m_target.SetArchitecture(m_gdb_comm.GetProcessArchitecture());
+ }
+
SetPrivateState (SetThreadStopInfo (m_last_stop_packet));
if (!disable_stdio)
_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits