[Lldb-commits] [lldb] f5eb7a9 - [lldb] Disable delayed breakpoints on Windows (#195241)

via lldb-commits lldb-commits at lists.llvm.org
Fri May 1 02:33:07 PDT 2026


Author: Felipe de Azevedo Piovezan
Date: 2026-05-01T09:33:02Z
New Revision: f5eb7a9ef4c8832a99f696b22a00a55ba6718153

URL: https://github.com/llvm/llvm-project/commit/f5eb7a9ef4c8832a99f696b22a00a55ba6718153
DIFF: https://github.com/llvm/llvm-project/commit/f5eb7a9ef4c8832a99f696b22a00a55ba6718153.diff

LOG: [lldb] Disable delayed breakpoints on Windows (#195241)

Tests started failing on a mysterious way there, potentially related to:
https://github.com/llvm/llvm-project/issues/191222

Added: 
    

Modified: 
    lldb/include/lldb/Target/Process.h
    lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    lldb/source/Target/Process.cpp

Removed: 
    


################################################################################
diff  --git a/lldb/include/lldb/Target/Process.h b/lldb/include/lldb/Target/Process.h
index 045fa9ee2a05a..67a9a883cd36c 100644
--- a/lldb/include/lldb/Target/Process.h
+++ b/lldb/include/lldb/Target/Process.h
@@ -2310,6 +2310,13 @@ class Process : public std::enable_shared_from_this<Process>,
 
   bool IsBreakpointSitePhysicallyEnabled(const BreakpointSite &site);
 
+  /// Reports whether this process should delay physically enabling/disabling
+  /// breakpoints until the process is about to resume. The default honors the
+  /// user-facing `target.process.use-delayed-breakpoints` setting.
+  virtual bool ShouldUseDelayedBreakpoints() const {
+    return GetUseDelayedBreakpoints();
+  }
+
   // BreakpointLocations use RemoveConstituentFromBreakpointSite to remove
   // themselves from the constituent's list of this breakpoint sites.
   void RemoveConstituentFromBreakpointSite(lldb::user_id_t site_id,

diff  --git a/lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h b/lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
index c1478dd30c4d2..228619d0e3d5e 100644
--- a/lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
+++ b/lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
@@ -44,6 +44,8 @@ class ProcessWindows : public Process, public ProcessDebugger {
   Status EnableBreakpointSite(BreakpointSite *bp_site) override;
   Status DisableBreakpointSite(BreakpointSite *bp_site) override;
 
+  bool ShouldUseDelayedBreakpoints() const override { return false; }
+
   Status DoDetach(bool keep_stopped) override;
   Status DoLaunch(Module *exe_module, ProcessLaunchInfo &launch_info) override;
   Status DoAttachToProcessWithID(

diff  --git a/lldb/source/Target/Process.cpp b/lldb/source/Target/Process.cpp
index cb9a13e5bc80c..114bbd7355f0c 100644
--- a/lldb/source/Target/Process.cpp
+++ b/lldb/source/Target/Process.cpp
@@ -1601,7 +1601,7 @@ llvm::Error Process::ExecuteBreakpointSiteAction(BreakpointSite &site,
   if (IsBreakpointSiteEnabled(*site_sp) == (action == BreakpointAction::Enable))
     return llvm::Error::success();
 
-  if (GetUseDelayedBreakpoints()) {
+  if (ShouldUseDelayedBreakpoints()) {
     m_delayed_breakpoints.Enqueue(site_sp, action);
     return llvm::Error::success();
   }


        


More information about the lldb-commits mailing list