From e7ffbffaef0d820e3227b43881288b1cf222af90 Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Wed, 12 Aug 2015 22:58:56 +0000 Subject: Move tests that use unistd.h and pthread.h to TestCases/Posix llvm-svn: 244827 --- .../test/asan/TestCases/deep_thread_stack.cc | 58 ---------------------- 1 file changed, 58 deletions(-) delete mode 100644 compiler-rt/test/asan/TestCases/deep_thread_stack.cc (limited to 'compiler-rt/test/asan/TestCases/deep_thread_stack.cc') diff --git a/compiler-rt/test/asan/TestCases/deep_thread_stack.cc b/compiler-rt/test/asan/TestCases/deep_thread_stack.cc deleted file mode 100644 index 535da79ff58..00000000000 --- a/compiler-rt/test/asan/TestCases/deep_thread_stack.cc +++ /dev/null @@ -1,58 +0,0 @@ -// RUN: %clangxx_asan -O0 %s -pthread -o %t && not %run %t 2>&1 | FileCheck %s -// RUN: %clangxx_asan -O1 %s -pthread -o %t && not %run %t 2>&1 | FileCheck %s -// RUN: %clangxx_asan -O2 %s -pthread -o %t && not %run %t 2>&1 | FileCheck %s -// RUN: %clangxx_asan -O3 %s -pthread -o %t && not %run %t 2>&1 | FileCheck %s -// REQUIRES: stable-runtime - -#include - -int *x; - -void *AllocThread(void *arg) { - x = new int; - *x = 42; - return NULL; -} - -void *FreeThread(void *arg) { - delete x; - return NULL; -} - -void *AccessThread(void *arg) { - *x = 43; // BOOM - return NULL; -} - -typedef void* (*callback_type)(void* arg); - -void *RunnerThread(void *function) { - pthread_t thread; - pthread_create(&thread, NULL, (callback_type)function, NULL); - pthread_join(thread, NULL); - return NULL; -} - -void RunThread(callback_type function) { - pthread_t runner; - pthread_create(&runner, NULL, RunnerThread, (void*)function); - pthread_join(runner, NULL); -} - -int main(int argc, char *argv[]) { - RunThread(AllocThread); - RunThread(FreeThread); - RunThread(AccessThread); - return (x != 0); -} - -// CHECK: AddressSanitizer: heap-use-after-free -// CHECK: WRITE of size 4 at 0x{{.*}} thread T[[ACCESS_THREAD:[0-9]+]] -// CHECK: freed by thread T[[FREE_THREAD:[0-9]+]] here: -// CHECK: previously allocated by thread T[[ALLOC_THREAD:[0-9]+]] here: -// CHECK: Thread T[[ACCESS_THREAD]] created by T[[ACCESS_RUNNER:[0-9]+]] here: -// CHECK: Thread T[[ACCESS_RUNNER]] created by T0 here: -// CHECK: Thread T[[FREE_THREAD]] created by T[[FREE_RUNNER:[0-9]+]] here: -// CHECK: Thread T[[FREE_RUNNER]] created by T0 here: -// CHECK: Thread T[[ALLOC_THREAD]] created by T[[ALLOC_RUNNER:[0-9]+]] here: -// CHECK: Thread T[[ALLOC_RUNNER]] created by T0 here: -- cgit v1.2.3