unroll.c (copy_loop_body): Always properly update JUMP_LABEL and LABEL_NUSES.

* unroll.c (copy_loop_body): Always properly update JUMP_LABEL and
	LABEL_NUSES.

From-SVN: r48600
This commit is contained in:
Jan Hubicka 2002-01-07 12:00:39 +01:00 committed by Jan Hubicka
parent b34c06e332
commit 6ba4d630f6
2 changed files with 10 additions and 3 deletions

View File

@ -1,3 +1,8 @@
Mon Jan 7 11:59:34 CET 2002 Jan Hubicka <jh@suse.cz>
* unroll.c (copy_loop_body): Always properly update JUMP_LABEL and
LABEL_NUSES.
2002-01-07 Graham Stott <grahams@redhat.com>
* config/i386/i386.h: Update copyright date.

View File

@ -2073,14 +2073,16 @@ copy_loop_body (loop, copy_start, copy_end, map, exit_label, last_iteration,
copy = emit_jump_insn (pattern);
REG_NOTES (copy) = initial_reg_note_copy (REG_NOTES (insn), map);
if (JUMP_LABEL (insn) == start_label && insn == copy_end
&& ! last_iteration)
if (JUMP_LABEL (insn))
{
/* Update JUMP_LABEL make invert_jump work correctly. */
JUMP_LABEL (copy) = get_label_from_map (map,
CODE_LABEL_NUMBER
(JUMP_LABEL (insn)));
LABEL_NUSES (JUMP_LABEL (copy))++;
}
if (JUMP_LABEL (insn) == start_label && insn == copy_end
&& ! last_iteration)
{
/* This is a branch to the beginning of the loop; this is the
last insn being copied; and this is not the last iteration.