[Buildroot] [PATCH] configs: nitrogen*: enable NEON support

Gary Bisson gary.bisson at boundarydevices.com
Fri Sep 16 16:44:47 UTC 2016


Hi Thomas,

On Fri, Sep 16, 2016 at 6:26 PM, Thomas Petazzoni
<thomas.petazzoni at free-electrons.com> wrote:
> Hello,
>
> On Fri, 16 Sep 2016 16:20:42 +0200, Gary Bisson wrote:
>
>> Because the first two configurations are for i.MX6 (ARM Cortex-A9)
>> whereas the last one is i.MX7 (ARM Cortex-A7).
>>
>> So relying on Config.in.arm, the Cortex-A9 doesn't have VFPv4:
>> https://git.buildroot.net/buildroot/tree/arch/Config.in.arm#n125
>> https://git.buildroot.net/buildroot/tree/arch/Config.in.arm#n141
>
> OK, then you should be using the VFPv3 instead of the NEON for FPU.
> Indeed:
>
> """
>      If the selected floating-point hardware includes the NEON extension
>      (e.g.  '-mfpu'='neon'), note that floating-point operations are not
>      generated by GCC's auto-vectorization pass unless
>      '-funsafe-math-optimizations' is also specified.  This is because
>      NEON hardware does not fully implement the IEEE 754 standard for
>      floating-point arithmetic (in particular denormal values are
>      treated as zero), so the use of NEON instructions may lead to a
>      loss of precision.
> """

Ok, didn't know that. I'll submit a v2 with BR2_ARM_FPU_VFPV3 instead.

Maybe the alterasoc configs should be changed as well?
https://git.buildroot.net/buildroot/tree/configs/altera_socdk_defconfig#n6
https://git.buildroot.net/buildroot/tree/configs/altera_sockit_defconfig#n6

Regards,
Gary



More information about the buildroot mailing list