[compiler-rt] 2c1ec06 - [compiler-rt] Disable interceptor trampoline for SPARC
Marco Elver via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 13 04:52:16 PDT 2023
Author: Marco Elver
Date: 2023-06-13T13:52:00+02:00
New Revision: 2c1ec06d45a9c0322912dd92607a761a57a014ae
URL: https://github.com/llvm/llvm-project/commit/2c1ec06d45a9c0322912dd92607a761a57a014ae
DIFF: https://github.com/llvm/llvm-project/commit/2c1ec06d45a9c0322912dd92607a761a57a014ae.diff
LOG: [compiler-rt] Disable interceptor trampoline for SPARC
SPARC jmp requires a delay slot after, and without it will likely result
in a crash. For now, just disable interceptor trampolines on SPARC,
because the specific usecase for them (3 interceptors) does not exist on
SPARC (yet). We can revisit, and carefully implement the support for
SPARC when required.
Reported-by: ro
Added:
Modified:
compiler-rt/lib/sanitizer_common/sanitizer_asm.h
Removed:
################################################################################
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_asm.h b/compiler-rt/lib/sanitizer_common/sanitizer_asm.h
index 6c1418fc19d79..3c9bbdc9678b0 100644
--- a/compiler-rt/lib/sanitizer_common/sanitizer_asm.h
+++ b/compiler-rt/lib/sanitizer_common/sanitizer_asm.h
@@ -66,7 +66,8 @@
# define ASM_SIZE(symbol) .size symbol, .-symbol
# define ASM_SYMBOL(symbol) symbol
# define ASM_SYMBOL_INTERCEPTOR(symbol) symbol
-# if defined(__i386__) || defined(__powerpc__) || defined(__s390__)
+# if defined(__i386__) || defined(__powerpc__) || defined(__s390__) || \
+ defined(__sparc__)
// For details, see interception.h
# define ASM_WRAPPER_NAME(symbol) __interceptor_##symbol
# define ASM_TRAMPOLINE_ALIAS(symbol, name) \
More information about the llvm-commits
mailing list