Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gcc.dg/pr84614.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
1 /* PR target/84614 */ | |
2 /* { dg-do run { target int128 } } */ | |
3 /* { dg-options "-Og -fno-split-wide-types -fno-tree-coalesce-vars -g --param=max-combine-insns=3 -fcompare-debug" } */ | |
4 | |
5 unsigned __int128 a; | |
6 | |
7 unsigned __int128 | |
8 b (unsigned short c, unsigned int d) | |
9 { | |
10 unsigned long long e; | |
11 __builtin_sub_overflow (0, d, &e); | |
12 e >>= c; | |
13 c ^= 65535; | |
14 d ^= 824; | |
15 return c + a + d + e; | |
16 } | |
17 | |
18 int | |
19 main () | |
20 { | |
21 unsigned __int128 x = b (0, 9); | |
22 if (__SIZEOF_INT__ * __CHAR_BIT__ == 32 | |
23 && __SIZEOF_LONG_LONG__ * __CHAR_BIT__ == 64 | |
24 && __SIZEOF_INT128__ * __CHAR_BIT__ == 128 | |
25 && x != (((unsigned __int128) 1 << 64) | 0x10327)) | |
26 __builtin_abort (); | |
27 return 0; | |
28 } |