================
@@ -0,0 +1,101 @@
+"""
+Watch a large unaligned memory region that
+lldb will need multiple hardware watchpoints
+to cover.
+"""
+
+
+import lldb
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+
+class UnalignedLargeWatchpointTestCase(TestBase):
+ def continue_and_report_stop_reason(self, process, iter_str):
+ if self.TraceOn():
+ self.runCmd("script print('continue')")
+ process.Continue()
+ self.assertIn(
+ process.GetState(), [lldb.eStateStopped, lldb.eStateExited],
iter_str
+ )
+ thread = process.GetSelectedThread()
+ return thread.GetStopReason()
+
+ NO_DEBUG_INFO_TESTCASE = True
+
+ # Test on 64-bit targets where we probably have
+ # four watchpoint registers that can watch doublewords (8-byte).
+ @skipIf(archs=no_match(["arm64", "arm64e", "aarch64", "x86_64"]))
+ def test_unaligned_large_watchpoint(self):
+ """Test watching an unaligned region of memory that requires multiple
watchpoints."""
+ self.build()
+ self.main_source_file = lldb.SBFileSpec("main.c")
+ (target, process, thread, bkpt) = lldbutil.run_to_source_breakpoint(
----------------
DavidSpickett wrote:
You don't need ():
target, process, thread, bkpt = ...
Works fine.
https://github.com/llvm/llvm-project/pull/79962
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits