From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1666) id C7F36385482C; Fri, 13 Jan 2023 11:14:47 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C7F36385482C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1673608487; bh=lZPT9YlYXRoNtJwsgE8Yo7ZNkPbLxHG6yn7TfJXMnt0=; h=From:To:Subject:Date:From; b=AE0jmyJJMOGOhOmD10NReCsr8JDuGx7+wvKIlrXeD/um+vdaE10L2/13QvJGQqf4G SwoZnOOwAVlWFxC0mrFz7yRaSjgJQlWr4fD/CeYhYPw/OQzzlsd4GvTcb2AJ5Y00u2 tZoib/NbQM6NDHvumH8xtCBMw9SF3U2wOW95xeNw= MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Richard Biener To: gcc-cvs@gcc.gnu.org Subject: [gcc r13-5141] arm: Don't add crtfastmath.o for -shared X-Act-Checkin: gcc X-Git-Author: Richard Biener X-Git-Refname: refs/heads/master X-Git-Oldrev: 0bf7131e539de4ca66b3c0eb72aa0afbd8f006dc X-Git-Newrev: 426a9f5570d74040176f81e7cf6806b36ebc907f Message-Id: <20230113111447.C7F36385482C@sourceware.org> Date: Fri, 13 Jan 2023 11:14:47 +0000 (GMT) List-Id: https://gcc.gnu.org/g:426a9f5570d74040176f81e7cf6806b36ebc907f commit r13-5141-g426a9f5570d74040176f81e7cf6806b36ebc907f Author: Richard Biener Date: Fri Jan 13 08:51:10 2023 +0100 arm: Don't add crtfastmath.o for -shared Don't add crtfastmath.o for -shared to avoid altering the FP environment when loading a shared library. PR target/55522 * config/arm/linux-eabi.h (ENDFILE_SPEC): Don't add crtfastmath.o for -shared. * config/arm/unknown-elf.h (STARTFILE_SPEC): Likewise. Diff: --- gcc/config/arm/linux-eabi.h | 2 +- gcc/config/arm/unknown-elf.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h index 57f830f0176..a119875599d 100644 --- a/gcc/config/arm/linux-eabi.h +++ b/gcc/config/arm/linux-eabi.h @@ -121,7 +121,7 @@ #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}} " \ LINUX_OR_ANDROID_LD (GNU_USER_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC) /* Use the default LIBGCC_SPEC, not the version in linux-elf.h, as we diff --git a/gcc/config/arm/unknown-elf.h b/gcc/config/arm/unknown-elf.h index 464d38b6cc6..397ac3f68b9 100644 --- a/gcc/config/arm/unknown-elf.h +++ b/gcc/config/arm/unknown-elf.h @@ -33,7 +33,7 @@ #undef STARTFILE_SPEC #define STARTFILE_SPEC \ - "%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s} " \ + "%{Ofast|ffast-math|funsafe-math-optimizations:%{!shared:crtfastmath.o%s}} " \ UNKNOWN_ELF_STARTFILE_SPEC #define UNKNOWN_ELF_ENDFILE_SPEC "crtend%O%s crtn%O%s"