2017-12-05 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / pr68841.c
blob470048cc24f0d7150ed1e3141181bc1e8472ae12
1 /* { dg-do run } */
2 /* { dg-options "-Og -fif-conversion -flive-range-shrinkage -fpeel-loops -frerun-cse-after-loop" } */
4 static inline int
5 foo (int *x, int y)
7 int z = *x;
8 while (y > z)
9 z *= 2;
10 return z;
13 int
14 main ()
16 int i;
17 for (i = 1; i < 17; i++)
19 int j;
20 int k;
21 j = foo (&i, 7);
22 if (i >= 7)
23 k = i;
24 else if (i >= 4)
25 k = 8 + (i - 4) * 2;
26 else if (i == 3)
27 k = 12;
28 else
29 k = 8;
30 if (j != k)
31 __builtin_abort ();
33 return 0;