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: version typeinfo for 128bit types


On Tue, Apr 22, 2014 at 10:29:55PM +0200, Jakub Jelinek wrote:
> On Tue, Apr 22, 2014 at 04:26:23PM -0400, Michael Meissner wrote:
> > On Tue, Apr 22, 2014 at 10:06:19PM +0200, Marc Glisse wrote:
> > > Hello,
> > > 
> > > as written in the PR, my patch seems wrong for platforms like
> > > powerpc that already had the __float128 typeinfo for long double
> > > with a different version. The following patch regtested fine on
> > > x86_64, and a hackish cross-build shows that float128.ver is ignored
> > > on powerpc (good).
> > > 
> > > 2014-04-23  Marc Glisse  <marc.glisse@inria.fr>
> > > 
> > > 	PR libstdc++/43622
> > > 	* config/abi/pre/float128.ver: New file.
> > > 	* config/abi/pre/gnu.ver (CXXABI_1.3.9): Move __float128 typeinfo to
> > > 	the new file.
> > > 	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
> > > 	* configure.ac: Use float128.ver when relevant.
> > > 	* configure: Regenerate.
> > 
> > Note, I hope to restart work to add __float128 as IEEE 128-bit floating point
> > in the PowerPC shortly.  I had done about 1/2 of the work in a sandbox, and I
> > needed to put it aside to look at other issues, and it has bubbled up to be
> > high on my list of priorities.
> 
> But then the question is what letter to use for the mangling of it, when
> g is already used for the IBM "double double" long double on PowerPC.

Right now, I am adding __float128 as a completely separate type to be IEEE
128-bit floating point.  At the moment, it is just baby steps, since we need
the compiler to have some type, to get the library work started.  It would have
been nice if I had started the work early enough to go into the new little
endian ABI.

Ideally in the future we would make long double map to __float128, so I added
another type __ibm128 to give the IBM double double format.  I hadn't gotten to
the point of thinking about mangling.  I suspect we will need to add a way to
use something else if 'g' was already taken.

-- 
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meissner@linux.vnet.ibm.com, phone: +1 (978) 899-4797


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