LLDB mainline
lldb_private::InstrumentationRuntimeStopInfo Class Reference

#include <InstrumentationRuntimeStopInfo.h>

Inheritance diagram for lldb_private::InstrumentationRuntimeStopInfo:
[legend]

Public Member Functions

 ~InstrumentationRuntimeStopInfo () override=default
lldb::StopReason GetStopReason () const override
std::optional< uint32_t > GetSuggestedStackFrameIndex (bool inlined_stack) override
 This gives the StopInfo a chance to suggest a stack frame to select.
const char * GetDescription () override
bool DoShouldNotify (Event *event_ptr) override
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 bool ShouldStopSynchronous (Event *event_ptr)
void OverrideShouldNotify (bool override_value)
virtual bool ShouldNotify (Event *event_ptr)
virtual void WillResume (lldb::StateType resume_state)
virtual void SetDescription (const char *desc_cstr)
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.
virtual uint32_t GetStopReasonDataCount () const
virtual uint64_t GetStopReasonDataAtIndex (uint32_t idx)
void OverrideShouldStop (bool override_value)
bool GetOverrideShouldStop ()
bool GetOverriddenShouldStopValue ()
StructuredData::ObjectSP GetExtendedInfo ()
virtual bool ShouldShow () const
 Returns true if this is a stop reason that should be shown to a user when viewing the thread with this stop info.
virtual bool ShouldSelect () const
 Returns true if this is a stop reason that should cause a thread to be selected when stopping.

Static Public Member Functions

static lldb::StopInfoSP CreateStopReasonWithInstrumentationData (Thread &thread, std::string description, StructuredData::ObjectSP additional_data)
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 CreateStopReasonHistoryBoundary (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)

Private Member Functions

 InstrumentationRuntimeStopInfo (Thread &thread, std::string description, StructuredData::ObjectSP additional_data)

Additional Inherited Members

Protected Member Functions inherited from lldb_private::StopInfo
virtual void PerformAction (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 19 of file InstrumentationRuntimeStopInfo.h.

Constructor & Destructor Documentation

◆ ~InstrumentationRuntimeStopInfo()

lldb_private::InstrumentationRuntimeStopInfo::~InstrumentationRuntimeStopInfo ( )
overridedefault

◆ InstrumentationRuntimeStopInfo()

InstrumentationRuntimeStopInfo::InstrumentationRuntimeStopInfo ( Thread & thread,
std::string description,
StructuredData::ObjectSP additional_data )
private

Member Function Documentation

◆ CreateStopReasonWithInstrumentationData()

◆ DoShouldNotify()

bool lldb_private::InstrumentationRuntimeStopInfo::DoShouldNotify ( Event * event_ptr)
inlineoverridevirtual

Reimplemented from lldb_private::StopInfo.

Definition at line 32 of file InstrumentationRuntimeStopInfo.h.

◆ GetDescription()

const char * InstrumentationRuntimeStopInfo::GetDescription ( )
overridevirtual

Reimplemented from lldb_private::StopInfo.

Definition at line 33 of file InstrumentationRuntimeStopInfo.cpp.

References lldb_private::StopInfo::m_description.

◆ GetStopReason()

lldb::StopReason lldb_private::InstrumentationRuntimeStopInfo::GetStopReason ( ) const
inlineoverridevirtual

◆ GetSuggestedStackFrameIndex()

std::optional< uint32_t > InstrumentationRuntimeStopInfo::GetSuggestedStackFrameIndex ( bool inlined_stack)
overridevirtual

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 46 of file InstrumentationRuntimeStopInfo.cpp.

References lldb_private::StopInfo::GetThread(), and IsStoppedInDarwinSanitizer().


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