This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] bring netbsd/arm support up to speed. eabi, etc.


On 24/10/2018 12:29, coypu@sdf.org wrote:

>>> +/* Default to full VFP if -mhard-float is specified.  */
>>> +#undef SUBTARGET_ASM_FLOAT_SPEC
>>> +#define SUBTARGET_ASM_FLOAT_SPEC	\
>>> +  "%{mhard-float:%{!mfpu=*:-mfpu=vfp}}   \
>>> +   %{mfloat-abi=hard:%{!mfpu=*:-mfpu=vfp}}"
>>
>> Please rework this to use -mfpu=auto.  -mfpu=vfp is very rarely the
>> right setting to use.
> 
> This change seems scary. Going over my default CPUs, I guess the
> problematic one might cortex-a8.
> I'm worried it might have negative repercussions for VFPv3-d16.
> Is that a valid concern?
> I see generic-armv7-a is a more popular default CPU, but I am not sure
> from reading the code that it avoids this problem.

Well, auto should be the default anyway, unless overridden during configure.

You're right that cortex-a8 has Advanced SIMD enabled by default.  But
generic-armv7-a should be fine (the architecture there is armv7-a+fp and
+fp in this context means VFPv3-d16, which is exactly what you want in
this case).

For armv6 arm1176jzf-s is fine too, that enables FP automatically.  Only
armv4 from your current list is incompatible with FP (armv5t is as well,
but armv5te is fine).  ARMv8-a never has FP without SIMD so any CPU with
SIMD will be fine.

Note that -mfpu=vfp means VFPv2, so you really don't want that on ARMv7
or later devices as it will restrict the ISA unnecessarily.

R.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]