re PR tree-optimization/33291 (a+=2; a+=2 not simplified to a+=4; with -O3 ...
[gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / 20040305-1.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-cddce -fdump-tree-forwprop1-details" } */
3
4 int abarney[2];
5 int afred[1];
6
7 void foo(int edx, int eax)
8 {
9 if (eax == 100)
10 {
11 if (edx == 1)
12 {
13 abarney[0] = 5;
14 abarney[1] = 6;
15 }
16 }
17 if (eax == 100)
18 {
19 if (-- edx == 0)
20 afred[0] = 2;
21 }
22 }
23
24
25 /* Verify that we did a forward propagation. */
26 /* { dg-final { scan-tree-dump-times "Replaced" 1 "forwprop1"} } */
27 /* { dg-final { cleanup-tree-dump "forwprop1" } } */
28
29 /* After cddce we should have two IF statements remaining as the other
30 two tests can be threaded. */
31 /* { dg-final { scan-tree-dump-times "if " 2 "cddce"} } */
32 /* { dg-final { cleanup-tree-dump "cddce" } } */