[Lldb-commits] [lldb] [lldb] Change lldb's breakpoint handling behavior (PR #96260)

Jason Molenda via lldb-commits lldb-commits at lists.llvm.org
Wed Jul 17 18:07:58 PDT 2024


================
@@ -229,6 +229,17 @@ bool ScriptedThread::CalculateStopInfo() {
         LLVM_PRETTY_FUNCTION, "Failed to get scripted thread stop info.", error,
         LLDBLog::Thread);
 
+  // If we're at a BreakpointSite, mark that we stopped there and
----------------
jasonmolenda wrote:

This comment was meant to be on ProcessGDBRemote.cpp where I removed a section of code for a thread that had no stop signal/reason, but is sitting at a BreakpointSite.  The old comment on this:
```
        // If a thread is stopped at a breakpoint site, set that as the stop
        // reason even if it hasn't executed the breakpoint instruction yet.
        // We will silently step over the breakpoint when we resume execution
        // and miss the fact that this thread hit the breakpoint.
```

That's the old stepping behavior.  The new stepping behavior is if a thread stops at a BreakpointSite but has no signal/breakpoint hit reason, we call `Thread::SetThreadStoppedAtUnexecutedBP(pc)`.  This is done at the top of `ProcessGDBRemote::SetThreadStopInfo` already if the thread stops at a BreakpointSite but hasn't hit it, so there's no need for this block to still be around.

https://github.com/llvm/llvm-project/pull/96260


More information about the lldb-commits mailing list