rs6000: don't expect __ibm128 with 64-bit long double [PR99708]

When long double is 64-bit wide, as on vxworks, the rs6000 backend
defines neither the __ibm128 type nor the __SIZEOF_IBM128__ macro, but
pr99708.c expected both to be always defined.  Adjust the test to
match the implementation.


Co-Authored-By: Kewen Lin <linkw@linux.ibm.com>

for  gcc/testsuite/ChangeLog

	PR target/99708
	* gcc.target/powerpc/pr99708.c: Accept lack of
	__SIZEOF_IBM128__ when long double is 64-bit wide.
This commit is contained in:
Alexandre Oliva 2023-04-14 23:53:36 -03:00 committed by Alexandre Oliva
parent 9964df74a9
commit 86b31d583a

View File

@ -14,9 +14,17 @@
int main (void)
{
if (__SIZEOF_FLOAT128__ != sizeof (__float128)
|| __SIZEOF_IBM128__ != sizeof (__ibm128))
/* FIXME: Once type __ibm128 gets supported with long-double-64,
we shouldn't need this conditional #ifdef and xfail. */
#ifdef __SIZEOF_IBM128__
|| __SIZEOF_IBM128__ != sizeof (__ibm128)
#else
|| 1
#endif
)
abort ();
return 0;
}
/* { dg-xfail-run-if "unsupported type __ibm128 with long-double-64" { longdouble64 } } */