Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/gpl3/gcc/dist/libsanitizer/tsan Catch unsupported L...



details:   https://anonhg.NetBSD.org/src/rev/1d24d39e81b9
branches:  trunk
changeset: 954974:1d24d39e81b9
user:      kamil <kamil%NetBSD.org@localhost>
date:      Mon Sep 14 11:56:01 2020 +0000

description:
Catch unsupported LONG_JMP_SP_ENV_SLOT

A variation of this patch is pending upstream: https://reviews.llvm.org/D87602

diffstat:

 external/gpl3/gcc/dist/libsanitizer/tsan/tsan_interceptors.cc |  10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diffs (23 lines):

diff -r 603bc3b92e91 -r 1d24d39e81b9 external/gpl3/gcc/dist/libsanitizer/tsan/tsan_interceptors.cc
--- a/external/gpl3/gcc/dist/libsanitizer/tsan/tsan_interceptors.cc     Mon Sep 14 10:53:02 2020 +0000
+++ b/external/gpl3/gcc/dist/libsanitizer/tsan/tsan_interceptors.cc     Mon Sep 14 11:56:01 2020 +0000
@@ -497,12 +497,16 @@
 }
 
 static void LongJmp(ThreadState *thr, uptr *env) {
-#ifdef __powerpc__
+#if SANITIZER_NETBSD
+# ifdef __x86_64__
+  uptr mangled_sp = env[6];
+# else
+#  error Unsupported
+# endif
+#elif defined(__powerpc__)
   uptr mangled_sp = env[0];
 #elif SANITIZER_FREEBSD
   uptr mangled_sp = env[2];
-#elif SANITIZER_NETBSD
-  uptr mangled_sp = env[6];
 #elif SANITIZER_MAC
 # ifdef __aarch64__
   uptr mangled_sp =



Home | Main Index | Thread Index | Old Index