|
LLDB mainline
|
Public Member Functions | |
| StopInfoBreakpoint (Thread &thread, break_id_t break_id) | |
| StopInfoBreakpoint (Thread &thread, break_id_t break_id, bool should_stop) | |
| ~StopInfoBreakpoint () override=default | |
| void | StoreBPInfo () |
| bool | IsValidForOperatingSystemThread (Thread &thread) override |
| StopReason | GetStopReason () const override |
| bool | ShouldStopSynchronous (Event *event_ptr) override |
| bool | DoShouldNotify (Event *event_ptr) override |
| const char * | GetDescription () override |
| uint32_t | GetStopReasonDataCount () const override |
| uint64_t | GetStopReasonDataAtIndex (uint32_t idx) override |
| std::optional< uint32_t > | GetSuggestedStackFrameIndex (bool inlined_stack) override |
| This gives the StopInfo a chance to suggest a stack frame to select. | |
| bool | ShouldShow () const override |
| Returns true if this is a stop reason that should be shown to a user when viewing the thread with this stop info. | |
| bool | ShouldSelect () const override |
| Returns true if this is a stop reason that should cause a thread to be selected when stopping. | |
| 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 |
| 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 | 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 () |
Protected Member Functions | |
| bool | ShouldStop (Event *event_ptr) override |
| void | PerformAction (Event *event_ptr) override |
| Protected Member Functions inherited from lldb_private::StopInfo | |
| bool | HasTargetRunSinceMe () |
| void | MakeStopInfoValid () |
Private Member Functions | |
| BreakpointSiteSP | GetBreakpointSiteSP () const |
Private Attributes | |
| bool | m_should_stop |
| bool | m_should_stop_is_valid |
| bool | m_should_perform_action |
| lldb::addr_t | m_address |
| lldb::break_id_t | m_break_id |
| bool | m_was_all_internal |
| bool | m_was_one_shot |
| BreakpointLocationCollection | m_async_stopped_locs |
| The StopInfoBreakpoint lives after the stop, and could get queried at any time so we need to make sure that it keeps the breakpoints for each of the locations it records alive while it is around. | |
Definition at line 88 of file StopInfo.cpp.
|
inline |
Definition at line 93 of file StopInfo.cpp.
References LLDB_INVALID_ADDRESS, LLDB_INVALID_BREAK_ID, m_address, m_async_stopped_locs, m_break_id, m_should_perform_action, m_should_stop, m_should_stop_is_valid, m_was_all_internal, m_was_one_shot, lldb_private::StopInfo::StopInfo(), StoreBPInfo(), and lldb_private::StopInfo::Thread.
|
inline |
Definition at line 102 of file StopInfo.cpp.
References LLDB_INVALID_ADDRESS, LLDB_INVALID_BREAK_ID, m_address, m_async_stopped_locs, m_break_id, m_should_perform_action, m_should_stop, m_should_stop_is_valid, m_was_all_internal, m_was_one_shot, lldb_private::StopInfo::StopInfo(), StoreBPInfo(), and lldb_private::StopInfo::Thread.
|
overridedefault |
Reimplemented from lldb_private::StopInfo.
Definition at line 184 of file StopInfo.cpp.
References m_was_all_internal.
|
inlineprivate |
Definition at line 680 of file StopInfo.cpp.
References lldb_private::StopInfo::GetThread(), LLDB_INVALID_BREAK_ID, and lldb_private::StopInfo::m_value.
Referenced by GetDescription(), GetStopReasonDataAtIndex(), GetStopReasonDataCount(), GetSuggestedStackFrameIndex(), IsValidForOperatingSystemThread(), PerformAction(), ShouldStopSynchronous(), and StoreBPInfo().
|
inlineoverridevirtual |
Reimplemented from lldb_private::StopInfo.
Definition at line 188 of file StopInfo.cpp.
References lldb::eDescriptionLevelBrief, GetBreakpointSiteSP(), lldb_private::StreamString::GetString(), LLDB_INVALID_ADDRESS, LLDB_INVALID_BREAK_ID, m_address, m_async_stopped_locs, m_break_id, lldb_private::StopInfo::m_description, lldb_private::StopInfo::m_thread_wp, lldb_private::StopInfo::m_value, m_was_one_shot, and lldb_private::Stream::Printf().
|
inlineoverridevirtual |
Implements lldb_private::StopInfo.
Definition at line 153 of file StopInfo.cpp.
References lldb::eStopReasonBreakpoint.
|
inlineoverridevirtual |
Reimplemented from lldb_private::StopInfo.
Definition at line 266 of file StopInfo.cpp.
References GetBreakpointSiteSP(), LLDB_INVALID_BREAK_ID, and m_async_stopped_locs.
|
inlineoverridevirtual |
Reimplemented from lldb_private::StopInfo.
Definition at line 253 of file StopInfo.cpp.
References GetBreakpointSiteSP(), and m_async_stopped_locs.
|
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 292 of file StopInfo.cpp.
References GetBreakpointSiteSP(), and lldb_private::StopInfo::m_thread_wp.
|
inlineoverridevirtual |
Reimplemented from lldb_private::StopInfo.
Definition at line 143 of file StopInfo.cpp.
References GetBreakpointSiteSP(), and lldb_private::StopInfo::Thread.
|
inlineoverrideprotectedvirtual |
Reimplemented from lldb_private::StopInfo.
Definition at line 319 of file StopInfo.cpp.
References lldb_private::BreakpointLocationCollection::Add(), lldb_private::Status::AsCString(), lldb_private::Breakpoints, lldb::eDescriptionLevelBrief, lldb_private::eVoteYes, lldb_private::Debugger::GetAsyncExecution(), GetBreakpointSiteSP(), lldb_private::BreakpointLocationCollection::GetByIndex(), lldb_private::StreamString::GetData(), lldb_private::Target::GetDebugger(), lldb_private::UserID::GetID(), lldb_private::ProcessProperties::GetIgnoreBreakpointsInExpressions(), lldb_private::GetLog(), lldb_private::Process::GetModIDRef(), lldb_private::ExecutionContext::GetProcessPtr(), lldb_private::BreakpointLocationCollection::GetSize(), lldb_private::StreamString::GetString(), lldb_private::Process::GetTarget(), lldb_private::ExecutionContext::GetTargetRef(), lldb_private::StopInfo::GetThread(), lldb_private::StopInfo::HasTargetRunSinceMe(), lldb_private::ProcessModID::IsRunningExpression(), LLDB_LOGF, m_async_stopped_locs, m_should_perform_action, m_should_stop, m_should_stop_is_valid, lldb_private::StopInfo::m_thread_wp, lldb_private::StopInfo::m_value, m_was_all_internal, lldb_private::Process, lldb_private::Debugger::ReportError(), lldb_private::Debugger::ReportWarning(), lldb_private::Debugger::SetAsyncExecution(), lldb_private::Step, and lldb_private::Status::Success().
|
inlineoverridevirtual |
Returns true if this is a stop reason that should cause a thread to be selected when stopping.
Reimplemented from lldb_private::StopInfo.
Definition at line 308 of file StopInfo.cpp.
References m_was_all_internal.
|
inlineoverridevirtual |
Returns true if this is a stop reason that should be shown to a user when viewing the thread with this stop info.
Reimplemented from lldb_private::StopInfo.
Definition at line 306 of file StopInfo.cpp.
References m_was_all_internal.
|
inlineoverrideprotectedvirtual |
Reimplemented from lldb_private::StopInfo.
Definition at line 311 of file StopInfo.cpp.
References m_should_stop, and m_should_stop_is_valid.
|
inlineoverridevirtual |
Reimplemented from lldb_private::StopInfo.
Definition at line 155 of file StopInfo.cpp.
References GetBreakpointSiteSP(), lldb_private::GetLog(), LLDB_LOGF, m_async_stopped_locs, m_should_stop, m_should_stop_is_valid, lldb_private::StopInfo::m_thread_wp, lldb_private::StopInfo::m_value, and lldb_private::Process.
|
inline |
Definition at line 113 of file StopInfo.cpp.
References GetBreakpointSiteSP(), lldb_private::Stoppoint::GetID(), lldb_private::Breakpoint::IsInternal(), lldb_private::Breakpoint::IsOneShot(), m_address, m_break_id, lldb_private::StopInfo::m_thread_wp, m_was_all_internal, and m_was_one_shot.
Referenced by StopInfoBreakpoint(), and StopInfoBreakpoint().
|
private |
Definition at line 700 of file StopInfo.cpp.
Referenced by GetDescription(), StopInfoBreakpoint(), StopInfoBreakpoint(), and StoreBPInfo().
|
private |
The StopInfoBreakpoint lives after the stop, and could get queried at any time so we need to make sure that it keeps the breakpoints for each of the locations it records alive while it is around.
That's what The BreakpointPreservingLocationCollection does.
Definition at line 711 of file StopInfo.cpp.
Referenced by GetDescription(), GetStopReasonDataAtIndex(), GetStopReasonDataCount(), PerformAction(), ShouldStopSynchronous(), StopInfoBreakpoint(), and StopInfoBreakpoint().
|
private |
Definition at line 704 of file StopInfo.cpp.
Referenced by GetDescription(), StopInfoBreakpoint(), StopInfoBreakpoint(), and StoreBPInfo().
|
private |
Definition at line 696 of file StopInfo.cpp.
Referenced by PerformAction(), StopInfoBreakpoint(), and StopInfoBreakpoint().
|
private |
Definition at line 694 of file StopInfo.cpp.
Referenced by PerformAction(), ShouldStop(), ShouldStopSynchronous(), StopInfoBreakpoint(), and StopInfoBreakpoint().
|
private |
Definition at line 695 of file StopInfo.cpp.
Referenced by PerformAction(), ShouldStop(), ShouldStopSynchronous(), StopInfoBreakpoint(), and StopInfoBreakpoint().
|
private |
Definition at line 705 of file StopInfo.cpp.
Referenced by DoShouldNotify(), PerformAction(), ShouldSelect(), ShouldShow(), StopInfoBreakpoint(), StopInfoBreakpoint(), and StoreBPInfo().
|
private |
Definition at line 706 of file StopInfo.cpp.
Referenced by GetDescription(), StopInfoBreakpoint(), StopInfoBreakpoint(), and StoreBPInfo().