PR tree-optimization/81303
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / ssa-fre-43.c
blob89cddcd7486e3450085ae50734cc71f5d0c5670d
1 /* PR tree-optimization/64193 */
2 /* { dg-do compile } */
3 /* { dg-options "-O -fdump-tree-fre1" } */
5 double T,T2,E1[5];
6 int J;
8 void
9 PA(double E[])
11 J = 0;
13 L10:
14 E[1] = ( E[1] + E[2] + E[3] - E[4]) * T;
15 E[2] = ( E[1] + E[2] - E[3] + E[4]) * T;
16 E[3] = ( E[1] - E[2] + E[3] + E[4]) * T;
17 E[4] = (-E[1] + E[2] + E[3] + E[4]) / T2;
18 J += 1;
20 if (J < 6)
21 goto L10;
24 /* We should remove 15 dead loads and some related stmts, fully propagating
25 their replacements with exactly 4 loads and 4 stores from/to E remaining. */
27 /* { dg-final { scan-tree-dump-times "MEM" 8 "fre1" } } */