summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2003-06-14 11:14:38 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2003-06-14 09:14:38 +0000
commit281ac6046f34ac0bae7bb981b332036cf1b0f2f1 (patch)
tree6f309bdb08a4acad2b871bdf831bb300a8ea484a /gcc
parent57eb6503947790f479d193717c81e05dad59258d (diff)
downloadgcc-281ac6046f34ac0bae7bb981b332036cf1b0f2f1.tar.gz
reorg.c (emit_delay_sequence, [...]): Clear insn locators inside delay slots.
* reorg.c (emit_delay_sequence, dbr_schedule): Clear insn locators inside delay slots. From-SVN: r67937
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/reorg.c18
2 files changed, 23 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d9b3523dfa3..cfef7305e3a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Sat Jun 14 11:12:04 CEST 2003 Jan Hubicka <jh@suse.cz>
+
+ * reorg.c (emit_delay_sequence, dbr_schedule): Clear insn locators
+ inside delay slots.
+
2003-06-13 Matt Kraai <kraai@alumni.cmu.edu>
* unwind-c.c: Define NO_SIZE_OF_ENCODED_VALUE.
diff --git a/gcc/reorg.c b/gcc/reorg.c
index 161e7b03ab2..37a82140326 100644
--- a/gcc/reorg.c
+++ b/gcc/reorg.c
@@ -497,6 +497,12 @@ emit_delay_sequence (insn, list, length)
PREV_INSN (tem) = XVECEXP (seq, 0, i - 1);
NEXT_INSN (XVECEXP (seq, 0, i - 1)) = tem;
+ /* SPARC assembler, for instance, emit warning when debug info is output
+ into the delay slot. */
+ if (INSN_LOCATOR (tem) && !INSN_LOCATOR (seq_insn))
+ INSN_LOCATOR (seq_insn) = INSN_LOCATOR (tem);
+ INSN_LOCATOR (tem) = 0;
+
for (note = REG_NOTES (tem); note; note = next)
{
next = XEXP (note, 1);
@@ -3841,5 +3847,17 @@ dbr_schedule (first, file)
}
free_resource_info ();
free (uid_to_ruid);
+#ifdef DELAY_SLOTS_FOR_EPILOGUE
+ /* SPARC assembler, for instance, emit warning when debug info is output
+ into the delay slot. */
+ {
+ rtx link;
+
+ for (link = current_function_epilogue_delay_list;
+ link;
+ link = XEXP (link, 1))
+ INSN_LOCATOR (XEXP (link, 0)) = 0;
+ }
+#endif
}
#endif /* DELAY_SLOTS */