Skip to content

Conversation

@fmayer
Copy link
Contributor

@fmayer fmayer commented Nov 19, 2025

No description provided.

Created using spr 1.3.7
@llvmbot
Copy link
Member

llvmbot commented Nov 19, 2025

@llvm/pr-subscribers-compiler-rt-sanitizer

Author: Florian Mayer (fmayer)

Changes

Full diff: https://github.com/llvm/llvm-project/pull/168643.diff

2 Files Affected:

  • (modified) compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp (+19)
  • (modified) compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c (+1)
diff --git a/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp b/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
index a2a2e36e8523d..0a2d6f35a539a 100644
--- a/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
+++ b/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
@@ -89,6 +89,17 @@ 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.
@@ -130,6 +141,10 @@ 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)                                          \
@@ -146,6 +161,10 @@ 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 abc1073e02073..3c76e5aadc087 100644
--- a/compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c
+++ b/compiler-rt/test/ubsan_minimal/TestCases/test-darwin-interface.c
@@ -4,6 +4,7 @@
 // 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
 //

@fmayer fmayer requested a review from vitalybuka November 19, 2025 01:36
@github-actions
Copy link

🐧 Linux x64 Test Results

  • 5820 tests passed
  • 1319 tests skipped

@fmayer fmayer merged commit 49e46a5 into main Nov 20, 2025
14 checks passed
@fmayer fmayer deleted the users/fmayer/spr/ubsan-compiler-rt-add-preservecc-variants-of-handlers-1 branch November 20, 2025 23:40
fmayer added a commit that referenced this pull request Nov 20, 2025
@llvm-ci
Copy link
Collaborator

llvm-ci commented Nov 21, 2025

LLVM Buildbot has detected a new failure on builder sanitizer-x86_64-linux running on sanitizer-buildbot1 while building compiler-rt at step 2 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/66/builds/22606

