Re: libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Joseph Myers
On Mon, 4 Oct 2021, Segher Boessenkool wrote: > Some current Power GCC targets support neither. Some support only > double-double. Making IEEE QP float work on those (that is, those that > are < power8) will require some work still: it should use libquadmath or > similar, but that needs to be pu

Re: libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Segher Boessenkool
Hi! On Mon, Oct 04, 2021 at 04:14:10PM +0200, Jakub Jelinek wrote: > Based on some IRC discussion, yet another option would be bump libgfortran > SONAME (on all arches), make real(kind=16) on powerpc64le-linux mean > always IEEE quad (starting with GCC 12) and if wanted add support for > real(kind

Re: libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Joseph Myers
On Mon, 4 Oct 2021, Jakub Jelinek via Gcc wrote: > One problem with that is that I think IEEE quad long double support relies > on glibc 2.32 or later, so not sure what exactly would be done if gcc is > built against older glibc when it needs to call libm routines. Perhaps > convert to __ibm128,

Re: libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Jakub Jelinek via Fortran
On Mon, Oct 04, 2021 at 12:07:54PM +0200, Jakub Jelinek via Gcc wrote: > Or the last option would be to try to make libgfortran.so.5 ABI compatible > with both choices on powerpc64le-linux. From quick skimming of libgfortran, > we have lots of generated functions, which use HAVE_GFC_REAL_16 and >

Re: libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Jakub Jelinek via Fortran
On Mon, Oct 04, 2021 at 01:36:56PM +0200, Jakub Jelinek via Gcc wrote: > On Mon, Oct 04, 2021 at 01:24:05PM +0200, Richard Biener wrote: > > > Your thoughts on this? > > > > How does glibc deal with this? There's a load of long double ABI in there. > > I don't know, CCing Florian; all I can see

Re: libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Jakub Jelinek via Fortran
On Mon, Oct 04, 2021 at 01:24:05PM +0200, Richard Biener wrote: > > Your thoughts on this? > > How does glibc deal with this? There's a load of long double ABI in there. I don't know, CCing Florian; all I can see is that starting with glibc 2.26 in addition to sin{f,,l} there is also sinf128, bu

Re: libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Richard Biener via Fortran
On Mon, Oct 4, 2021 at 12:08 PM Jakub Jelinek via Fortran wrote: > > Hi! > > On powerpc64le-linux target, one can select between two incompatible > long double formats (both of them are 16-byte), __ibm128 which is > a sum of two doubles, and __float128 (note, not implemented through > libquadmath)

libgfortran.so SONAME and powerpc64le-linux ABI changes

2021-10-04 Thread Jakub Jelinek via Fortran
Hi! On powerpc64le-linux target, one can select between two incompatible long double formats (both of them are 16-byte), __ibm128 which is a sum of two doubles, and __float128 (note, not implemented through libquadmath), which is IEEE754 quad format. The default for long double can be selected wi