[compiler-rt] 54c5224 - [compiler-rt] Disable QSORT interception on watchOS and tvOS.
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 26 01:40:00 PST 2019
Author: Florian Hahn
Date: 2019-12-26T10:39:29+01:00
New Revision: 54c522420347e58aa7bae1892cf5c5672b57c875
URL: https://github.com/llvm/llvm-project/commit/54c522420347e58aa7bae1892cf5c5672b57c875
DIFF: https://github.com/llvm/llvm-project/commit/54c522420347e58aa7bae1892cf5c5672b57c875.diff
LOG: [compiler-rt] Disable QSORT interception on watchOS and tvOS.
Building the sanitizers for watchOS currently fails with
sanitizer_common_interceptors.inc:9656:8: error: thread-local storage is not supported for the current target
static THREADLOCAL SIZE_T qsort_size;
I've also speculatively disabled QSORT interception for tvOS to unblock
failing builds. I'll ask someone with more sanitizer knowledge to check
after the holidays.
Added:
Modified:
compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
Removed:
################################################################################
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
index 08937122e0bc..4cc69af1241d 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
@@ -96,6 +96,18 @@
# define SI_IOSSIM 0
#endif
+#if SANITIZER_WATCHOS
+# define SI_WATCHOS 1
+#else
+# define SI_WATCHOS 0
+#endif
+
+#if SANITIZER_TVOS
+# define SI_TVOS 1
+#else
+# define SI_TVOS 0
+#endif
+
#if SANITIZER_FUCHSIA
# define SI_NOT_FUCHSIA 0
#else
@@ -581,7 +593,8 @@
#define SANITIZER_INTERCEPT_ATEXIT SI_NETBSD
#define SANITIZER_INTERCEPT_PTHREAD_ATFORK SI_NETBSD
#define SANITIZER_INTERCEPT_GETENTROPY SI_FREEBSD
-#define SANITIZER_INTERCEPT_QSORT (SI_POSIX && !SI_IOSSIM)
+#define SANITIZER_INTERCEPT_QSORT \
+ (SI_POSIX && !SI_IOSSIM && !SI_WATCHOS && !SI_TVOS)
#define SANITIZER_INTERCEPT_QSORT_R (SI_LINUX && !SI_ANDROID)
#endif // #ifndef SANITIZER_PLATFORM_INTERCEPTORS_H
More information about the llvm-commits
mailing list