1import unittest2
2
3from lldbsuite.test.decorators import *
4from lldbsuite.test.concurrent_base import ConcurrentEventsBase
5from lldbsuite.test.lldbtest import TestBase
6
7
8@skipIfWindows
9class ConcurrentManyWatchpoints(ConcurrentEventsBase):
10
11    mydir = ConcurrentEventsBase.compute_mydir(__file__)
12
13    # Atomic sequences are not supported yet for MIPS in LLDB.
14    @skipIf(triple='^mips')
15    @skipIf(
16        oslist=["ios", "watchos", "tvos", "bridgeos", "macosx"],
17        archs=['arm64', 'arm64e', 'arm64_32', 'arm'],
18        bugnumber="rdar://81811539")
19    @add_test_categories(["watchpoint"])
20    @skipIfOutOfTreeDebugserver
21    def test(self):
22        """Test 100 watchpoints from 100 threads."""
23        self.build(dictionary=self.getBuildFlags())
24        self.do_thread_actions(num_watchpoint_threads=100)
25