reorg.c (dbr_schedule): Move code removing placeholder USEs later in the pass.

* reorg.c (dbr_schedule): Move code removing placeholder USEs later
	in the pass.

From-SVN: r128243
This commit is contained in:
Jan Hubicka 2007-09-07 17:42:17 +02:00 committed by Jan Hubicka
parent 71f4a02318
commit 74567c2cd1
2 changed files with 16 additions and 11 deletions

View file

@ -1,3 +1,8 @@
2007-09-07 Jan Hubicka <jh@suse.cz>
* reorg.c (dbr_schedule): Move code removing placeholder USEs later
in the pass.
2007-09-07 Dorit Nuzman <dorit@il.ibm.com>
PR tree-optimization/33299

View file

@ -3863,17 +3863,6 @@ dbr_schedule (rtx first)
relax_delay_slots (first);
}
/* Delete any USE insns made by update_block; subsequent passes don't need
them or know how to deal with them. */
for (insn = first; insn; insn = next)
{
next = NEXT_INSN (insn);
if (NONJUMP_INSN_P (insn) && GET_CODE (PATTERN (insn)) == USE
&& INSN_P (XEXP (PATTERN (insn), 0)))
next = delete_related_insns (insn);
}
/* If we made an end of function label, indicate that it is now
safe to delete it by undoing our prior adjustment to LABEL_NUSES.
If it is now unused, delete it. */
@ -3885,6 +3874,17 @@ dbr_schedule (rtx first)
make_return_insns (first);
#endif
/* Delete any USE insns made by update_block; subsequent passes don't need
them or know how to deal with them. */
for (insn = first; insn; insn = next)
{
next = NEXT_INSN (insn);
if (NONJUMP_INSN_P (insn) && GET_CODE (PATTERN (insn)) == USE
&& INSN_P (XEXP (PATTERN (insn), 0)))
next = delete_related_insns (insn);
}
obstack_free (&unfilled_slots_obstack, unfilled_firstobj);
/* It is not clear why the line below is needed, but it does seem to be. */