[all-commits] [llvm/llvm-project] 2af0a4: [lldb] Consider all breakpoints in breakpoint dete...
Pavel Kosov via All-commits
all-commits at lists.llvm.org
Wed Jan 25 00:06:32 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2af0a478eaee5e6236e7e9fd9b1e3207228ce2ff
https://github.com/llvm/llvm-project/commit/2af0a478eaee5e6236e7e9fd9b1e3207228ce2ff
Author: Pavel Kosov <kpdev42 at gmail.com>
Date: 2023-01-25 (Wed, 25 Jan 2023)
Changed paths:
M lldb/source/Target/StopInfo.cpp
A lldb/test/API/functionalities/breakpoint/thread_plan_user_breakpoint/Makefile
A lldb/test/API/functionalities/breakpoint/thread_plan_user_breakpoint/TestThreadPlanUserBreakpoint.py
A lldb/test/API/functionalities/breakpoint/thread_plan_user_breakpoint/main.cpp
Log Message:
-----------
[lldb] Consider all breakpoints in breakpoint detection
Currently in some cases lldb reports stop reason as "step out" or "step over" (from thread plan completion) instead of "breakpoint", if the user breakpoint happens to be set on the same address.
The part of https://github.com/llvm/llvm-project/commit/f08f5c99262ff9eaa08956334accbb2614b0f7a2 seems to overwrite internal breakpoint detection logic, so that only the last breakpoint for the current stop address is considered.
Together with step-out plans not clearing its breakpoint until they are destrouyed, this creates a situation when there is a user breakpoint set for address, but internal breakpoint makes lldb report a plan completion stop reason instead of breakpoint.
This patch reverts that internal breakpoint detection logic to consider all breakpoints
Reviewed By: jingham
Differential Revision: https://reviews.llvm.org/D140368
More information about the All-commits
mailing list