On 17/08/2022 09:35, Christophe Lyon via Gcc-patches wrote:
On arm, the --with-float= configure option is used to define include
files search path (among other things).  However, when targeting
arm-linux-gnueabihf, one would expect to automatically default to the
hard-float ABI, but this is not the case. As a consequence, GCC
bootstrap fails on an arm-linux-gnueabihf target if --with-float=hard
is not used.

This patch checks if the target name ends with 'hf' and defines
with_float to hard if not already defined.  This is achieved in
gcc/config.gcc, just before selecting the default CPU depending on the
$with_float value.

2022-08-17  Christophe Lyon  <christophe.l...@arm.com>

        gcc/
        * config.gcc (arm): Define with_float to hard if target name ends
        with 'hf'.
---
  gcc/config.gcc | 7 +++++++
  1 file changed, 7 insertions(+)

diff --git a/gcc/config.gcc b/gcc/config.gcc
index 4e3b15bb5e9..02f58970db0 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1314,6 +1314,13 @@ arm*-*-linux-* | arm*-*-uclinuxfdpiceabi)
            tm_file="$tm_file arm/uclinuxfdpiceabi.h"
            ;;
        esac
+       # Define with_float to "hard" if not already defined and
+       # target name ends with "hf"
+       case $target:$with_float in
+       arm*-*-*hf:)
+           with_float=hard
+           ;;
+       esac
        # Generation of floating-point instructions requires at least ARMv5te.
        if [ "$with_float" = "hard" -o "$with_float" = "softfp" ] ; then
            target_cpu_cname="arm10e"

OK.

R.

Reply via email to