[llvm-branch-commits] [lldb] [lldb] Implement delayed breakpoints (PR #192971)
Felipe de Azevedo Piovezan via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Apr 29 05:20:23 PDT 2026
================
@@ -3541,6 +3567,20 @@ void PruneThreadPlans();
/// GetExtendedCrashInformation.
StructuredData::DictionarySP m_crash_info_dict_sp;
+ struct DelayedBreakpointCache {
+ void Enqueue(lldb::BreakpointSiteSP site, BreakpointAction action);
+ void RemoveSite(lldb::BreakpointSiteSP site) {
+ m_site_to_action.erase(site);
+ }
+ void Clear() { m_site_to_action.clear(); }
+
+ BreakpointSiteToActionMap m_site_to_action;
+ };
+
+ DelayedBreakpointCache m_delayed_breakpoints;
----------------
felipepiovezan wrote:
Ok, I've given this a try. There are three methods that need to be protected: `FlushDelayedBreakpoints`, `ExecuteBreakpointSiteAction`, and `IsBreakpointSiteEnabled`.
I looked into re-using the BreakpointSiteList mutex, but it felt too implicit to re-use the lock inside a different data structure, so I opted for a new one.
https://github.com/llvm/llvm-project/pull/192971
More information about the llvm-branch-commits
mailing list