]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/testsuite/gcc.dg/tree-ssa/pr71347.c
Fix profile update in tree_transform_and_unroll_loop
[thirdparty/gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / pr71347.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-optimized -fpredictive-commoning" } */
3
4 double in;
5 extern void Write (double);
6 void foo (void)
7 {
8 static double X[9];
9 int i;
10 X[1] = in * in;
11 for (i = 2; i <= 8; i++)
12 X[i] = X[i - 1] * X[1];
13 Write (X[5]);
14 }
15
16 /* Load of X[i - i] can be omitted by reusing X[i] in previous iteration. */
17 /* { dg-final { scan-tree-dump-not ".* = MEM.*;" "optimized" } } */