summaryrefslogtreecommitdiffstats
path: root/compiler-rt
diff options
context:
space:
mode:
authorFlorian Hahn <flo@fhahn.com>2019-12-26 10:37:08 +0100
committerFlorian Hahn <flo@fhahn.com>2019-12-26 10:39:29 +0100
commit54c522420347e58aa7bae1892cf5c5672b57c875 (patch)
tree2afce4d1d0e09020d04baaebeb405991722ac8ef /compiler-rt
parentb036f557cee5b8eb87f0bffa7c305df6eda98437 (diff)
downloadbcm5719-llvm-54c522420347e58aa7bae1892cf5c5672b57c875.tar.gz
bcm5719-llvm-54c522420347e58aa7bae1892cf5c5672b57c875.zip
[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.
Diffstat (limited to 'compiler-rt')
-rw-r--r--compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
index 08937122e0b..4cc69af1241 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
OpenPOWER on IntegriCloud