Math changes in glibc 2.31

Andrew Pinski pinskia@gmail.com
Mon May 11 23:26:18 GMT 2020


On Mon, May 11, 2020 at 4:15 PM Damien Zammit <damien@zamaudio.com> wrote:
>
> On 11/5/20 9:05 pm, Florian Weimer wrote:
> > * Damien Zammit:
> >> I heard that binaries previously compiled with `-ffast-math
> >> -fno-finite-math-only` won't run on new systems.  Why did this have to
> >> change?  This is going to create havoc especially with audio packages
> >> that heavily optimise.
> >
> > What failures did you see?  It's hard to comment on rumors.
>
> Actually, it is the flag -ffinite-math-only and any other flags that imply it
> that causes symbols such as "expf_finite" to be created in binaries,
> but apparently the new glibc 2.31 does not define these symbols anymore.
>
> A workaround we found was that when using -ffast-math, we should also use -fno-finite-math-only,
> but that has other implications regarding NaN/Inf values and other vectorised instructions
> on arm for example.
>
> Are you aware of this and do you have a recommended solution?

So you have some .o or static libraries that are compiled with the old
headers from previous versions of glibc and then trying to link with
the latest version of glibc?
That is itself is not a supported use case IIRC for backwards
compability of glibc.

Thanks,
Andrew Pinski


More information about the Libc-alpha mailing list