PATCH: PR target/15383: __float128 function name is used for long double

Jim Wilson wilson@specifixinc.com
Wed May 19 23:30:00 GMT 2004


On Wed, 2004-05-19 at 13:00, H. J. Lu wrote:
> soft-fp in glibc doesn't have them. Are they used by gcc in TFmode on
> ia64? How do they work for HPUX?

I didn't check.  See
gcc/testsuite/gcc.c-torture/execute/ieee/fp-cmp-[48].c which use builtin
functions that required unordered checks.  These only test double, but
we should also have similar float and long double tests, and for IA-64,
the other long double (128-bit for linux, 80-bit for HPUX).  There may
also be some Fortran testcases, I didn't look.  It looks like the
builtin functions take any type, so just changing the types in the
testcase should work.  Just using __float128, without your patch, I get
calls to __unordtf2, along with the others like __eqtf2.

For HPUX, it appears that the support is already there.  The HPUX
_U_Qfcmp function has a bit for unordered and ia64_expand_compare has
code to use it for unordered compares.

Support for UNEQ etc is not there, but we can ignore those for now.  All
we need is for UNORD to work.

> Here is the updated patch.

Thanks.  This looks OK.

I note that the ia64_sysv4_init_libfuncs function doesn't have an
explanatory comment in front of it, but that is a nit.  Just add one
before you check in the patch please.
-- 
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com



More information about the Gcc-patches mailing list