annotate gcc/testsuite/gcc.dg/pr85529.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 /* PR tree-optimization/85529 */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 /* { dg-do run } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3 /* { dg-options "-O2 -fno-ssa-phiopt" } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 __attribute__((noinline, noclone)) int
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 foo (int x)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 x &= 31;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 x -= 25;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 x *= 2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 if (x < 0)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 int y = x >> 2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 if (x >= y)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 return 0;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 int
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 main ()
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22 int i;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
23 for (i = 0; i < 63; i++)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
24 if (foo (i) != 1)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
25 __builtin_abort ();
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
26 return 0;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
27 }