LLDB mainline
Public Member Functions | List of all members
lldb_private::StopInfoTrace Class Reference
Inheritance diagram for lldb_private::StopInfoTrace:
Inheritance graph
[legend]

Public Member Functions

 StopInfoTrace (Thread &thread)
 
 ~StopInfoTrace () override=default
 
StopReason GetStopReason () const override
 
const char * GetDescription () override
 
std::optional< uint32_t > GetSuggestedStackFrameIndex (bool inlined_stack) override
 This gives the StopInfo a chance to suggest a stack frame to select.
 
- Public Member Functions inherited from lldb_private::StopInfo
 StopInfo (Thread &thread, uint64_t value)
 
virtual ~StopInfo ()=default
 
bool IsValid () const
 
void SetThread (const lldb::ThreadSP &thread_sp)
 
lldb::ThreadSP GetThread () const
 
uint64_t GetValue () const
 
virtual lldb::StopReason GetStopReason () const =0
 
virtual bool ShouldStopSynchronous (Event *event_ptr)
 
void OverrideShouldNotify (bool override_value)
 
virtual bool ShouldNotify (Event *event_ptr)
 
virtual void WillResume (lldb::StateType resume_state)
 
virtual const char * GetDescription ()
 
virtual void SetDescription (const char *desc_cstr)
 
virtual std::optional< uint32_t > GetSuggestedStackFrameIndex (bool inlined_stack)
 This gives the StopInfo a chance to suggest a stack frame to select.
 
virtual bool IsValidForOperatingSystemThread (Thread &thread)
 
virtual bool WasContinueInterrupted (Thread &thread)
 A Continue operation can result in a false stop event before any execution has happened.
 
void OverrideShouldStop (bool override_value)
 
bool GetOverrideShouldStop ()
 
bool GetOverriddenShouldStopValue ()
 
StructuredData::ObjectSP GetExtendedInfo ()
 

Additional Inherited Members

- Static Public Member Functions inherited from lldb_private::StopInfo
static lldb::StopInfoSP CreateStopReasonWithBreakpointSiteID (Thread &thread, lldb::break_id_t break_id)
 
static lldb::StopInfoSP CreateStopReasonWithBreakpointSiteID (Thread &thread, lldb::break_id_t break_id, bool should_stop)
 
static lldb::StopInfoSP CreateStopReasonWithWatchpointID (Thread &thread, lldb::break_id_t watch_id, bool silently_continue=false)
 
static lldb::StopInfoSP CreateStopReasonWithSignal (Thread &thread, int signo, const char *description=nullptr, std::optional< int > code=std::nullopt)
 
static lldb::StopInfoSP CreateStopReasonWithInterrupt (Thread &thread, int signo, const char *description)
 
static lldb::StopInfoSP CreateStopReasonToTrace (Thread &thread)
 
static lldb::StopInfoSP CreateStopReasonWithPlan (lldb::ThreadPlanSP &plan, lldb::ValueObjectSP return_valobj_sp, lldb::ExpressionVariableSP expression_variable_sp)
 
static lldb::StopInfoSP CreateStopReasonWithException (Thread &thread, const char *description)
 
static lldb::StopInfoSP CreateStopReasonWithExec (Thread &thread)
 
static lldb::StopInfoSP CreateStopReasonProcessorTrace (Thread &thread, const char *description)
 
static lldb::StopInfoSP CreateStopReasonFork (Thread &thread, lldb::pid_t child_pid, lldb::tid_t child_tid)
 
static lldb::StopInfoSP CreateStopReasonVFork (Thread &thread, lldb::pid_t child_pid, lldb::tid_t child_tid)
 
static lldb::StopInfoSP CreateStopReasonVForkDone (Thread &thread)
 
static lldb::ValueObjectSP GetReturnValueObject (lldb::StopInfoSP &stop_info_sp)
 
static lldb::ExpressionVariableSP GetExpressionVariable (lldb::StopInfoSP &stop_info_sp)
 
static lldb::ValueObjectSP GetCrashingDereference (lldb::StopInfoSP &stop_info_sp, lldb::addr_t *crashing_address=nullptr)
 
- Protected Member Functions inherited from lldb_private::StopInfo
virtual void PerformAction (Event *event_ptr)
 
virtual bool DoShouldNotify (Event *event_ptr)
 
virtual bool ShouldStop (Event *event_ptr)
 
bool HasTargetRunSinceMe ()
 
void MakeStopInfoValid ()
 
- Protected Attributes inherited from lldb_private::StopInfo
lldb::ThreadWP m_thread_wp
 
uint32_t m_stop_id
 
uint32_t m_resume_id
 
uint64_t m_value
 
std::string m_description
 
LazyBool m_override_should_notify
 
LazyBool m_override_should_stop
 
StructuredData::ObjectSP m_extended_info
 

Detailed Description

Definition at line 1172 of file StopInfo.cpp.

Constructor & Destructor Documentation

◆ StopInfoTrace()

lldb_private::StopInfoTrace::StopInfoTrace ( Thread thread)
inline

Definition at line 1174 of file StopInfo.cpp.

◆ ~StopInfoTrace()

lldb_private::StopInfoTrace::~StopInfoTrace ( )
overridedefault

Member Function Documentation

◆ GetDescription()

const char * lldb_private::StopInfoTrace::GetDescription ( )
inlineoverridevirtual

Reimplemented from lldb_private::StopInfo.

Definition at line 1180 of file StopInfo.cpp.

References lldb_private::StopInfo::m_description.

◆ GetStopReason()

StopReason lldb_private::StopInfoTrace::GetStopReason ( ) const
inlineoverridevirtual

Implements lldb_private::StopInfo.

Definition at line 1178 of file StopInfo.cpp.

References lldb::eStopReasonTrace.

◆ GetSuggestedStackFrameIndex()

std::optional< uint32_t > lldb_private::StopInfoTrace::GetSuggestedStackFrameIndex ( bool  inlined_stack)
inlineoverridevirtual

This gives the StopInfo a chance to suggest a stack frame to select.

Passing true for inlined_stack will request changes to the inlined call stack. Passing false will request changes to the real stack frame. The inlined stack gets adjusted before we call into the thread plans so they can reason based on the correct values. The real stack adjustment is handled after the frame recognizers get a chance to adjust the frame.

Reimplemented from lldb_private::StopInfo.

Definition at line 1188 of file StopInfo.cpp.

References lldb_private::AddressRange::GetBaseAddress(), lldb_private::Block::GetInlinedParent(), lldb_private::Block::GetRangeContainingAddress(), and lldb_private::StopInfo::GetThread().


The documentation for this class was generated from the following file: