diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/unroll.c | 15 |
2 files changed, 11 insertions, 10 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4565c57..46495eb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Mon Jan 14 20:23:34 CET 2002 Jan Hubicka <jh@suse.cz> + + * unroll.c (final_reg_note_copy): Properly handle + REG_LABEL + (unroll_loops): Fix LOOP_CONDITION heuristics. + 2002-01-14 Geoffrey Keating <geoffk@redhat.com> * doc/invoke.texi (Xstormy16 Options): Add xstormy16 option. diff --git a/gcc/unroll.c b/gcc/unroll.c index aa1b2c6..a47fdbe 100644 --- a/gcc/unroll.c +++ b/gcc/unroll.c @@ -987,7 +987,7 @@ unroll_loop (loop, insn_count, strength_reduce_p) less_p ? GE : LE, NULL_RTX, mode, unsigned_p, labels[1]); predict_insn_def (get_last_insn (), PRED_LOOP_CONDITION, - NOT_TAKEN); + TAKEN); JUMP_LABEL (get_last_insn ()) = labels[1]; LABEL_NUSES (labels[1])++; } @@ -1741,16 +1741,11 @@ final_reg_note_copy (notesp, map) { rtx insn = map->insn_map[INSN_UID (XEXP (note, 0))]; - /* If we failed to remap the note, something is awry. - Allow REG_LABEL as it may reference label outside - the unrolled loop. */ + /* If we failed to remap the note, something is awry. */ if (!insn) - { - if (REG_NOTE_KIND (note) != REG_LABEL) - abort (); - } - else - XEXP (note, 0) = insn; + abort (); + + XEXP (note, 0) = insn; } } |