[compiler-rt] 418204d - Revert "[UBSan] [compiler-rt] add preservecc variants of handlers" (#168973)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 20 16:00:49 PST 2025
Author: Florian Mayer
Date: 2025-11-20T16:00:44-08:00
New Revision: 418204d9c108351340fe21194ace0e31157b7189
URL: https://github.com/llvm/llvm-project/commit/418204d9c108351340fe21194ace0e31157b7189
DIFF: https://github.com/llvm/llvm-project/commit/418204d9c108351340fe21194ace0e31157b7189.diff
LOG: Revert "[UBSan] [compiler-rt] add preservecc variants of handlers" (#168973)
Reverts llvm/llvm-project#168643
Added:
Modified:
compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c
Removed:
################################################################################
diff --git a/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp b/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
index 0a2d6f35a539a..a2a2e36e8523d 100644
--- a/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
+++ b/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
@@ -89,17 +89,6 @@ SANITIZER_INTERFACE_WEAK_DEF(void, __ubsan_report_error, const char *kind,
}
}
-SANITIZER_INTERFACE_WEAK_DEF(void, __ubsan_report_error_preserve,
- const char *kind, uintptr_t caller,
- const uintptr_t *address)
-[[clang::preserve_all]] {
- // Additional indirecton so the user can override this with their own
- // preserve_all function. This would allow, e.g., a function that reports the
- // first error only, so for all subsequent calls we can skip the register save
- // / restore.
- __ubsan_report_error(kind, caller, address);
-}
-
SANITIZER_INTERFACE_WEAK_DEF(void, __ubsan_report_error_fatal, const char *kind,
uintptr_t caller, const uintptr_t *address) {
// Use another handlers, in case it's already overriden.
@@ -141,10 +130,6 @@ void NORETURN CheckFailed(const char *file, int, const char *cond, u64, u64) {
#define HANDLER_RECOVER(name, kind) \
INTERFACE void __ubsan_handle_##name##_minimal() { \
__ubsan_report_error(kind, GET_CALLER_PC(), nullptr); \
- } \
- INTERFACE void __ubsan_handle_##name##_minimal_preserve() \
- [[clang::preserve_all]] { \
- __ubsan_report_error_preserve(kind, GET_CALLER_PC(), nullptr); \
}
#define HANDLER_NORECOVER(name, kind) \
@@ -161,10 +146,6 @@ void NORETURN CheckFailed(const char *file, int, const char *cond, u64, u64) {
#define HANDLER_RECOVER_PTR(name, kind) \
INTERFACE void __ubsan_handle_##name##_minimal(const uintptr_t address) { \
__ubsan_report_error(kind, GET_CALLER_PC(), &address); \
- } \
- INTERFACE void __ubsan_handle_##name##_minimal_preserve( \
- const uintptr_t address) [[clang::preserve_all]] { \
- __ubsan_report_error_preserve(kind, GET_CALLER_PC(), &address); \
}
#define HANDLER_NORECOVER_PTR(name, kind) \
diff --git a/compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c b/compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c
index 3c76e5aadc087..abc1073e02073 100644
--- a/compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c
+++ b/compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c
@@ -4,7 +4,6 @@
// REQUIRES: x86_64-darwin
// RUN: nm -jgU `%clangxx_min_runtime -fsanitize-minimal-runtime -fsanitize=undefined %s -o %t '-###' 2>&1 | grep "libclang_rt.ubsan_minimal_osx_dynamic.dylib" | sed -e 's/.*"\(.*libclang_rt.ubsan_minimal_osx_dynamic.dylib\)".*/\1/'` | grep "^___ubsan_handle" \
-// RUN: | grep -vE "_minimal_preserve" \
// RUN: | sed 's/_minimal//g' \
// RUN: > %t.minimal.symlist
//
More information about the llvm-commits
mailing list