/* { dg-do compile } */ | |
/* { dg-options "-O1 -fdump-tree-optimized" } */ | |
/* LLVM LOCAL test not applicable */ | |
/* { dg-require-fdump "" } */ | |
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\] \\+ \[xy]" 1 "optimized"} } */ | |
/* { dg-final { cleanup-tree-dump "optimized" } } */ |