summaryrefslogtreecommitdiffstats
path: root/lldb/test/Shell/ExecControl
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/test/Shell/ExecControl')
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-1.lldbinit1
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-2.lldbinit1
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-3.lldbinit3
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-1.lldbinit7
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-2.lldbinit5
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads.cpp79
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook.c53
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/stop-hook-threads.test35
-rw-r--r--lldb/test/Shell/ExecControl/StopHook/stop-hook.test76
9 files changed, 0 insertions, 260 deletions
diff --git a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-1.lldbinit b/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-1.lldbinit
deleted file mode 100644
index 4ab5d56f036..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-1.lldbinit
+++ /dev/null
@@ -1 +0,0 @@
-target stop-hook add -n b -o "expr ptr"
diff --git a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-2.lldbinit b/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-2.lldbinit
deleted file mode 100644
index 31817bdaaa5..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-2.lldbinit
+++ /dev/null
@@ -1 +0,0 @@
-target stop-hook add -f stop-hook.c -l 29 -e 34 -o "expr ptr"
diff --git a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-3.lldbinit b/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-3.lldbinit
deleted file mode 100644
index 36e144deecc..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-3.lldbinit
+++ /dev/null
@@ -1,3 +0,0 @@
-target stop-hook add -f stop-hook.c -l 29 -e 34
-expr ptr
-DONE
diff --git a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-1.lldbinit b/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-1.lldbinit
deleted file mode 100644
index 004bd34abfb..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-1.lldbinit
+++ /dev/null
@@ -1,7 +0,0 @@
-break set -f stop-hook-threads.cpp -p "Break here to set up the stop hook"
-break set -f stop-hook-threads.cpp -p "Break here to test that the stop-hook"
-run
-target stop-hook add -G true
-expr lldb_val += 1
-thread list
-DONE
diff --git a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-2.lldbinit b/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-2.lldbinit
deleted file mode 100644
index 3b7d23953c3..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads-2.lldbinit
+++ /dev/null
@@ -1,5 +0,0 @@
-break set -f stop-hook-threads.cpp -p "Break here to set up the stop hook"
-break set -f stop-hook-threads.cpp -p "Break here to test that the stop-hook"
-run
-target stop-hook add -x 2 -o "expr lldb_val += 1" -o "thread list"
-target stop-hook add -G true -o "script print('Hit stop hook')
diff --git a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads.cpp b/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads.cpp
deleted file mode 100644
index 46aae8346be..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads.cpp
+++ /dev/null
@@ -1,79 +0,0 @@
-//===-- stop-hook-threads.cpp -----------------------------------*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-#include <chrono>
-#include <cstdio>
-#include <mutex>
-#include <random>
-#include <thread>
-
-std::default_random_engine g_random_engine{std::random_device{}()};
-std::uniform_int_distribution<> g_distribution{0, 3000};
-
-uint32_t g_val = 0;
-uint32_t lldb_val = 0;
-
-uint32_t
-access_pool (bool flag = false)
-{
- static std::mutex g_access_mutex;
- if (!flag)
- g_access_mutex.lock();
-
- uint32_t old_val = g_val;
- if (flag)
- g_val = old_val + 1;
-
- if (!flag)
- g_access_mutex.unlock();
- return g_val;
-}
-
-void
-thread_func (uint32_t thread_index)
-{
- // Break here to test that the stop-hook mechanism works for multiple threads.
- printf ("%s (thread index = %u) startng...\n", __FUNCTION__, thread_index);
-
- uint32_t count = 0;
- uint32_t val;
- while (count++ < 4)
- {
- // random micro second sleep from zero to .3 seconds
- int usec = g_distribution(g_random_engine);
- printf ("%s (thread = %u) doing a usleep (%d)...\n", __FUNCTION__, thread_index, usec);
- std::this_thread::sleep_for(std::chrono::microseconds{usec}); // Set break point at this line
-
- if (count < 2)
- val = access_pool ();
- else
- val = access_pool (true);
-
- printf ("%s (thread = %u) after usleep access_pool returns %d (count=%d)...\n", __FUNCTION__, thread_index, val, count);
- }
- printf ("%s (thread index = %u) exiting...\n", __FUNCTION__, thread_index);
-}
-
-
-int main (int argc, char const *argv[])
-{
- std::thread threads[3];
- // Break here to set up the stop hook
- printf("Stop hooks engaged.\n");
- // Create 3 threads
- for (auto &thread : threads)
- thread = std::thread{thread_func, std::distance(threads, &thread)};
-
- // Join all of our threads
- for (auto &thread : threads)
- thread.join();
-
- // print lldb_val so we can check it here.
- printf ("lldb_val was set to: %d.\n", lldb_val);
- return 0;
-}
diff --git a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook.c b/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook.c
deleted file mode 100644
index e1b2579526d..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook.c
+++ /dev/null
@@ -1,53 +0,0 @@
-//===-- main.c --------------------------------------------------*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-#include <stdio.h>
-#include <stdlib.h>
-
-int a(int);
-int b(int);
-int c(int);
-
-int a(int val)
-{
- if (val <= 1)
- return b(val);
- else if (val >= 3)
- return c(val);
-
- return val;
-}
-
-int b(int val)
-{
- int rc = c(val);
- void *ptr = malloc(1024);
- if (!ptr) // Set breakpoint here to test target stop-hook.
- return -1;
- else
- printf("ptr=%p\n", ptr); // We should stop here after stepping.
- return rc; // End of the line range for which stop-hook is to be run.
-}
-
-int c(int val)
-{
- return val + 3;
-}
-
-int main (int argc, char const *argv[])
-{
- int A1 = a(1);
- printf("a(1) returns %d\n", A1);
-
- int C2 = c(2); // Another breakpoint which is outside of the stop-hook range.
- printf("c(2) returns %d\n", C2);
-
- int A3 = a(3);
- printf("a(3) returns %d\n", A3);
-
- return 0;
-}
diff --git a/lldb/test/Shell/ExecControl/StopHook/stop-hook-threads.test b/lldb/test/Shell/ExecControl/StopHook/stop-hook-threads.test
deleted file mode 100644
index edb95ffc25e..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/stop-hook-threads.test
+++ /dev/null
@@ -1,35 +0,0 @@
-# RUN: %clangxx -std=c++11 %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.
diff --git a/lldb/test/Shell/ExecControl/StopHook/stop-hook.test b/lldb/test/Shell/ExecControl/StopHook/stop-hook.test
deleted file mode 100644
index ca6495ef14a..00000000000
--- a/lldb/test/Shell/ExecControl/StopHook/stop-hook.test
+++ /dev/null
@@ -1,76 +0,0 @@
-# RUN: %clang %p/Inputs/stop-hook.c -g -o %t
-# Test setting stop-hook per-function
-# RUN: %lldb -b -s %p/Inputs/stop-hook-1.lldbinit -s %s -f %t \
-# RUN: | FileCheck --check-prefix=CHECK --check-prefix=CHECK-FUNC %s
-# Test setting stop-hook per-line range
-# RUN: %lldb -b -s %p/Inputs/stop-hook-2.lldbinit -s %s -f %t | FileCheck %s
-# Test setting stop-hook with multi-line expression
-# RUN: %lldb -b -s %p/Inputs/stop-hook-3.lldbinit -s %s -f %t | FileCheck %s
-# This test is not "unsupported" on Windows, but it fails because "expr ptr"
-# does not evaluate correctly. However, the error message contains the expected
-# string, so the test "passes" despite the fact that the commands failed
-# llvm.org/pr40119
-# UNSUPPORTED: system-windows
-
-break set -f stop-hook.c -p "// Set breakpoint here to test target stop-hook"
-break set -f stop-hook.c -p "// Another breakpoint which is outside of the stop-hook range"
-target stop-hook list
-
-# CHECK: Hook: 1
-# CHECK-NEXT: State: enabled
-# CHECK-NEXT: Specifier:
-# CHECK-FUNC-NEXT: Function: b.
-# CHECK-NEXT: Commands:
-# CHECK-NEXT: expr ptr
-
-target stop-hook disable
-
-target stop-hook list
-# CHECK: Hook: 1
-# CHECK-NEXT: State: disabled
-# CHECK-NEXT: Specifier:
-# CHECK-FUNC-NEXT: Function: b.
-# CHECK-NEXT: Commands:
-# CHECK-NEXT: expr ptr
-
-target stop-hook enable
-
-target stop-hook list
-# CHECK: Hook: 1
-# CHECK-NEXT: State: enabled
-# CHECK-NEXT: Specifier:
-# CHECK-FUNC-NEXT: Function: b.
-# CHECK-NEXT: Commands:
-# CHECK-NEXT: expr ptr
-
-run
-# Stopping inside of the stop hook range
-# CHECK: (lldb) run
-# CHECK-NEXT: (void *) $0 = 0x
-
-thread step-over
-# Stepping inside of the stop hook range
-# CHECK: (lldb) thread step-over
-# CHECK-NEXT: (void *) $1 = 0x
-# CHECK: ->{{.*}} // We should stop here after stepping.
-
-process continue
-# Stopping outside of the stop hook range
-# CHECK: (lldb) process continue
-# CHECK-NOT: (void *)
-# CHECK: ->{{.*}} // Another breakpoint which is outside of the stop-hook range.
-
-thread step-over
-# Stepping inside of the stop hook range
-# CHECK: (lldb) thread step-over
-# CHECK-NOT: (void *)
-
-settings set auto-confirm true
-target stop-hook delete
-
-target stop-hook list
-# CHECK: (lldb) target stop-hook list
-# CHECK-NOT: Hook: 1
-# CHECK: No stop hooks
-# CHECK-NOT: Hook: 1
-
OpenPOWER on IntegriCloud