145
|
1 /* PR rtl-optimization/89435 */
|
|
2 /* { dg-do run } */
|
|
3 /* { dg-options "-O1 -fno-forward-propagate -fno-tree-forwprop -fno-tree-ccp" } */
|
|
4
|
|
5 unsigned short a;
|
|
6 unsigned int b, c, d, e, f;
|
|
7
|
|
8 int
|
|
9 main ()
|
|
10 {
|
|
11 #if __CHAR_BIT__ == 8 && __SIZEOF_INT__ == 4
|
|
12 unsigned char g = e = __builtin_mul_overflow_p (5, 542624702, 0);
|
|
13 d = __builtin_bswap64 (a);
|
|
14 b = __builtin_sub_overflow ((unsigned char) -e, (unsigned int) d, &g);
|
|
15 e = __builtin_mul_overflow (b, c, &a);
|
|
16 f = g + e;
|
|
17 if (f != 0xff)
|
|
18 __builtin_abort ();
|
|
19 #endif
|
|
20 return 0;
|
|
21 }
|