[Lldb-commits] [lldb] r128592 - in /lldb/trunk: include/lldb/Target/StackFrameList.h include/lldb/Target/Thread.h source/Target/StackFrameList.cpp source/Target/Thread.cpp
Jim Ingham
jingham at apple.com
Wed Mar 30 17:15:50 PDT 2011
Author: jingham
Date: Wed Mar 30 19:15:49 2011
New Revision: 128592
URL: http://llvm.org/viewvc/llvm-project?rev=128592&view=rev
Log:
Add GetFrameWithStackID to the StackFrameList and the Thread (which routes to its StackFrameList.)
Modified:
lldb/trunk/include/lldb/Target/StackFrameList.h
lldb/trunk/include/lldb/Target/Thread.h
lldb/trunk/source/Target/StackFrameList.cpp
lldb/trunk/source/Target/Thread.cpp
Modified: lldb/trunk/include/lldb/Target/StackFrameList.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/StackFrameList.h?rev=128592&r1=128591&r2=128592&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Target/StackFrameList.h (original)
+++ lldb/trunk/include/lldb/Target/StackFrameList.h Wed Mar 30 19:15:49 2011
@@ -41,6 +41,9 @@
lldb::StackFrameSP
GetFrameWithConcreteFrameIndex (uint32_t unwind_idx);
+
+ lldb::StackFrameSP
+ GetFrameWithStackID (StackID &stack_id);
// Mark a stack frame as the current frame
uint32_t
Modified: lldb/trunk/include/lldb/Target/Thread.h
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/include/lldb/Target/Thread.h?rev=128592&r1=128591&r2=128592&view=diff
==============================================================================
--- lldb/trunk/include/lldb/Target/Thread.h (original)
+++ lldb/trunk/include/lldb/Target/Thread.h Wed Mar 30 19:15:49 2011
@@ -324,6 +324,9 @@
virtual lldb::StackFrameSP
GetFrameWithConcreteFrameIndex (uint32_t unwind_idx);
+
+ virtual lldb::StackFrameSP
+ GetFrameWithStackID(StackID &stack_id);
uint32_t
GetSelectedFrameIndex ();
Modified: lldb/trunk/source/Target/StackFrameList.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/StackFrameList.cpp?rev=128592&r1=128591&r2=128592&view=diff
==============================================================================
--- lldb/trunk/source/Target/StackFrameList.cpp (original)
+++ lldb/trunk/source/Target/StackFrameList.cpp Wed Mar 30 19:15:49 2011
@@ -356,6 +356,21 @@
return frame_sp;
}
+StackFrameSP
+StackFrameList::GetFrameWithStackID (StackID &stack_id)
+{
+ uint32_t frame_idx = 0;
+ StackFrameSP frame_sp;
+ do
+ {
+ frame_sp = GetFrameAtIndex (frame_idx);
+ if (frame_sp && frame_sp->GetStackID() == stack_id)
+ break;
+ frame_idx++;
+ }
+ while (frame_sp);
+ return frame_sp;
+}
bool
StackFrameList::SetFrameAtIndex (uint32_t idx, StackFrameSP &frame_sp)
Modified: lldb/trunk/source/Target/Thread.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/Thread.cpp?rev=128592&r1=128591&r2=128592&view=diff
==============================================================================
--- lldb/trunk/source/Target/Thread.cpp (original)
+++ lldb/trunk/source/Target/Thread.cpp Wed Mar 30 19:15:49 2011
@@ -950,6 +950,11 @@
return GetStackFrameList().GetFrameWithConcreteFrameIndex (unwind_idx);
}
+lldb::StackFrameSP
+Thread::GetFrameWithStackID(StackID &stack_id)
+{
+ return GetStackFrameList().GetFrameWithStackID (stack_id);
+}
lldb::StackFrameSP
More information about the lldb-commits
mailing list