Module Name: src
Committed By: christos
Date: Fri Jun 3 15:53:18 UTC 2016
Modified Files:
src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common:
sanitizer_linux_libcdep.cc
Log Message:
Fix compilation on non-x86
To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 \
src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc
diff -u src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc:1.2 src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc:1.3
--- src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc:1.2 Tue May 31 16:47:25 2016
+++ src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_linux_libcdep.cc Fri Jun 3 11:53:18 2016
@@ -236,7 +236,7 @@ uptr ThreadSelf() {
}
#endif // (defined(__x86_64__) || defined(__i386__)) && SANITIZER_LINUX
-#if SANITIZER_FREEBSD || SANITIZER_NETBSD
+#if SANITIZER_FREEBSD
static void **ThreadSelfSegbase() {
void **segbase = 0;
# if defined(__i386__)
@@ -254,7 +254,13 @@ static void **ThreadSelfSegbase() {
uptr ThreadSelf() {
return (uptr)ThreadSelfSegbase()[2];
}
-#endif // SANITIZER_FREEBSD || SANITIZER_NETBSD
+#endif // SANITIZER_FREEBSD
+
+#if SANITIZER_NETBSD
+uptr ThreadSelf() {
+ return (uptr)pthread_self();
+}
+#endif // SANITIZER_NETBSD
static void GetTls(uptr *addr, uptr *size) {
#if SANITIZER_LINUX
@@ -267,7 +273,7 @@ static void GetTls(uptr *addr, uptr *siz
*addr = 0;
*size = 0;
# endif
-#elif SANITIZER_FREEBSD || SANITIZER_NETBSD
+#elif SANITIZER_FREEBSD
void** segbase = ThreadSelfSegbase();
*addr = 0;
*size = 0;
@@ -280,6 +286,10 @@ static void GetTls(uptr *addr, uptr *siz
*addr = (uptr) dtv[2];
*size = (*addr == 0) ? 0 : ((uptr) segbase[0] - (uptr) dtv[2]);
}
+#elif SANITIZER_NETBSD
+ // XXX: for now
+ *addr = 0;
+ *size = 0;
#else
# error "Unknown OS"
#endif