`-mfloat-abi=hard` should be a default flag for the `armv7a-none-eabihf` target
Closed this issue · 0 comments
chrisnc commented
The arm*v7r-none-eabihf
and thumb*-none-eabihf
targets both add -mfloat-abi=hard
to the default compiler flags, but armv7a-none-eabihf
does not. This results in needing to specify it manually for C libraries when using this target.
In GCC 10, -march=arvm7-a
by itself implied hardware floating-point support and the hardfloat ABI, but in 11 and later these need to be explicit for none
OS targets. cc-rs
already provides -mfpu=vfpv3-d16
to handle one part of this, but doesn't change the ABI. -linux-
targets still have the behavior of -march=armv7-a
implying the hf ABI, so only -none-eabihf
needs to be changed.