24 lines
408 B
C
24 lines
408 B
C
/* { dg-do compile } */
|
|
/* { dg-options "-O1 -fdump-tree-optimized" } */
|
|
|
|
struct A
|
|
{
|
|
int a,b;
|
|
};
|
|
|
|
int foo (int x, int y)
|
|
{
|
|
int i, j;
|
|
struct A a,b;
|
|
|
|
a.a = x;
|
|
b.b = y;
|
|
j = a.a;
|
|
i = b.b;
|
|
return i + j;
|
|
}
|
|
|
|
/* The addition should be optimized into 'y+x'. */
|
|
/* { dg-final { scan-tree-dump-times "\[xy\]_..D. \\+ \[xy]_..D." 1 "optimized"} } */
|
|
/* { dg-final { cleanup-tree-dump "optimized" } } */
|