199451b44SJordan Rupprecht
299451b44SJordan Rupprechtimport unittest2
399451b44SJordan Rupprecht
499451b44SJordan Rupprechtfrom lldbsuite.test.decorators import *
599451b44SJordan Rupprechtfrom lldbsuite.test.concurrent_base import ConcurrentEventsBase
699451b44SJordan Rupprechtfrom lldbsuite.test.lldbtest import TestBase
799451b44SJordan Rupprecht
899451b44SJordan Rupprecht
999451b44SJordan Rupprecht@skipIfWindows
1099451b44SJordan Rupprechtclass ConcurrentNWatchNBreak(ConcurrentEventsBase):
1199451b44SJordan Rupprecht
1299451b44SJordan Rupprecht    # Atomic sequences are not supported yet for MIPS in LLDB.
1399451b44SJordan Rupprecht    @skipIf(triple='^mips')
14f47a84bcSMichał Górny    @expectedFailureAll(archs=["aarch64"], oslist=["freebsd"],
15f47a84bcSMichał Górny                        bugnumber="llvm.org/pr49433")
16*83fab8ceSJim Ingham    @skipIf(
17*83fab8ceSJim Ingham        oslist=["ios", "watchos", "tvos", "bridgeos", "macosx"],
18*83fab8ceSJim Ingham        archs=['arm64', 'arm64e', 'arm64_32', 'arm'],
19*83fab8ceSJim Ingham        bugnumber="rdar://93863107")
2099451b44SJordan Rupprecht    @add_test_categories(["watchpoint"])
2199451b44SJordan Rupprecht    def test(self):
2299451b44SJordan Rupprecht        """Test with 5 watchpoint and breakpoint threads."""
23d7dbe2c4SPavel Labath        self.build()
2499451b44SJordan Rupprecht        self.do_thread_actions(num_watchpoint_threads=5,
2599451b44SJordan Rupprecht                               num_breakpoint_threads=5)
26