Author: Alexander Potapenko Date: 2021-08-23T16:21:43+02:00 New Revision: cdb391698bb29fcbb9156604793121fdd73d3a89
URL: https://github.com/llvm/llvm-project/commit/cdb391698bb29fcbb9156604793121fdd73d3a89 DIFF: https://github.com/llvm/llvm-project/commit/cdb391698bb29fcbb9156604793121fdd73d3a89.diff LOG: [tsan] Do not include <stdatomic.h> from sanitize-thread-disable.c Looks like non-x86 bots are unhappy with inclusion of <stdatomic.h> e.g.: clang-armv7-vfpv3-2stage - https://lab.llvm.org/buildbot/#/builders/182/builds/626 clang-ppc64le-linux - https://lab.llvm.org/buildbot/#/builders/76/builds/3619 llvm-clang-win-x-armv7l - https://lab.llvm.org/buildbot/#/builders/60/builds/4514 It seems to be unnecessary, just remove it and replace atomic_load() calls with dereferences of _Atomic*. Differential Revision: https://reviews.llvm.org/D108555 Added: Modified: clang/test/CodeGen/sanitize-thread-disable.c Removed: ################################################################################ diff --git a/clang/test/CodeGen/sanitize-thread-disable.c b/clang/test/CodeGen/sanitize-thread-disable.c index d3ec1425e782..48a345928f6d 100644 --- a/clang/test/CodeGen/sanitize-thread-disable.c +++ b/clang/test/CodeGen/sanitize-thread-disable.c @@ -1,8 +1,6 @@ // RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - %s | FileCheck -check-prefixes CHECK,WITHOUT %s // RUN: %clang -target x86_64-linux-gnu -S -emit-llvm -o - %s -fsanitize=thread | FileCheck -check-prefixes CHECK,TSAN %s -#include <stdatomic.h> - // Instrumented function. // TSan inserts calls to __tsan_func_entry() and __tsan_func_exit() to prologue/epilogue. // Non-atomic loads are instrumented with __tsan_readXXX(), atomic loads - with @@ -19,7 +17,7 @@ // WITHOUT-NOT: call void @__tsan_func_exit // CHECK: ret i32 int instrumented1(int *a, _Atomic int *b) { - return *a + atomic_load(b); + return *a + *b; } // Function with no_sanitize("thread"). @@ -37,7 +35,7 @@ int instrumented1(int *a, _Atomic int *b) { // WITHOUT-NOT: call void @__tsan_func_exit // CHECK: ret i32 __attribute__((no_sanitize("thread"))) int no_false_positives1(int *a, _Atomic int *b) { - return *a + atomic_load(b); + return *a + *b; } // Function with disable_sanitizer_instrumentation: no instrumentation at all. @@ -53,5 +51,5 @@ __attribute__((no_sanitize("thread"))) int no_false_positives1(int *a, _Atomic i // WITHOUT-NOT: call void @__tsan_func_exit // CHECK: ret i32 __attribute__((disable_sanitizer_instrumentation)) int no_instrumentation1(int *a, _Atomic int *b) { - return *a + atomic_load(b); + return *a + *b; } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits