From: Thomas Weißschuh Date: Wed, 8 Apr 2026 21:03:57 +0000 (+0200) Subject: tools/nolibc: support UBSAN on gcc X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=3495279d05d62b07d7594c75d4380f51d04410dd;p=thirdparty%2Fkernel%2Flinux.git tools/nolibc: support UBSAN on gcc The UBSAN implementation in gcc requires a slightly different function attribute to skip instrumentation. Extend __nolibc_no_sanitize_undefined to also handle gcc. Signed-off-by: Thomas Weißschuh Link: https://patch.msgid.link/20260408-nolibc-gcc-15-v1-2-330d0c40f894@weissschuh.net --- diff --git a/tools/include/nolibc/compiler.h b/tools/include/nolibc/compiler.h index b1239344d894a..b56570bf9f69e 100644 --- a/tools/include/nolibc/compiler.h +++ b/tools/include/nolibc/compiler.h @@ -81,7 +81,11 @@ #define _NOLIBC_OPTIMIZER_HIDE_VAR(var) __asm__ ("" : "+r" (var)) #if __nolibc_has_feature(undefined_behavior_sanitizer) -# define __nolibc_no_sanitize_undefined __attribute__((no_sanitize("function"))) +# if defined(__clang__) +# define __nolibc_no_sanitize_undefined __attribute__((no_sanitize("function"))) +# else +# define __nolibc_no_sanitize_undefined __attribute__((no_sanitize_undefined)) +# endif #else # define __nolibc_no_sanitize_undefined #endif