]> gcc.gnu.org Git - gcc.git/commitdiff
libsanitizer: Only use assembler symbol assignment if supported [PR112563]
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Tue, 28 Nov 2023 13:55:52 +0000 (14:55 +0100)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Tue, 28 Nov 2023 13:55:52 +0000 (14:55 +0100)
This patch only enables symbol assignment if the configure test determined
it's supported.

Bootstrapped without regressions on sparc-sun-solaris2.11 (as and gas) and
i386-pc-solaris2.11 (as and gas).

2023-11-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

libsanitizer:
PR sanitizer/112563
* sanitizer_common/sanitizer_redefine_builtins.h: Check
HAVE_AS_SYM_ASSIGN.

libsanitizer/sanitizer_common/sanitizer_redefine_builtins.h

index d24b179ef320c1ccc08a41c7e887b7e4a54bf370..eba8e0fa0cc107a6371b401f019f97ff7286368d 100644 (file)
@@ -15,7 +15,7 @@
 #    define SANITIZER_REDEFINE_BUILTINS_H
 
 // The asm hack only works with GCC and Clang.
-#    if !defined(_WIN32)
+#    if !defined(_WIN32) && defined(HAVE_AS_SYM_ASSIGN)
 
 asm("memcpy = __sanitizer_internal_memcpy");
 asm("memmove = __sanitizer_internal_memmove");
@@ -50,7 +50,7 @@ using vector = Define_SANITIZER_COMMON_NO_REDEFINE_BUILTINS_in_cpp_file;
 }  // namespace std
 
 #      endif  // __cpluplus
-#    endif    // !_WIN32
+#    endif    // !_WIN32 && HAVE_AS_SYM_ASSIGN
 
 #  endif  // SANITIZER_REDEFINE_BUILTINS_H
 #endif    // SANITIZER_COMMON_NO_REDEFINE_BUILTINS
This page took 0.063864 seconds and 5 git commands to generate.