2013-05-06 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / slsr-4.c
blob413a1cc27abd5bb6759476d566c2b184f6494530
1 /* { dg-do compile } */
2 /* { dg-options "-O3 -fdump-tree-slsr -fdump-tree-optimized" } */
4 void foo (int);
6 int
7 f (int i)
9 int x, y;
11 x = i * 4;
12 y = x * 10;
13 foo (y);
15 i = i + 5;
16 x = i * 4;
17 y = x * 10;
18 foo (y);
20 i = i - 4;
21 x = i * 4;
22 y = x * 10;
23 foo (y);
26 /* { dg-final { scan-tree-dump-times "\\* 4" 1 "slsr" } } */
27 /* { dg-final { scan-tree-dump-times "\\* 10" 1 "slsr" } } */
28 /* { dg-final { scan-tree-dump-times "\\+ 20;" 1 "slsr" } } */
29 /* { dg-final { scan-tree-dump-times "\\+ 200" 1 "slsr" } } */
30 /* { dg-final { scan-tree-dump-times "\\- 16;" 1 "slsr" } } */
31 /* { dg-final { scan-tree-dump-times "\\- 160" 1 "slsr" } } */
32 /* { dg-final { scan-tree-dump-times "\\* 4" 1 "optimized" } } */
33 /* { dg-final { scan-tree-dump-times "\\* 10" 1 "optimized" } } */
34 /* { dg-final { scan-tree-dump-times "\\+ 200" 1 "optimized" } } */
35 /* { dg-final { scan-tree-dump-times "\\+ 40" 1 "optimized" } } */
36 /* { dg-final { cleanup-tree-dump "slsr" } } */
37 /* { dg-final { cleanup-tree-dump "optimized" } } */