[Lldb-commits] [lldb] r122981 - in /lldb/trunk/source/Plugins/Process/Linux: LinuxThread.cpp LinuxThread.h RegisterContextLinux.h RegisterContextLinux_x86_64.cpp RegisterContextLinux_x86_64.h
Stephen Wilson
wilsons at start.ca
Thu Jan 6 15:19:12 PST 2011
Hi Greg,
Greg Clayton <gclayton at apple.com> writes:
> First try at patching linux for the recent RegisterContext patch. Can someone
> try and build this and let me know how it goes?
I think we need the following as well. Note that I changed a
CalculateProcess() call to GetProcess() as I think that is the standard
access API (as opposed to using the inherited m_process member
directly)?
diff --git a/source/Plugins/Process/Linux/LinuxThread.cpp b/source/Plugins/Process/Linux/LinuxThread.cpp
index 725cc5a..e189064 100644
--- a/source/Plugins/Process/Linux/LinuxThread.cpp
+++ b/source/Plugins/Process/Linux/LinuxThread.cpp
@@ -33,8 +33,8 @@ LinuxThread::LinuxThread(Process &process, lldb::tid_t tid)
ProcessMonitor &
LinuxThread::GetMonitor()
{
- ProcessLinux *process = static_cast<ProcessLinux*>(CalculateProcess());
- return process->GetMonitor();
+ ProcessLinux &process = static_cast<ProcessLinux&>(GetProcess());
+ return process.GetMonitor();
}
void
@@ -51,6 +51,8 @@ LinuxThread::GetInfo()
lldb::RegisterContextSP
LinuxThread::GetRegisterContext()
{
+ ProcessLinux &process = static_cast<ProcessLinux&>(GetProcess());
+
if (!m_reg_context_sp)
{
ArchSpec arch = process.GetTarget().GetArchitecture();
@@ -66,7 +68,7 @@ LinuxThread::GetRegisterContext()
break;
}
}
- return m_reg_context_sp
+ return m_reg_context_sp;
}
bool
diff --git a/source/Plugins/Process/Linux/LinuxThread.h b/source/Plugins/Process/Linux/LinuxThread.h
index a87e5ca..4dcdbb3 100644
--- a/source/Plugins/Process/Linux/LinuxThread.h
+++ b/source/Plugins/Process/Linux/LinuxThread.h
@@ -48,7 +48,7 @@ public:
RestoreSaveFrameZero(const RegisterCheckpoint &checkpoint);
virtual lldb::RegisterContextSP
- CreateRegisterContextForFrame (StackFrame *frame);
+ CreateRegisterContextForFrame (lldb_private::StackFrame *frame);
//--------------------------------------------------------------------------
// These methods form a specialized interface to linux threads.
@@ -66,7 +66,7 @@ private:
{
if (!m_reg_context_sp)
GetRegisterContext();
- return (RegisterContextLinux *)m_reg_context_sp.get()
+ return (RegisterContextLinux *)m_reg_context_sp.get();
}
std::auto_ptr<lldb_private::StackFrame> m_frame_ap;
More information about the lldb-commits
mailing list