re PR tree-optimization/33593 (tree-outof-ssa moves sources of non-call exceptions...
[gcc.git] / gcc / testsuite / g++.dg / tree-ssa / pr19807.C
1 /* { dg-do compile } */
2 /* { dg-options "-O -fdump-tree-optimized" } */
3
4 int a[4];
5 int *x, *y, *z;
6
7 void foo(void)
8 {
9 x = &a[3] - 1;
10 y = &a[1] + 1;
11 z = 1 + &a[1];
12 }
13
14 void bar(int i)
15 {
16 x = &a[i] - 1;
17 y = &a[i] + 1;
18 z = 1 + &a[i];
19 }
20
21 /* { dg-final { scan-tree-dump-times "&a\\\[2\\\]" 3 "optimized" } } */
22 /* { dg-final { scan-tree-dump-times "&a\\\[.* \\+ -1\\\]" 1 "optimized" } } */
23 /* { dg-final { scan-tree-dump-times "&a\\\[.* \\+ 1\\\]" 1 "optimized" } } */
24 /* { dg-final { cleanup-tree-dump "optimized" } } */