111
|
1 /* PR tree-optimization/36504 */
|
|
2 /* { dg-do compile } */
|
|
3 /* { dg-options "-O3 -fprefetch-loop-arrays -w" } */
|
|
4 /* { dg-additional-options "-march=i686 -msse" { target { { i?86-*-* x86_64-*-* } && ia32 } } } */
|
|
5
|
|
6 struct A { struct { int a; } b[8]; };
|
|
7 struct B { int c; int d; };
|
|
8 struct C { struct B d; };
|
|
9
|
|
10 void bar (struct C *, int);
|
|
11
|
|
12 struct B
|
|
13 foo (struct C *p, struct A *e, int b)
|
|
14 {
|
|
15 struct B q;
|
|
16 bar (p, e->b[b].a);
|
|
17 return q;
|
|
18 }
|
|
19
|
|
20 void
|
|
21 baz (int b, struct A *e)
|
|
22 {
|
|
23 struct C p;
|
|
24 for (; b; ++b)
|
|
25 p.d = foo (&p, e, b);
|
|
26 }
|