1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-reassoc1" } */
3
main(int a,int b,int c,int d,int e,int f,int g,int h)4 int main(int a, int b, int c, int d, int e, int f, int g, int h)
5 {
6 /* Should be transformed into e = 20 */
7 int i = (a + 9) + (c + 8);
8 int j = (-c + 1) + (-a + 2);
9
10 e = i + j;
11 return e;
12 }
13
14 /* We can always re-associate to a final constant but the current
15 implementation does not allow easy roll-back without IL changes. */
16
17 /* { dg-final { scan-tree-dump-times "= 20" 1 "reassoc1" { xfail *-*-* } } } */
18