This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: ia64 XFmode patch rides again (need ia64-linux testing)
Jan Hubicka <hubicka@ucw.cz> writes:
>> I am confused. I thought __float128 and "long double" were both going
>> to be 80-bit IEEE extended in an 128-bit field on x86-64. What you
>> are saying now makes it sound like __float128 is a different type
>> altogether (IEEE quad?). If this is so, you'll need to mention TFmode
>
> __float128 is supposed to be IEEE quad. long double is supposed to be
> 80-bit IEEE in 128-bit.
Ah, okay, then you will need both XFmode and TFmode in i386-modes.def.
You can probably copy much of ia64-modes.def; just get rid of the HPUX
specific gunk.
>> Do you have the most recent version of genmodes.c?
>
> So the sollution really is easy :) I didn't updated since yesterday.
Odd, that code went in on Friday with the ia64 backend changes. Check
for sticky tags.
> So the right sollution would be to provide both *xf *tf with the same
> semnatics + TFmode libcalls under new names...
Yes, I think so. And, as Richard points out, the *xf symbols should
be versioned GCC_3.4; come to think of it, the same is true on ia64,
but I don't know how to do that.
>> You'll have to rename all the TFmode libcalls to some other
>> convention. For IA64, it seems sensible to make the HP-UX
>> convention be used everywhere. Does AMD maybe have a document
>> defining software float library routines?
>
> No, but we can write one. Any particular prefferences in
> convention? Or taking the HP-UX names you do use would be OK?
I have no preference at present. You can look in
ia64.c:ia64_hpux_init_libfuncs (IIRC) for the HP-UX names. Note that
GCC's floating point emulation library does not support IEEE quad, so
the question is moot until that gets resolved. (Or does x86-64
support this in hardware?)
zw