xref: /aosp_15_r20/external/compiler-rt/test/tsan/Linux/check_memcpy.cc (revision 7c3d14c8b49c529e04be81a3ce6f5cc23712e4c6)
1*7c3d14c8STreehugger Robot // Test that verifies TSan runtime doesn't contain compiler-emitted
2*7c3d14c8STreehugger Robot // memcpy/memmove calls. It builds the binary with TSan and passes it to
3*7c3d14c8STreehugger Robot // check_memcpy.sh script.
4*7c3d14c8STreehugger Robot 
5*7c3d14c8STreehugger Robot // RUN: %clangxx_tsan -O1 %s -o %t
6*7c3d14c8STreehugger Robot // RUN: llvm-objdump -d %t | FileCheck %s
7*7c3d14c8STreehugger Robot 
main()8*7c3d14c8STreehugger Robot int main() {
9*7c3d14c8STreehugger Robot   return 0;
10*7c3d14c8STreehugger Robot }
11*7c3d14c8STreehugger Robot 
12*7c3d14c8STreehugger Robot // CHECK-NOT: callq {{.*<(__interceptor_)?mem(cpy|set)>}}
13*7c3d14c8STreehugger Robot // tail calls:
14*7c3d14c8STreehugger Robot // CHECK-NOT: jmpq {{.*<(__interceptor_)?mem(cpy|set)>}}
15*7c3d14c8STreehugger Robot 
16