xref: /llvm-project/compiler-rt/test/tsan/Linux/check_memcpy.c (revision 0a71e25e2448ee471b1ebe74e910c5de9b9c82b4)
1 // Test that verifies TSan runtime doesn't contain compiler-emitted
2 // memcpy/memmove calls. It builds the binary with TSan and check's
3 // its objdump.
4 
5 // This could fail if using a static libunwind because that static libunwind
6 // could be uninstrumented and contain memcpy/memmove calls not intercepted by
7 // tsan.
8 // REQUIRES: shared_unwind, x86_64-target-arch
9 
10 // RUN: %clang_tsan -O1 %s -o %t
11 // RUN: llvm-objdump -d -l %t | FileCheck --implicit-check-not="{{(callq|jmpq) .*<(__interceptor_.*)?mem(cpy|set|move)>}}" %s
12 
main()13 int main() { return 0; }
14