summaryrefslogtreecommitdiffstats
path: root/lldb/lit/ExecControl/StopHook/stop-hook-threads.test
blob: f2f1267d56732ba05d42b029bc554a173d4900eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# RUN: %cxx %p/Inputs/stop-hook-threads.cpp -g -o %t
# RUN: %lldb -b -s %p/Inputs/stop-hook-threads-1.lldbinit -s %s -f %t \
# RUN:     | FileCheck --check-prefix=CHECK --check-prefix=CHECK-NO-FILTER %s
# RUN: %lldb -b -s %p/Inputs/stop-hook-threads-2.lldbinit -s %s -f %t \
# RUN:     | FileCheck --check-prefix=CHECK --check-prefix=CHECK-FILTER %s

thread list
break set -f stop-hook-threads.cpp -p "Set break point at this line"
target stop-hook list

# CHECK: Hook: 1
# CHECK-NEXT:  State: enabled
# CHECK-FILTER-NEXT:  Thread
# CHECK-FILTER-NEXT:  index: 2
# CHECK-NEXT:  Commands: 
# CHECK-NEXT:    frame variable

# CHECK-FILTER: Hook: 2
# CHECK-FILTER-NEXT:  State: enabled
# CHECK-FILTER-NEXT:  Commands: 
# CHECK-FILTER-NEXT:    continue

# Get the threads going
continue

# When we filter per thread, we expect exactly 4 identical "frame var" results
# CHECK-FILTER: (uint32_t) thread_index = [[THREAD_INDEX:[0-9]*]]
# CHECK-FILTER-COUNT-3: (uint32_t) thread_index = [[THREAD_INDEX]]
# CHECK-FILTER-NOT: thread_index

# When we don't filter, we expect to count 12 stopped threads in the thread list output
# CHECK-NO-FILTER-COUNT-12: at stop-hook-threads.cpp{{.*}} stop reason = breakpoint
OpenPOWER on IntegriCloud