[compiler-rt] 796650d - [lsan] Remove unnecessary elf-tls condition

Vy Nguyen via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 4 19:23:15 PST 2020


Author: Vy Nguyen
Date: 2020-11-04T22:21:40-05:00
New Revision: 796650d9903a786f1984144d6a610b5b5099019b

URL: https://github.com/llvm/llvm-project/commit/796650d9903a786f1984144d6a610b5b5099019b
DIFF: https://github.com/llvm/llvm-project/commit/796650d9903a786f1984144d6a610b5b5099019b.diff

LOG: [lsan] Remove unnecessary elf-tls condition

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

Added: 
    

Modified: 
    compiler-rt/lib/lsan/lsan_common.h

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/lsan/lsan_common.h b/compiler-rt/lib/lsan/lsan_common.h
index a167cac01a4d..b99ab4c85a5f 100644
--- a/compiler-rt/lib/lsan/lsan_common.h
+++ b/compiler-rt/lib/lsan/lsan_common.h
@@ -29,14 +29,14 @@
 // To enable LeakSanitizer on a new architecture, one needs to implement the
 // internal_clone function as well as (probably) adjust the TLS machinery for
 // the new architecture inside the sanitizer library.
-#if ((SANITIZER_LINUX && !SANITIZER_ANDROID) || SANITIZER_MAC) &&        \
-    (SANITIZER_WORDSIZE == 64) &&                                        \
+#if (SANITIZER_LINUX || SANITIZER_MAC) && (SANITIZER_WORDSIZE == 64) &&  \
     (defined(__x86_64__) || defined(__mips64) || defined(__aarch64__) || \
      defined(__powerpc64__) || defined(__s390x__))
 #define CAN_SANITIZE_LEAKS 1
-#elif defined(__i386__) && \
-    ((SANITIZER_LINUX && !SANITIZER_ANDROID) || SANITIZER_MAC)
+#elif defined(__i386__) && (SANITIZER_LINUX || SANITIZER_MAC)
 #define CAN_SANITIZE_LEAKS 1
+// Exclude leak-detection on arm32 for Android because `__aeabi_read_tp`
+// is missing. This caused a link error.
 #elif defined(__arm__) && SANITIZER_LINUX && !SANITIZER_ANDROID
 #define CAN_SANITIZE_LEAKS 1
 #elif SANITIZER_NETBSD || SANITIZER_FUCHSIA


        


More information about the llvm-commits mailing list