On Fri, 5 Jan 2018, Jakub Jelinek wrote: > On Thu, Jan 04, 2018 at 06:05:55PM -0500, Michael Meissner wrote: > > This patch is the beginning step to switching the PowerPC long double > > support > > from IBM extended double to IEEE 128-bit floating point on PowerPC servers. > > It > > will be necessary to have this patch or a similar patch to allow the GLIBC > > team > > to begin their modifications in GLIBC 2.28, so that by the time GCC 9 comes > > out, we can decide to switch the default. It is likely, the default will > > only > > be switched on the 64-bit little endian PowerPC systems, when a distribution > > goes through a major level, such that they can contemplate major changes. > > When you're mentioning multilibs, does that mean that we'll have two ABI > incompatible libgcc.so.* libraries, two ABI incompatible libstdc++.so.* > libraries etc.? Just one or 2 libc.so.*/libm.so.*?
The existing GCC code tries to fix the libgcc function names so *tf* always means IBM long double and *kf* always means IEEE long double. As noted in my reply to this patch, I suspect it might fail to handle __div?c3, __mul?c3 and __powi?c2 (at least) properly to avoid two different libgcc ABIs there. I don't know the intent for libstdc++, libgfortran etc. - but it's been stated the intent is a single set of glibc libraries. (Of course a distribution probably has other libraries influenced by the long double format in some way.) -- Joseph S. Myers jos...@codesourcery.com