annotate gcc/testsuite/gcc.dg/torture/pr87266-4.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 /* { dg-do compile } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 /* { dg-additional-options "-fno-tree-dominator-opts -fno-tree-forwprop" } */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4 unsigned long int
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 re (long int j9)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 if (j9 == 0)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 return 1;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 return j9;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13 void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 zq (int bt, int yy)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 int p3 = 0, go = 4, ez = go;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 while (go != 0)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 if (ez + !!bt - re (bt) != 0 && go != 0)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22 if (yy != 0)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
23 p3 = yy;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
24 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
25 else
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
26 return;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
27
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
28 go = 2;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
29 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
30 }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
31
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
32 void
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
33 my (unsigned long int n6, int bt, int yy)
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
34 {
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
35 zq (bt, yy);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
36 n6 = n6 == bt;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
37 zq (bt, yy);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
38 }