This changes add_custom_libcxx to also build libcxxabi and merges the two into a static and hermetic library. There are multiple advantages: 1) The resulting libFuzzer doesn't expose C++ internals and looks like a plain C library. 2) We don't have to manually link in libstdc++ to provide cxxabi. 3) The sanitizer tests cannot interfere with an installed version of libc++.so in LD_LIBRARY_PATH. Differential Revision: https://reviews.llvm.org/D58013 llvm-svn: 354212
18 lines
424 B
C
18 lines
424 B
C
// Test that verifies TSan runtime doesn't contain compiler-emitted
|
|
// memcpy/memmove calls. It builds the binary with TSan and check's
|
|
// its objdump.
|
|
|
|
// RUN: %clang_tsan -O1 %s -o %t
|
|
// RUN: llvm-objdump -d %t | FileCheck %s
|
|
|
|
// REQUIRES: compiler-rt-optimized
|
|
|
|
int main() {
|
|
return 0;
|
|
}
|
|
|
|
// CHECK-NOT: callq {{.*<(__interceptor_)?mem(cpy|set)>}}
|
|
// tail calls:
|
|
// CHECK-NOT: jmpq {{.*<(__interceptor_)?mem(cpy|set)>}}
|
|
|