summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2000-06-19 01:40:32 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2000-06-19 01:40:32 +0000
commitaf51ff99ceb20bcdbdabe6fce6c08a2570ecc9ea (patch)
treecc91d23dfcd4718dd914060e0e77c37f6d204e82
parent0b55cf416c79e11deb64dbdabca890668bfd9197 (diff)
downloadppe42-gcc-af51ff99ceb20bcdbdabe6fce6c08a2570ecc9ea.tar.gz
ppe42-gcc-af51ff99ceb20bcdbdabe6fce6c08a2570ecc9ea.zip
* gcse.c (insert_insn_end_bb): Always put after NOTE_INSN_BASIC_BLOCK.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34592 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog2
-rw-r--r--gcc/gcse.c7
2 files changed, 5 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3a5e0f8ea3c..7e8356e63b1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,7 @@
Sun Jun 18 21:42:15 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ * gcse.c (insert_insn_end_bb): Always put after NOTE_INSN_BASIC_BLOCK.
+
* function.c (put_var_into_stack): Don't reference DECL_ fields
if input is a SAVE_EXPR.
Use set_mem_attributes in COMPLEX case.
diff --git a/gcc/gcse.c b/gcc/gcse.c
index 4665133ee60..cc133177caa 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -4346,10 +4346,9 @@ insert_insn_end_bb (expr, bb, pre)
If we inserted before the CODE_LABEL, then we would be putting
the insn in the wrong basic block. In that case, put the insn
after the CODE_LABEL. Also, respect NOTE_INSN_BASIC_BLOCK. */
- if (GET_CODE (insn) == CODE_LABEL)
- insn = NEXT_INSN (insn);
- else if (GET_CODE (insn) == NOTE
- && NOTE_LINE_NUMBER (insn) == NOTE_INSN_BASIC_BLOCK)
+ while (GET_CODE (insn) == CODE_LABEL
+ || (GET_CODE (insn) == NOTE
+ && NOTE_LINE_NUMBER (insn) == NOTE_INSN_BASIC_BLOCK))
insn = NEXT_INSN (insn);
new_insn = emit_block_insn_before (pat, insn, BASIC_BLOCK (bb));
OpenPOWER on IntegriCloud