[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ARM32 configury changes, with no FPU as a default





On 17/09/2021 11:23, Florian Weimer via Gcc wrote:
* Matthias Klose:

Starting with GCC 8, the configury allows to encode extra features into the
architecture string. Debian and Ubuntu's armhf (hard float) architecture is
configured with

   --with-arch=armv7-a --with-fpu=vfpv3-d16

and now should be configured with

   --with-arch=armv7-a+fp

The --with-fpu configure option is deprecated.  The problem with this approach
is that there is no default for the fpu setting, while old compilers silently
pick up the -mfpu from the configured compiler.

FWIW, Fedora uses:

         --with-tune=generic-armv7-a --with-arch=armv7-a \
	--with-float=hard --with-fpu=vfpv3-d16 --with-abi=aapcs-linux \

Not sure how it is impacted by this change.

This breaks software which explicitly configures things like
-march=armv7-a, or where the architecture string is embedded in the
source as an attribute.  So going from one place in the compiler about
configuring the ABI for a distro arch, this config now moves to some
dozen places in different packages.  Not the thing I would expect.

I don't know if we have seen such problems in Fedora.  I don't remember
any reports.


That's still using the now-deprecated --with-fpu option. I want to remove that from GCC eventually in favour of the new way of adding the FP configuration as part of the architecture. Recent versions of the Arm architecture do not document separate FPU versions, but just add features to the main architecture, so we need to move away from the old approach.

R.

Thanks,
Florian



Reply to: