aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAlexandre Oliva <oliva@adacore.com>2023-04-14 23:53:36 -0300
committerAlexandre Oliva <oliva@gnu.org>2023-04-14 23:53:57 -0300
commit86b31d583a3657f11d930ff156c07b2e20ab05eb (patch)
treee639ca747cbc992740de04796fddc88a68f02f07 /gcc
parent9964df74a9e99e850bf9b0b6ff5c47133f846db8 (diff)
downloadgcc-86b31d583a3657f11d930ff156c07b2e20ab05eb.zip
gcc-86b31d583a3657f11d930ff156c07b2e20ab05eb.tar.gz
gcc-86b31d583a3657f11d930ff156c07b2e20ab05eb.tar.bz2
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.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/gcc.target/powerpc/pr99708.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/testsuite/gcc.target/powerpc/pr99708.c b/gcc/testsuite/gcc.target/powerpc/pr99708.c
index 02b40eb..c6aa051 100644
--- a/gcc/testsuite/gcc.target/powerpc/pr99708.c
+++ b/gcc/testsuite/gcc.target/powerpc/pr99708.c
@@ -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 } } */