aboutsummaryrefslogtreecommitdiff
path: root/libsanitizer
diff options
context:
space:
mode:
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2023-01-17 10:56:20 +0100
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2023-01-17 10:56:20 +0100
commit85b45cccdf5f2442e791969abbffffbb2676591f (patch)
tree2b71fed79fe2569d568e27ecc64ce35a8d66abb6 /libsanitizer
parentf457a62e63a86d5e5342eda16538a26355199856 (diff)
downloadgcc-85b45cccdf5f2442e791969abbffffbb2676591f.zip
gcc-85b45cccdf5f2442e791969abbffffbb2676591f.tar.gz
gcc-85b45cccdf5f2442e791969abbffffbb2676591f.tar.bz2
libsanitizer: Fix asan SEGVs with gld on Solaris
When using GNU ld on Solaris, a large number of asan tests SEGV, while Solaris ld is fine. This happens inside the __tls_get_addr interceptor, which is highly glibc-specific. Therefore this patch disables that interceptor. Posted upstream at https://reviews.llvm.org/D141385. Tested on i386-pc-solaris2.11 and sparc-sun-solaris2.11. 2023-01-17 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> libsanitizer: * sanitizer_common/sanitizer_platform_interceptors.h: Cherry-pick llvm-project revision 951cf656b2faaf6fc0baa867293c0cb0ab131951.
Diffstat (limited to 'libsanitizer')
-rw-r--r--libsanitizer/sanitizer_common/sanitizer_platform_interceptors.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_interceptors.h b/libsanitizer/sanitizer_common/sanitizer_platform_interceptors.h
index 6e3081e..8307b1e 100644
--- a/libsanitizer/sanitizer_common/sanitizer_platform_interceptors.h
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_interceptors.h
@@ -405,7 +405,7 @@
(SI_FREEBSD || SI_NETBSD || SI_GLIBC || SI_SOLARIS)
#define SANITIZER_INTERCEPT_TLS_GET_ADDR \
- (SI_FREEBSD || SI_NETBSD || SI_LINUX_NOT_ANDROID || SI_SOLARIS)
+ (SI_FREEBSD || SI_NETBSD || SI_LINUX_NOT_ANDROID)
#define SANITIZER_INTERCEPT_LISTXATTR SI_LINUX
#define SANITIZER_INTERCEPT_GETXATTR SI_LINUX