annotate gcc/testsuite/gcc.dg/tree-ssa/vrp25.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* { dg-do compile } */
kono
parents:
diff changeset
2 /* { dg-options "-O2 -fno-tree-fre -fdump-tree-vrp1" } */
kono
parents:
diff changeset
3
kono
parents:
diff changeset
4 extern void abort ();
kono
parents:
diff changeset
5 extern void arf ();
kono
parents:
diff changeset
6 int tree_code_length[100];
kono
parents:
diff changeset
7
kono
parents:
diff changeset
8 void
kono
parents:
diff changeset
9 blah (int code1)
kono
parents:
diff changeset
10 {
kono
parents:
diff changeset
11 unsigned char D18670;
kono
parents:
diff changeset
12
kono
parents:
diff changeset
13 if (code1 != 53) goto L0; else goto L1;
kono
parents:
diff changeset
14
kono
parents:
diff changeset
15 L0:
kono
parents:
diff changeset
16 abort ();
kono
parents:
diff changeset
17
kono
parents:
diff changeset
18 L1:
kono
parents:
diff changeset
19 D18670 = tree_code_length[53];
kono
parents:
diff changeset
20 if (D18670 <= 1) goto L2; else goto L3;
kono
parents:
diff changeset
21
kono
parents:
diff changeset
22 L2:
kono
parents:
diff changeset
23 abort ();
kono
parents:
diff changeset
24
kono
parents:
diff changeset
25 L3:
kono
parents:
diff changeset
26 if (D18670 == 2) goto L4; else goto L5;
kono
parents:
diff changeset
27
kono
parents:
diff changeset
28 L4:
kono
parents:
diff changeset
29 abort ();
kono
parents:
diff changeset
30
kono
parents:
diff changeset
31 L5:
kono
parents:
diff changeset
32 arf ();
kono
parents:
diff changeset
33 if (code1 != 53) goto L6; else goto L7;
kono
parents:
diff changeset
34
kono
parents:
diff changeset
35 L6:
kono
parents:
diff changeset
36 abort ();
kono
parents:
diff changeset
37
kono
parents:
diff changeset
38 L7:
kono
parents:
diff changeset
39 if (D18670 <= 2) goto L8; else goto L9;
kono
parents:
diff changeset
40
kono
parents:
diff changeset
41 L8:
kono
parents:
diff changeset
42 abort ();
kono
parents:
diff changeset
43
kono
parents:
diff changeset
44 L9:
kono
parents:
diff changeset
45 return;
kono
parents:
diff changeset
46
kono
parents:
diff changeset
47 }
kono
parents:
diff changeset
48
kono
parents:
diff changeset
49 /* The second test of (code1 != 53) and the test (D18670 <= 2) are
kono
parents:
diff changeset
50 both totally subsumed by earlier tests and thus should be folded
kono
parents:
diff changeset
51 away using VRP. */
kono
parents:
diff changeset
52 /* { dg-final { scan-tree-dump-times "if" 3 "vrp1" } } */
kono
parents:
diff changeset
53