summaryrefslogtreecommitdiffstats
path: root/lldb/include
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/include')
-rw-r--r--lldb/include/lldb/Target/ExecutionContextScope.h8
-rw-r--r--lldb/include/lldb/Target/Process.h25
-rw-r--r--lldb/include/lldb/Target/RegisterContext.h14
-rw-r--r--lldb/include/lldb/Target/StackFrame.h41
-rw-r--r--lldb/include/lldb/Target/Target.h14
-rw-r--r--lldb/include/lldb/Target/Thread.h14
6 files changed, 56 insertions, 60 deletions
diff --git a/lldb/include/lldb/Target/ExecutionContextScope.h b/lldb/include/lldb/Target/ExecutionContextScope.h
index 6e5815ff84c..7ba40971af2 100644
--- a/lldb/include/lldb/Target/ExecutionContextScope.h
+++ b/lldb/include/lldb/Target/ExecutionContextScope.h
@@ -42,16 +42,16 @@ public:
virtual
~ExecutionContextScope () {}
- virtual Target *
+ virtual lldb::TargetSP
CalculateTarget () = 0;
- virtual Process *
+ virtual lldb::ProcessSP
CalculateProcess () = 0;
- virtual Thread *
+ virtual lldb::ThreadSP
CalculateThread () = 0;
- virtual StackFrame *
+ virtual lldb::StackFrameSP
CalculateStackFrame () = 0;
//------------------------------------------------------------------
diff --git a/lldb/include/lldb/Target/Process.h b/lldb/include/lldb/Target/Process.h
index d3fa8457f0b..ce0e145f64a 100644
--- a/lldb/include/lldb/Target/Process.h
+++ b/lldb/include/lldb/Target/Process.h
@@ -3064,28 +3064,25 @@ public:
//------------------------------------------------------------------
// lldb::ExecutionContextScope pure virtual functions
//------------------------------------------------------------------
- virtual Target *
- CalculateTarget ()
- {
- return &m_target;
- }
-
- virtual Process *
+ virtual lldb::TargetSP
+ CalculateTarget ();
+
+ virtual lldb::ProcessSP
CalculateProcess ()
{
- return this;
+ return shared_from_this();
}
-
- virtual Thread *
+
+ virtual lldb::ThreadSP
CalculateThread ()
{
- return NULL;
+ return lldb::ThreadSP();
}
-
- virtual StackFrame *
+
+ virtual lldb::StackFrameSP
CalculateStackFrame ()
{
- return NULL;
+ return lldb::StackFrameSP();
}
virtual void
diff --git a/lldb/include/lldb/Target/RegisterContext.h b/lldb/include/lldb/Target/RegisterContext.h
index af6a20e54ea..f08abe6ecc4 100644
--- a/lldb/include/lldb/Target/RegisterContext.h
+++ b/lldb/include/lldb/Target/RegisterContext.h
@@ -157,16 +157,16 @@ public:
//------------------------------------------------------------------
// lldb::ExecutionContextScope pure virtual functions
//------------------------------------------------------------------
- virtual Target *
+ virtual lldb::TargetSP
CalculateTarget ();
-
- virtual Process *
+
+ virtual lldb::ProcessSP
CalculateProcess ();
-
- virtual Thread *
+
+ virtual lldb::ThreadSP
CalculateThread ();
-
- virtual StackFrame *
+
+ virtual lldb::StackFrameSP
CalculateStackFrame ();
virtual void
diff --git a/lldb/include/lldb/Target/StackFrame.h b/lldb/include/lldb/Target/StackFrame.h
index 0995a04f8cf..9487ffedcb9 100644
--- a/lldb/include/lldb/Target/StackFrame.h
+++ b/lldb/include/lldb/Target/StackFrame.h
@@ -41,24 +41,24 @@ public:
//------------------------------------------------------------------
// Constructors and Destructors
//------------------------------------------------------------------
- StackFrame (lldb::user_id_t frame_idx,
+ StackFrame (const lldb::ThreadSP &thread_sp,
+ lldb::user_id_t frame_idx,
lldb::user_id_t concrete_frame_idx,
- Thread &thread,
lldb::addr_t cfa,
lldb::addr_t pc,
const SymbolContext *sc_ptr);
- StackFrame (lldb::user_id_t frame_idx,
+ StackFrame (const lldb::ThreadSP &thread_sp,
+ lldb::user_id_t frame_idx,
lldb::user_id_t concrete_frame_idx,
- Thread &thread,
const lldb::RegisterContextSP &reg_context_sp,
lldb::addr_t cfa,
lldb::addr_t pc,
const SymbolContext *sc_ptr);
- StackFrame (lldb::user_id_t frame_idx,
+ StackFrame (const lldb::ThreadSP &thread_sp,
+ lldb::user_id_t frame_idx,
lldb::user_id_t concrete_frame_idx,
- Thread &thread,
const lldb::RegisterContextSP &reg_context_sp,
lldb::addr_t cfa,
const Address& pc,
@@ -66,13 +66,11 @@ public:
virtual ~StackFrame ();
- Thread &
- GetThread()
- { return m_thread; }
-
- const Thread &
- GetThread() const
- { return m_thread; }
+ lldb::ThreadSP
+ GetThread () const
+ {
+ return m_thread_wp.lock();
+ }
StackID&
GetStackID();
@@ -151,16 +149,16 @@ public:
//------------------------------------------------------------------
// lldb::ExecutionContextScope pure virtual functions
//------------------------------------------------------------------
- virtual Target *
+ virtual lldb::TargetSP
CalculateTarget ();
-
- virtual Process *
+
+ virtual lldb::ProcessSP
CalculateProcess ();
-
- virtual Thread *
+
+ virtual lldb::ThreadSP
CalculateThread ();
-
- virtual StackFrame *
+
+ virtual lldb::StackFrameSP
CalculateStackFrame ();
virtual void
@@ -187,11 +185,12 @@ protected:
bool
HasCachedData () const;
+
private:
//------------------------------------------------------------------
// For StackFrame only
//------------------------------------------------------------------
- Thread &m_thread;
+ lldb::ThreadWP m_thread_wp;
uint32_t m_frame_index;
uint32_t m_concrete_frame_index;
lldb::RegisterContextSP m_reg_context_sp;
diff --git a/lldb/include/lldb/Target/Target.h b/lldb/include/lldb/Target/Target.h
index 712eb0e1b69..3979565f9ec 100644
--- a/lldb/include/lldb/Target/Target.h
+++ b/lldb/include/lldb/Target/Target.h
@@ -842,16 +842,16 @@ public:
//------------------------------------------------------------------
// lldb::ExecutionContextScope pure virtual functions
//------------------------------------------------------------------
- virtual Target *
+ virtual lldb::TargetSP
CalculateTarget ();
-
- virtual Process *
+
+ virtual lldb::ProcessSP
CalculateProcess ();
-
- virtual Thread *
+
+ virtual lldb::ThreadSP
CalculateThread ();
-
- virtual StackFrame *
+
+ virtual lldb::StackFrameSP
CalculateStackFrame ();
virtual void
diff --git a/lldb/include/lldb/Target/Thread.h b/lldb/include/lldb/Target/Thread.h
index 1ec196bb4c4..87acae4dcbd 100644
--- a/lldb/include/lldb/Target/Thread.h
+++ b/lldb/include/lldb/Target/Thread.h
@@ -730,16 +730,16 @@ public:
//------------------------------------------------------------------
// lldb::ExecutionContextScope pure virtual functions
//------------------------------------------------------------------
- virtual Target *
+ virtual lldb::TargetSP
CalculateTarget ();
-
- virtual Process *
+
+ virtual lldb::ProcessSP
CalculateProcess ();
-
- virtual Thread *
+
+ virtual lldb::ThreadSP
CalculateThread ();
-
- virtual StackFrame *
+
+ virtual lldb::StackFrameSP
CalculateStackFrame ();
virtual void
OpenPOWER on IntegriCloud