26 lines
424 B
C
26 lines
424 B
C
|
/* PR tree-optimization/36504 */
|
||
|
/* { dg-do compile } */
|
||
|
/* { dg-options "-O3 -fprefetch-loop-arrays -w" } */
|
||
|
|
||
|
struct A { struct { int a; } b[8]; };
|
||
|
struct B { int c; int d; };
|
||
|
struct C { struct B d; };
|
||
|
|
||
|
void bar (struct C *, int);
|
||
|
|
||
|
struct B
|
||
|
foo (struct C *p, struct A *e, int b)
|
||
|
{
|
||
|
struct B q;
|
||
|
bar (p, e->b[b].a);
|
||
|
return q;
|
||
|
}
|
||
|
|
||
|
void
|
||
|
baz (int b, struct A *e)
|
||
|
{
|
||
|
struct C p;
|
||
|
for (; b; ++b)
|
||
|
p.d = foo (&p, e, b);
|
||
|
}
|