[PATCH, rs6000] ELFv2 ABI 1/8: Add options and infrastructure

Joseph S. Myers joseph@codesourcery.com
Tue Nov 12 23:47:00 GMT 2013


On Tue, 12 Nov 2013, Ulrich Weigand wrote:

> > I didn't see anything in this series regarding the ELFv1 ABI feature 
> > that's the greatest pain from a glibc perspective - the use of IBM long 
> > double.  The idea of moving to IEEE binary128 was floated in 
> > <https://sourceware.org/ml/libc-alpha/2013-10/msg00597.html> - have you 
> > abandoned that idea?  Obviously it would be bad to end up having two 
> > variants of ELFv2 with different long double formats.  (Though we can't 
> > actually eliminate IBM long double support from glibc unless all ABIs with 
> > it are obsoleted, including 32-bit.)  If you do move to IEEE binary128 I'd 
> > advise simply using soft-fp in libgcc for the functions that normally go 
> > in libgcc, given that 64-bit implies hard float, rather than the 
> > arrangements some targets have of putting their binary128 functions in 
> > glibc.
> 
> Well, we had been thinking about this, but right now it seems we're not
> going to be able to make that change throughout the ecosystem quickly
> enough, so for now, it'll probably have to remain the IBM long double.

What's the difficulty?  GCC is supposed to support IEEE binary128 long 
double already for Power, and IEEE binary128 works much better than IBM 
long double in glibc.  The time a new ABI is being introduced is the time 
to get things right rather than suggesting yet another ABI change in 
future.

> > > Therefore, it is introduces via a new pair of options
> > >    -mabi=elfv1 / -mabi=elfv2
> > > where -mabi=elfv1 select the current Linux ABI, and -mabi=elfv2
> > > selects the new one.
> > 
> > New command-line options need invoke.texi documentation.
> 
> As mentioned above, it's probably best to mark it undocumented.

No, even always-warning options like -mabi=ibmlongdouble are documented.

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Gcc-patches mailing list