25 lines
474 B
C
25 lines
474 B
C
/* { dg-do compile } */
|
|
/* { dg-options "-fdump-tree-gimple" } */
|
|
|
|
struct f
|
|
{
|
|
struct {
|
|
int i;
|
|
} ff[10];
|
|
};
|
|
|
|
struct f g;
|
|
int ffff(int i)
|
|
{
|
|
int t1 = 0;
|
|
int i1 = g.ff[t1].i;
|
|
int i2 = g.ff[i].i;
|
|
return i1 + i2;
|
|
}
|
|
|
|
/* We should not use extra temporaries apart from for i1 + i2. */
|
|
|
|
/* { dg-final { scan-tree-dump-times "int" 5 "gimple" } } */
|
|
/* { dg-final { scan-tree-dump-times "int D\\\." 1 "gimple" } } */
|
|
/* { dg-final { cleanup-tree-dump "gimple" } } */
|