[Lldb-commits] [lldb] [lldb][Windows] WoA HW Watchpoint support in LLDB (PR #108072)

Omair Javaid via lldb-commits lldb-commits at lists.llvm.org
Sun Jan 26 12:34:18 PST 2025


================
@@ -143,8 +142,14 @@ NativeRegisterContextWindows::CreateHostNativeRegisterContextWindows(
 
 NativeRegisterContextWindows_arm64::NativeRegisterContextWindows_arm64(
     const ArchSpec &target_arch, NativeThreadProtocol &native_thread)
-    : NativeRegisterContextWindows(native_thread,
-                                   CreateRegisterInfoInterface(target_arch)) {}
+    : NativeRegisterContextRegisterInfo(
+          native_thread, CreateRegisterInfoInterface(target_arch)) {
+  // Currently, there is no API to query the maximum supported hardware
+  // breakpoints and watchpoints on Windows. The values set below are based
+  // on tests conducted on Windows 11 with Snapdragon Elite X hardware.
+  m_max_hwp_supported = 1;
----------------
omjavaid wrote:

Yes. Tests still dont work but following tests pass if we run them individually:

>   lldb-api :: commands/watchpoints/hello_watchpoint/TestMyFirstWatchpoint.py
  lldb-api :: commands/watchpoints/multiple_threads/TestWatchpointMultipleThreads.py
  lldb-api :: commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py  
  lldb-api :: commands/watchpoints/watchpoint_commands/TestWatchpointCommands.py
  lldb-api :: commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandLLDB.py
  lldb-api :: commands/watchpoints/watchpoint_commands/command/TestWatchpointCommandPython.py
lldb-api :: commands/watchpoints/watchpoint_commands/condition/TestWatchpointConditionCmd.py
   lldb-api :: commands/watchpoints/watchpoint_disable/TestWatchpointDisable.py
   lldb-api :: commands/watchpoints/watchpoint_events/TestWatchpointEvents.py
  lldb-api :: commands/watchpoints/watchpoint_on_vectors/TestValueOfVectorVariable.py
  lldb-api :: commands/watchpoints/watchpoint_size/TestWatchpointSizes.py
     lldb-api :: python_api/watchpoint/TestSetWatchpoint.py
  lldb-api :: python_api/watchpoint/TestWatchpointIgnoreCount.py
  lldb-api :: python_api/watchpoint/TestWatchpointIter.py
  lldb-api :: python_api/watchpoint/condition/TestWatchpointConditionAPI.py
  lldb-api :: python_api/watchpoint/watchlocation/TestTargetWatchAddress.py

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


More information about the lldb-commits mailing list