| /* { 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" } } */ |