Don't add crtfastmath.o for -shared to avoid altering the FP environment when loading a shared library.
There's no maintainer listed for ia64, I'll push this myself as obvious as last part of the series. PR target/55522 * config/ia64/linux.h (ENDFILE_SPEC): Don't add crtfastmath.o for -shared. --- gcc/config/ia64/linux.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/config/ia64/linux.h b/gcc/config/ia64/linux.h index 93510098ccc..4106737cb23 100644 --- a/gcc/config/ia64/linux.h +++ b/gcc/config/ia64/linux.h @@ -49,7 +49,7 @@ do { \ /* Similar to standard Linux, but adding -ffast-math support. */ #undef ENDFILE_SPEC #define ENDFILE_SPEC \ - "%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s} \ + "%{Ofast|ffast-math|funsafe-math-optimizations:%{!shared:crtfastmath.o%s}} \ %{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s" /* Define this for shared library support because it isn't in the main -- 2.35.3