diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-10-02 00:34:45 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 1994-10-02 00:34:45 +0000 |
commit | f65c10c0180a04a6d02ae387a27133b65350e95d (patch) | |
tree | 1fb3c8ccc506bb8b5dde5452aaf15e3e31de6588 /gcc/emit-rtl.c | |
parent | 6a6be9ad2b3e4c8bd62fba5970b08702f6668ce7 (diff) | |
download | gcc-f65c10c0180a04a6d02ae387a27133b65350e95d.tar.gz |
(add_insn_{before,after}): Abort if insertion point is a deleted insn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8193 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r-- | gcc/emit-rtl.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index 8a00d6b0498..490598cd94e 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -2132,7 +2132,7 @@ add_insn (insn) /* Add INSN into the doubly-linked list after insn AFTER. This and the next should be the only functions called to insert an insn once - delay slots have been filled since only they knows how to update a + delay slots have been filled since only they know how to update a SEQUENCE. */ void @@ -2141,6 +2141,9 @@ add_insn_after (insn, after) { rtx next = NEXT_INSN (after); + if (INSN_DELETED_P (after)) + abort (); + NEXT_INSN (insn) = next; PREV_INSN (insn) = after; @@ -2174,7 +2177,7 @@ add_insn_after (insn, after) /* Add INSN into the doubly-linked list before insn BEFORE. This and the previous should be the only functions called to insert an insn once - delay slots have been filled since only they knows how to update a + delay slots have been filled since only they know how to update a SEQUENCE. */ void @@ -2183,6 +2186,9 @@ add_insn_before (insn, before) { rtx prev = PREV_INSN (before); + if (INSN_DELETED_P (before)) + abort (); + PREV_INSN (insn) = prev; NEXT_INSN (insn) = before; |