This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH], Add optional IEEE/IBM long double multilib support


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
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]