aboutsummaryrefslogtreecommitdiff
path: root/gcc/unroll.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2002-07-20 00:31:15 +0000
committerAlan Modra <amodra@gcc.gnu.org>2002-07-20 10:01:15 +0930
commit8b583747adc3a9e670930481b828550fdcc18860 (patch)
tree94eedd6796f702b3e750b75344a9180da4a76c79 /gcc/unroll.c
parent0dc36574afc7846defc8751c3e19e4c994e0de4a (diff)
downloadgcc-8b583747adc3a9e670930481b828550fdcc18860.zip
gcc-8b583747adc3a9e670930481b828550fdcc18860.tar.gz
gcc-8b583747adc3a9e670930481b828550fdcc18860.tar.bz2
re PR rtl-optimization/7130 (miscompiled code for gcc-3.1 on powerpc-unknown-linux-gnu with -funroll-all-loops)
PR optimization/7130 * loop.h (struct loop_info): Add "preconditioned". * unroll.c (unroll_loop): Set it. * doloop.c (doloop_modify_runtime): Correct count for unrolled loops. From-SVN: r55598
Diffstat (limited to 'gcc/unroll.c')
-rw-r--r--gcc/unroll.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/unroll.c b/gcc/unroll.c
index e0b0d36..c8201ed 100644
--- a/gcc/unroll.c
+++ b/gcc/unroll.c
@@ -1135,6 +1135,9 @@ unroll_loop (loop, insn_count, strength_reduce_p)
/* Keep track of the unroll factor for the loop. */
loop_info->unroll_number = unroll_number;
+ /* And whether the loop has been preconditioned. */
+ loop_info->preconditioned = loop_preconditioned;
+
/* For each biv and giv, determine whether it can be safely split into
a different variable for each unrolled copy of the loop body.
We precalculate and save this info here, since computing it is