Re: arm/neon LTO-related FTBS

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

 



On Tue, Aug 4, 2020 at 8:14 AM Dominique Martinet
<asmadeus@xxxxxxxxxxxxx> wrote:
>
> Hi,
>
> this is more of a head's up than a bug per se (well, I'm actually not
> sure if it's a bug, is it?), but I've had a package fail to build due to
> LTO and neon optimisations:
> https://kojipkgs.fedoraproject.org//work/tasks/2576/48362576/build.log
>
> Basically what they do is compile different .a with different level of
> optimisations as required, and then link them into the final program
> without any optim flag and intend to have it just use the optimised
> functions as is.
>
> Without LTO, this just embeds the code so the rest of the program was
> built naively and it used to work, but with LTO the compiler tries to
> use neon optimisations at some point apparently and the link fails :
>
> /usr/lib/gcc/armv7hl-redhat-linux-gnueabi/10/include/arm_neon.h:10426:22: fatal error: You must enable NEON instructions (e.g. ‘-mfloat-abi=softfp’ ‘-mfpu=neon’) to use these intrinsics.
>
>
> The "fix" here is simple and upstream is reactive so I'll just resubmit
> the package with -mfpu=neon appended to linker args as well, but this
> might come bite other projects as well.

NO! That is not the fix. We explicitly don't build with NEON on armhfp
because there are ARMv7 processors that don't have NEON and that would
then crash on those devices.

I believe this is actually a bug in the waypipe project where it's
trying to optimise for the processor is compiling on, not what the
tool chain is telling it to because the the final binary may not run
on the build processor.

On aarch64/ARMv8 it can be assumed there's NEON because it's a
required part of the standard, but it's not a requirement for ARMv7
processors so the software should do run time detection / fast path
code to optimise if it detects NEON at runtime NOT compile time.

So the bug report upstream needs to be about honoring what the
compiler flags is asking it to do not what it thinks it should do.

> I don't think gcc can intuite this so it's probably not a bug though
> (hence I'm not planning on opening a bug), but it is a regression of
> sort...

You're wrong.
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux