131
|
1 /* PR rtl-optimization/81019 */
|
|
2 /* { dg-do run } */
|
|
3 /* { dg-options "-O -fno-tree-ccp" } */
|
|
4
|
|
5 unsigned long long __attribute__((noinline, noclone))
|
|
6 foo (unsigned char a, unsigned short b, unsigned c, unsigned long long d,
|
|
7 unsigned char e, unsigned short f, unsigned g, unsigned long long h)
|
|
8 {
|
|
9 g = e;
|
|
10 c &= 0 < d;
|
|
11 b *= d;
|
|
12 g ^= -1;
|
|
13 g &= 1;
|
|
14 c |= 1;
|
|
15 a -= 0 < g;
|
|
16 g >>= 1;
|
|
17 f = b | (f >> b);
|
|
18 return a + c + d + f + g + h;
|
|
19 }
|
|
20
|
|
21 int
|
|
22 main (void)
|
|
23 {
|
|
24 if (foo (0, 0, 0, 0, 0, 0, 0, 0) != 0x100)
|
|
25 __builtin_abort ();
|
|
26 return 0;
|
|
27 }
|