diff options
Diffstat (limited to 'lib/asan/lit_tests/TestCases/Linux/unpoison_tls.cc')
-rw-r--r-- | lib/asan/lit_tests/TestCases/Linux/unpoison_tls.cc | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/lib/asan/lit_tests/TestCases/Linux/unpoison_tls.cc b/lib/asan/lit_tests/TestCases/Linux/unpoison_tls.cc deleted file mode 100644 index d67c4f954e43b..0000000000000 --- a/lib/asan/lit_tests/TestCases/Linux/unpoison_tls.cc +++ /dev/null @@ -1,35 +0,0 @@ -// Test that TLS is unpoisoned on thread death. -// REQUIRES: x86_64-supported-target,i386-supported-target - -// RUN: %clangxx_asan -O1 %s -o %t && %t 2>&1 - -#include <assert.h> -#include <pthread.h> -#include <stdio.h> - -#include <sanitizer/asan_interface.h> - -__thread int64_t tls_var[2]; - -volatile int64_t *p_tls_var; - -void *first(void *arg) { - ASAN_POISON_MEMORY_REGION(&tls_var, sizeof(tls_var)); - p_tls_var = tls_var; - return 0; -} - -void *second(void *arg) { - assert(tls_var == p_tls_var); - *p_tls_var = 1; - return 0; -} - -int main(int argc, char *argv[]) { - pthread_t p; - assert(0 == pthread_create(&p, 0, first, 0)); - assert(0 == pthread_join(p, 0)); - assert(0 == pthread_create(&p, 0, second, 0)); - assert(0 == pthread_join(p, 0)); - return 0; -} |