diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/ipa/pr119318.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/ipa/pr119318.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/testsuite/gcc.dg/ipa/pr119318.c b/gcc/testsuite/gcc.dg/ipa/pr119318.c index f179aed..47698a5 100644 --- a/gcc/testsuite/gcc.dg/ipa/pr119318.c +++ b/gcc/testsuite/gcc.dg/ipa/pr119318.c @@ -30,8 +30,14 @@ int main () { W x = foo (0, (V) { 0, 5 }); - for (unsigned i = 0; i < sizeof(x)/sizeof(x[0]); i++) + for (unsigned i = 0; i < sizeof (x) / sizeof (x[0]); i++) +#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ && __SIZEOF_INT__ == 4 && __SIZEOF_INT128__ == 16 if (x[i] != (i ? 0 : 0x1900000000)) - __builtin_abort(); +#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ && __SIZEOF_INT__ == 4 && __SIZEOF_INT128__ == 16 + if (x[i] != (i ? 0 : ((__int128) 0x19) << 64)) +#else + if (0) +#endif + __builtin_abort (); return 0; } |