summaryrefslogtreecommitdiff
path: root/gcc/reorg.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2007-09-07 17:42:17 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2007-09-07 15:42:17 +0000
commit74567c2cd17e56eb9943e5cc2c8728aec42699c1 (patch)
treeb1c16e4adaf3e03fd57c8eff7998716b39351253 /gcc/reorg.c
parent71f4a02318f4dad261ad8c8e9f77cd36e83f46e3 (diff)
downloadgcc-74567c2cd17e56eb9943e5cc2c8728aec42699c1.tar.gz
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
Diffstat (limited to 'gcc/reorg.c')
-rw-r--r--gcc/reorg.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/gcc/reorg.c b/gcc/reorg.c
index 6826887e762..8083c88c9b8 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -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. */