This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[arm] PR target/83105: Minor change of default CPU for arm-linux-gnueabi
- From: "Richard Earnshaw (lists)" <Richard dot Earnshaw at arm dot com>
- To: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 20 Dec 2017 10:31:32 +0000
- Subject: [arm] PR target/83105: Minor change of default CPU for arm-linux-gnueabi
- Authentication-results: sourceware.org; auth=none
When GCC for ARM/linux is configured with --with-float=hard, or
--with-float=softfp the compiler will now die when trying to build the
support libraries because the baseline architecture is too old to
support VFP (older versions of GCC just emitted the VFP instructions
anyway, even though they wouldn't run on that version of the
architecture; but we're now more prickly about it).
This patch fixed the problem by raising the default architecture
(actually the default CPU) to ARMv5te (ARM10e) when we need to generate
HW floating-point code.
PR target/83105
* config.gcc (arm*-*-linux*): When configured with --with-float=hard
or --with-float=softfp, set the default CPU to arm10e.[arm] PR
target/83105: Minor change of default CPU for arm-linux-gnueabi
When GCC for ARM/linux is configured with --with-float=hard, or
--with-float=softfp the compiler will now die when trying to build the
support libraries because the baseline architecture is too old to
support VFP (older versions of GCC just emitted the VFP instructions
anyway, even though they wouldn't run on that version of the
architecture; but we're now more prickly about it).
This patch fixed the problem by raising the default architecture
(actually the default CPU) to ARMv5te (ARM10e) when we need to generate
HW floating-point code.
PR target/83105
* config.gcc (arm*-*-linux*): When configured with --with-float=hard
or --with-float=softfp, set the default CPU to arm10e.
diff --git a/gcc/config.gcc b/gcc/config.gcc
index e208d00bd5bf582f8179d045ae27f452c57eb623..c904f794d77bd30151ca82a076af471b2d211b71 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1132,7 +1132,12 @@ arm*-*-linux-*) # ARM GNU/Linux with ELF
esac
tmake_file="${tmake_file} arm/t-arm arm/t-arm-elf arm/t-bpabi arm/t-linux-eabi"
tm_file="$tm_file arm/bpabi.h arm/linux-eabi.h arm/aout.h vxworks-dummy.h arm/arm.h"
- target_cpu_cname="arm10tdmi"
+ # Generation of floating-point instructions requires at least ARMv5te.
+ if [ "$with_float" = "hard" -o "$with_float" = "softfp" ] ; then
+ target_cpu_cname="arm10e"
+ else
+ target_cpu_cname="arm10tdmi"
+ fi
# Define multilib configuration for arm-linux-androideabi.
case ${target} in
*-androideabi)