| # RUN: %clangxx %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 |
| # XFAIL: system-netbsd |
| # UNSUPPORTED: system-windows |
| # This test is flakey and hangs on windows periodically: llvm.org/pr38373 |
| # UNSUPPORTED: system-linux, system-darwin |
| |
| 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-NO-FILTER-NEXT: AutoContinue on |
| # CHECK-FILTER-NEXT: Thread |
| # CHECK-FILTER-NEXT: index: 2 |
| # CHECK-NEXT: Commands: |
| # CHECK-NEXT: expr lldb_val += 1 |
| # CHECK-NEXT: thread list |
| |
| # CHECK-FILTER: Hook: 2 |
| # CHECK-FILTER-NEXT: State: enabled |
| # CHECK-FILTER-NEXT: AutoContinue on |
| # CHECK-FILTER-NEXT: Commands: |
| # CHECK-FILTER-NEXT: script print('Hit stop hook') |
| |
| # Get the threads going |
| continue |
| |
| # Now make sure we hit the command the right number of times: |
| # CHECK-NO-FILTER: lldb_val was set to: 15. |
| # CHECK-FILTER: lldb_val was set to: 5. |