[compiler-rt] r371336 - [ASan] Only run dlopen-mixed-c-cxx.c with static runtime

Jonas Hahnfeld via llvm-commits llvm-commits at lists.llvm.org
Sun Sep 8 09:08:54 PDT 2019


Author: hahnfeld
Date: Sun Sep  8 09:08:54 2019
New Revision: 371336

URL: http://llvm.org/viewvc/llvm-project?rev=371336&view=rev
Log:
[ASan] Only run dlopen-mixed-c-cxx.c with static runtime

This is what the original bug (http://llvm.org/PR39641) and the fix
in https://reviews.llvm.org/D63877 have been about.
With the dynamic runtime the test only passes when the asan library
is linked against libstdc++: In contrast to libc++abi, it does not
implement __cxa_rethrow_primary_exception so the regex matches the
line saying that asan cannot intercept this function. Indeed, there
is no message that the runtime failed to intercept  __cxa_throw.

Differential Revision: https://reviews.llvm.org/D67298

Modified:
    compiler-rt/trunk/test/asan/TestCases/Linux/dlopen-mixed-c-cxx.c

Modified: compiler-rt/trunk/test/asan/TestCases/Linux/dlopen-mixed-c-cxx.c
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/asan/TestCases/Linux/dlopen-mixed-c-cxx.c?rev=371336&r1=371335&r2=371336&view=diff
==============================================================================
--- compiler-rt/trunk/test/asan/TestCases/Linux/dlopen-mixed-c-cxx.c (original)
+++ compiler-rt/trunk/test/asan/TestCases/Linux/dlopen-mixed-c-cxx.c Sun Sep  8 09:08:54 2019
@@ -3,9 +3,10 @@
 //
 // RUN: { env ASAN_OPTIONS=verbosity=1 %t.out %t.so || : ; } 2>&1 | FileCheck %s
 //
-// CHECK: {{.*}}AddressSanitizer: failed to intercept '__cxa_{{.*}}throw{{.*}}'
+// CHECK: AddressSanitizer: failed to intercept '__cxa_throw'
 //
-// REQUIRES: x86_64-target-arch && !android
+// This tests assumes static linking of the asan runtime.
+// UNSUPPORTED: asan-dynamic-runtime
 
 #ifdef __cplusplus
 




More information about the llvm-commits mailing list