OSDN Git Service

85b96b190e211cdc23cae095f5f1c577b5ab9869
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / tree-ssa / pta-ptrarith-2.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fno-tree-ccp -fdump-tree-ealias" } */
3
4 extern void abort (void);
5 struct X {
6   int *p;
7   int *q;
8   int *r;
9 };
10 int __attribute__((noinline))
11 foo(int i, int j, int k, int off)
12 {
13   struct X x;
14   int **p, *q;
15   x.p = &i;
16   x.q = &j;
17   x.r = &k;
18   p = &x.q;
19   p -= 1;
20   /* *p points to { i } */
21   q = *p;
22   return *q;
23 }
24
25 /* { dg-final { scan-tree-dump "q_., points-to vars: { i }" "ealias" } } */
26 /* { dg-final { cleanup-tree-dump "ealias" } } */