summaryrefslogtreecommitdiff
path: root/gcc/unroll.c
diff options
context:
space:
mode:
authorsirl <sirl@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-10 19:04:09 +0000
committersirl <sirl@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-10 19:04:09 +0000
commitd75b056ca7277a27a3ddc99820c276301c7096cf (patch)
tree8802fdbc10e8f5ce86edbd2d185a0f55112c844c /gcc/unroll.c
parent51cd1fdd16f910f866929c9f9f338aa10e0cc7ca (diff)
downloadgcc-d75b056ca7277a27a3ddc99820c276301c7096cf.tar.gz
2001-10-10 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
PR c++/4512 * unroll.c (loop_iterations): Ignore insns generated by loop unrolling. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46153 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/unroll.c')
-rw-r--r--gcc/unroll.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/unroll.c b/gcc/unroll.c
index a2af2137f05..99f56fb0d71 100644
--- a/gcc/unroll.c
+++ b/gcc/unroll.c
@@ -3527,6 +3527,11 @@ loop_iterations (loop)
do
{
+ /* Previous unrolling may have generated new insns not covered
+ by the uid_luid array. */
+ if (INSN_UID (temp) >= max_uid_for_loop)
+ continue;
+
if (GET_CODE (temp) == JUMP_INSN
&& INSN_LUID (JUMP_LABEL (temp)) > INSN_LUID (loop->top)
&& INSN_LUID (JUMP_LABEL (temp)) < INSN_LUID (loop->cont))