The mips64el compiler-rt build has recently been enabled. XFAIL the failing tests to make the buildbot green again. The two asan tests require the integrated assembler. This will be fixed soon for Debian mips64el but not for any other mips64el targets since doing so requires triple-related issues to be fixed.. The msan tests are largely failing because caused by a kernel update (a patch has already been posted for this). I'm not sure why the dfsan test fails yet. llvm-svn: 278504
44 lines
1.3 KiB
C++
44 lines
1.3 KiB
C++
// Test that mixing instrumented and non-instrumented code doesn't lead to crash.
|
|
// Build two modules (one is instrumented, another is not) that have globals
|
|
// with same names. Check, that ASan doesn't crash with CHECK failure or
|
|
// false positive global-buffer-overflow due to sanitized library poisons
|
|
// globals from non-sanitized one.
|
|
//
|
|
// FIXME: https://github.com/google/sanitizers/issues/316
|
|
// XFAIL: android
|
|
//
|
|
// This test requires the integrated assembler to be the default.
|
|
// XFAIL: target-is-mips64
|
|
// XFAIL: target-is-mips64el
|
|
//
|
|
// RUN: %clangxx_asan -DBUILD_INSTRUMENTED_DSO=1 -fPIC -shared -mllvm -asan-use-private-alias %s -o %t-INSTRUMENTED-SO.so
|
|
// RUN: %clangxx -DBUILD_UNINSTRUMENTED_DSO=1 -fPIC -shared %s -o %t-UNINSTRUMENTED-SO.so
|
|
// RUN: %clangxx %s -c -mllvm -asan-use-private-alias -o %t.o
|
|
// RUN: %clangxx_asan %t.o %t-UNINSTRUMENTED-SO.so %t-INSTRUMENTED-SO.so -o %t-EXE
|
|
// RUN: %env_asan_opts=use_odr_indicator=true %run %t-EXE
|
|
|
|
#if defined (BUILD_INSTRUMENTED_DSO)
|
|
long h = 15;
|
|
long f = 4;
|
|
long foo(long *p) {
|
|
return *p;
|
|
}
|
|
#elif defined (BUILD_UNINSTRUMENTED_DSO)
|
|
long foo(long *);
|
|
long h = 12;
|
|
long i = 13;
|
|
long f = 5;
|
|
|
|
int bar() {
|
|
if (foo(&f) != 5 || foo(&h) != 12 || foo(&i) != 13)
|
|
return 1;
|
|
return 0;
|
|
}
|
|
#else
|
|
extern int bar();
|
|
|
|
int main() {
|
|
return bar();
|
|
}
|
|
#endif
|