From e10f3d36e5df9436d0627c424d8a4a6c194aede9 Mon Sep 17 00:00:00 2001 From: Franz Sirl Date: Wed, 10 Oct 2001 19:04:09 +0000 Subject: [PATCH] re PR c++/4512 (New ICE in loop_iterations at unroll.c:3510, regression vs. 3.0.1) 2001-10-10 Franz Sirl PR c++/4512 * unroll.c (loop_iterations): Ignore insns generated by loop unrolling. From-SVN: r46153 --- gcc/ChangeLog | 4 ++++ gcc/unroll.c | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 462c271b508..a8e23242321 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2001-10-10 Franz Sirl + PR c++/4512 + * unroll.c (loop_iterations): Ignore insns generated by loop + unrolling. + * config.gcc (mips*-*-gnu*): Delete support. * config/mips/gnu.h: Remove. 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)) -- 2.30.2