diff options
Diffstat (limited to 'test/tsan/interface_atomic_test.c')
-rw-r--r-- | test/tsan/interface_atomic_test.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/test/tsan/interface_atomic_test.c b/test/tsan/interface_atomic_test.c new file mode 100644 index 0000000000000..18d860ea02e2b --- /dev/null +++ b/test/tsan/interface_atomic_test.c @@ -0,0 +1,16 @@ +// Test that we can include header with TSan atomic interface. +// RUN: %clang_tsan %s -o %t && %run %t | FileCheck %s +#include <sanitizer/tsan_interface_atomic.h> +#include <stdio.h> + +int main() { + __tsan_atomic32 a; + __tsan_atomic32_store(&a, 100, __tsan_memory_order_release); + int res = __tsan_atomic32_load(&a, __tsan_memory_order_acquire); + if (res == 100) { + // CHECK: PASS + printf("PASS\n"); + return 0; + } + return 1; +} |