Here is the relevant piece of the build log for the reference
Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
+ sort -u
+ cut -f 1,2 -d ' '
+ sort -u
+ grep -Ev '^#|^$' /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt
+ diff -u expected.new undefined.new
+ grep -E '^\+[^+]'
+ cp -f symbolizer.o /home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/sanitizer_common/symbolizer/RTSanitizerCommonSymbolizerInternal.i386.o
+ echo 'Success!'
Success!
[2483/3250] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O3 -gline-tables-only -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 8 (build compiler-rt symbolizer) failure: build compiler-rt symbolizer (failure)
...
+ sort -u
+ cut -f 1,2 -d ' '
+ sort -u
+ grep -Ev '^#|^$' /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt
+ diff -u expected.new undefined.new
+ grep -E '^\+[^+]'
+ cp -f symbolizer.o /home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/sanitizer_common/symbolizer/RTSanitizerCommonSymbolizerInternal.i386.o
+ echo 'Success!'
Success!
[2483/3250] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O3 -gline-tables-only -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 9 (test compiler-rt symbolizer) failure: test compiler-rt symbolizer (failure)
...
+ nm -f posix -g symbolizer.o
+ sort -u
+ grep -Ev '^#|^$' /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt
+ sort -u
+ diff -u expected.new undefined.new
+ grep -E '^\+[^+]'
+ cp -f symbolizer.o /home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/sanitizer_common/symbolizer/RTSanitizerCommonSymbolizerInternal.x86_64.o
+ echo 'Success!'
Success!
[77/677] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O3 -gline-tables-only -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 10 (build compiler-rt debug) failure: build compiler-rt debug (failure)
...
-- Performing Test CXX_SUPPORTS_FDEBUG_PREFIX_MAP_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/BUILD_DEFAULT/RUNTIMES/RUNTIMES_BINS/COMPILER_RT/LIB/FUZZER/LIBCXX_FUZZER_X86_64/BUILD/INCLUDE/CXX/V1_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/LLVM_PROJECT/LIBCXX/INCLUDE_FLAG
-- Performing Test CXX_SUPPORTS_FDEBUG_PREFIX_MAP_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/BUILD_DEFAULT/RUNTIMES/RUNTIMES_BINS/COMPILER_RT/LIB/FUZZER/LIBCXX_FUZZER_X86_64/BUILD/INCLUDE/CXX/V1_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/LLVM_PROJECT/LIBCXX/INCLUDE_FLAG - Success
-- Performing Test CXX_SUPPORTS_FALIGNED_ALLOCATION_FLAG
-- Performing Test CXX_SUPPORTS_FALIGNED_ALLOCATION_FLAG - Success
-- Performing Test CXX_SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG
-- Performing Test CXX_SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success
-- Configuring done (4.9s)
-- Generating done (0.1s)
-- Build files have been written to: /home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build
[2508/3246] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -DSANITIZER_DEBUG=1 -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O1 -g -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 11 (test compiler-rt debug) failure: test compiler-rt debug (failure)
...
-- Could NOT find LLVM (missing: LLVM_DIR)
-- Could NOT find Clang (missing: Clang_DIR)
-- LLVM host triple: x86_64-unknown-linux-gnu
-- LLVM default target triple: x86_64-unknown-linux-gnu
-- Using libc++abi testing configuration: /home/b/sanitizer-x86_64-linux/build/llvm-project/libcxxabi/test/configs/llvm-libc++abi-static.cfg.in
-- Using libc++ testing configuration: /home/b/sanitizer-x86_64-linux/build/llvm-project/libcxx/test/configs/llvm-libc++-static.cfg.in
-- Configuring done (0.3s)
-- Generating done (0.1s)
-- Build files have been written to: /home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build
[75/657] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -DSANITIZER_DEBUG=1 -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O1 -g -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 12 (build compiler-rt tsan_debug) failure: build compiler-rt tsan_debug (failure)
...
[2451/3153] Building CXX object compiler-rt/lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-x86_64.dir/linux.cpp.o
[2452/3153] Building CXX object compiler-rt/lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-x86_64.dir/mem_map_linux.cpp.o
[2453/3153] Building CXX object compiler-rt/lib/gwp_asan/CMakeFiles/clang_rt.gwp_asan-i386.dir/common.cpp.o
[2454/3153] Building CXX object compiler-rt/lib/gwp_asan/CMakeFiles/clang_rt.gwp_asan-i386.dir/platform_specific/mutex_posix.cpp.o
[2455/3153] Building CXX object compiler-rt/lib/gwp_asan/CMakeFiles/clang_rt.gwp_asan-x86_64.dir/platform_specific/common_posix.cpp.o
[2456/3153] Building CXX object compiler-rt/lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-x86_64.dir/report.cpp.o
[2457/3153] Building CXX object compiler-rt/lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-x86_64.dir/timing.cpp.o
[2458/3153] Building CXX object compiler-rt/lib/gwp_asan/CMakeFiles/clang_rt.gwp_asan-i386.dir/platform_specific/utilities_posix.cpp.o
[2459/3153] Building CXX object compiler-rt/lib/scudo/standalone/CMakeFiles/clang_rt.scudo_standalone-dynamic-x86_64.dir/string_utils.cpp.o
[2460/3153] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -DSANITIZER_DEBUG=1 -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O1 -g -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 13 (build compiler-rt default) failure: build compiler-rt default (failure)
...
-- Performing Test CXX_SUPPORTS_FDEBUG_PREFIX_MAP_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/BUILD_DEFAULT/RUNTIMES/RUNTIMES_BINS/COMPILER_RT/LIB/FUZZER/LIBCXX_FUZZER_X86_64/BUILD/INCLUDE/CXX/V1_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/LLVM_PROJECT/LIBCXX/INCLUDE_FLAG
-- Performing Test CXX_SUPPORTS_FDEBUG_PREFIX_MAP_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/BUILD_DEFAULT/RUNTIMES/RUNTIMES_BINS/COMPILER_RT/LIB/FUZZER/LIBCXX_FUZZER_X86_64/BUILD/INCLUDE/CXX/V1_EQ_/HOME/B/SANITIZER_X86_64_LINUX/BUILD/LLVM_PROJECT/LIBCXX/INCLUDE_FLAG - Success
-- Performing Test CXX_SUPPORTS_FALIGNED_ALLOCATION_FLAG
-- Performing Test CXX_SUPPORTS_FALIGNED_ALLOCATION_FLAG - Success
-- Performing Test CXX_SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG
-- Performing Test CXX_SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success
-- Configuring done (4.7s)
-- Generating done (0.1s)
-- Build files have been written to: /home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build
[2497/3246] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O3 -gline-tables-only -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 14 (test compiler-rt default) failure: test compiler-rt default (failure)
...
-- Could NOT find LLVM (missing: LLVM_DIR)
-- Could NOT find Clang (missing: Clang_DIR)
-- LLVM host triple: x86_64-unknown-linux-gnu
-- LLVM default target triple: x86_64-unknown-linux-gnu
-- Using libc++abi testing configuration: /home/b/sanitizer-x86_64-linux/build/llvm-project/libcxxabi/test/configs/llvm-libc++abi-static.cfg.in
-- Using libc++ testing configuration: /home/b/sanitizer-x86_64-linux/build/llvm-project/libcxx/test/configs/llvm-libc++-static.cfg.in
-- Configuring done (0.3s)
-- Generating done (0.1s)
-- Build files have been written to: /home/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/lib/fuzzer/libcxx_fuzzer_x86_64/build
[80/668] Building CXX object compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o
FAILED: compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o 
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang++ --target=x86_64-unknown-linux-gnu -D_DEBUG -D_GLIBCXX_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/.. -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Wall -Werror -Wno-unused-parameter -O3 -DNDEBUG -std=c++17 -m32 -fPIC -fno-builtin -fno-exceptions -fomit-frame-pointer -funwind-tables -fno-stack-protector -fno-sanitize=safe-stack -fvisibility=hidden -fno-lto -Wthread-safety -Wthread-safety-reference -Wthread-safety-beta -O3 -gline-tables-only -Wno-gnu -Wno-variadic-macros -Wno-c99-extensions -ftrivial-auto-var-init=pattern -nostdinc++ -DSANITIZER_COMMON_NO_REDEFINE_BUILTINS -fno-rtti -MD -MT compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -MF compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o.d -o compiler-rt/lib/ubsan_minimal/CMakeFiles/RTUbsan_minimal.i386.dir/ubsan_minimal_handlers.cpp.o -c /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:95:3: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
   95 | [[clang::preserve_all]] {
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:183:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  183 | HANDLER_PTR(type_mismatch, "type-mismatch")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:180:3: note: expanded from macro 'HANDLER_PTR'
  180 |   HANDLER_RECOVER_PTR(name, kind)                                              \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:166:34: note: expanded from macro 'HANDLER_RECOVER_PTR'
  166 |       const uintptr_t address) [[clang::preserve_all]] {                       \
      |                                  ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:184:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  184 | HANDLER(alignment_assumption, "alignment-assumption")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:185:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  185 | HANDLER(add_overflow, "add-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
  146 |       [[clang::preserve_all]] {                                                \
      |         ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:186:1: error: 'clang::preserve_all' calling convention is not supported for this target [-Werror,-Wignored-attributes]
  186 | HANDLER(sub_overflow, "sub-overflow")
      | ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:158:3: note: expanded from macro 'HANDLER'
  158 |   HANDLER_RECOVER(name, kind)                                                  \
      |   ^
/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp:146:9: note: expanded from macro 'HANDLER_RECOVER'
Step 16 (test standalone compiler-rt) failure: test standalone compiler-rt (failure)
...
[229/235] Generating MSAN_INST_GTEST.gtest-all.cc.x86_64-with-call.o
[230/235] Generating MSAN_INST_GTEST.gtest-all.cc.x86_64.o
[231/235] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.x86_64-with-call.o
[232/235] Generating Msan-x86_64-with-call-Test
[233/235] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.x86_64.o
[234/235] Generating Msan-x86_64-Test
[234/235] Running compiler_rt regression tests
llvm-lit: /home/b/sanitizer-x86_64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:74: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 6052 tests, 64 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 
FAIL: SafeStack-Standalone-x86_64 :: lto.c (3044 of 6052)
******************** TEST 'SafeStack-Standalone-x86_64 :: lto.c' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/home/b/sanitizer-x86_64-linux/build/build_default/bin/clang  -fuse-ld=gold -flto -fsanitize=safe-stack /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test/safestack/lto.c -o /home/b/sanitizer-x86_64-linux/build/compiler_rt_build/test/safestack/Standalone-x86_64/Output/lto.c.tmp # RUN: at line 3
+ /home/b/sanitizer-x86_64-linux/build/build_default/bin/clang -fuse-ld=gold -flto -fsanitize=safe-stack /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test/safestack/lto.c -o /home/b/sanitizer-x86_64-linux/build/compiler_rt_build/test/safestack/Standalone-x86_64/Output/lto.c.tmp
/usr/bin/ld.gold: error: cannot open /home/b/sanitizer-x86_64-linux/build/build_default/lib/clang/22/lib/x86_64-unknown-linux-gnu/libclang_rt.safestack.a: No such file or directory
/tmp/lit-tmp-c7fng5za/lto-llvm-b5293c.o:ld-temp.o:function main:(.text.main+0xe): error: undefined reference to '__safestack_unsafe_stack_ptr'
clang: error: linker command failed with exit code 1 (use -v to see invocation)

--

********************
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. 
Slowest Tests:
--------------------------------------------------------------------------
35.00s: libFuzzer-x86_64-default-Linux :: fork_corpus_groups.test
34.71s: libFuzzer-x86_64-default-Linux :: fork.test
12.38s: SanitizerCommon-msan-x86_64-Linux :: Linux/soft_rss_limit_mb_test.cpp
11.88s: SanitizerCommon-asan-x86_64-Linux :: Linux/soft_rss_limit_mb_test.cpp
11.65s: SanitizerCommon-lsan-x86_64-Linux :: Linux/soft_rss_limit_mb_test.cpp
11.31s: ThreadSanitizer-x86_64 :: restore_stack.cpp
10.88s: libFuzzer-x86_64-default-Linux :: out-of-process-fuzz.test
10.85s: libFuzzer-x86_64-default-Linux :: minimize_timeout.test
10.79s: ThreadSanitizer-x86_64 :: bench_threads.cpp
10.65s: SanitizerCommon-tsan-x86_64-Linux :: Linux/soft_rss_limit_mb_test.cpp
10.64s: ThreadSanitizer-x86_64 :: stress.cpp
9.99s: libFuzzer-x86_64-default-Linux :: minimize_crash.test
9.31s: libFuzzer-x86_64-default-Linux :: fork-sigusr.test
9.25s: ThreadSanitizer-x86_64 :: force_background_thread.cpp
9.22s: DataFlowSanitizer-x86_64 :: custom.cpp
8.83s: libFuzzer-x86_64-default-Linux :: fuzzer-timeout.test
8.65s: SanitizerCommon-Unit :: ./Sanitizer-x86_64-Test/SanitizerCommon/CombinedAllocator32Compact
7.31s: Profile-x86_64 :: Posix/instrprof-value-prof-shared.test
6.41s: ThreadSanitizer-x86_64 :: deadlock_detector_stress_test.cpp
6.33s: libFuzzer-x86_64-default-Linux :: merge-sigusr.test


llvm-sync bot pushed a commit to arm/arm-toolchain that referenced this pull request Nov 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants