diff options
author | drow <drow@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-01-17 22:14:17 +0000 |
---|---|---|
committer | drow <drow@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-01-17 22:14:17 +0000 |
commit | ca154f3f2209edd618242c8605fcbeddbfa5231f (patch) | |
tree | 26fe26b671e75ed353a65429f329946b27e76929 /gcc/emit-rtl.c | |
parent | e69efecb72b8d04781f939b2dabb071b17b6cb61 (diff) | |
download | gcc-ca154f3f2209edd618242c8605fcbeddbfa5231f.tar.gz |
* rtl.h (emit_insn_before_sameloc, emit_jump_insn_before_sameloc)
(emit_call_insn_before_sameloc, emit_insn_after_sameloc)
(emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): New
macros.
* reload1.c (emit_reload_insns): Use them.
* emit-rtl.c (emit_insn_before_sameloc, emit_insn_after_sameloc)
(emit_jump_insn_after_sameloc, emit_call_insn_after_sameloc): Check
for NULL PATTERN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76062 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r-- | gcc/emit-rtl.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index ddc84ee8895..a77b9d1e0e9 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -4383,6 +4383,9 @@ emit_insn_after_setloc (rtx pattern, rtx after, int loc) { rtx last = emit_insn_after (pattern, after); + if (pattern == NULL_RTX) + return last; + after = NEXT_INSN (after); while (1) { @@ -4401,6 +4404,9 @@ emit_jump_insn_after_setloc (rtx pattern, rtx after, int loc) { rtx last = emit_jump_insn_after (pattern, after); + if (pattern == NULL_RTX) + return last; + after = NEXT_INSN (after); while (1) { @@ -4419,6 +4425,9 @@ emit_call_insn_after_setloc (rtx pattern, rtx after, int loc) { rtx last = emit_call_insn_after (pattern, after); + if (pattern == NULL_RTX) + return last; + after = NEXT_INSN (after); while (1) { @@ -4438,6 +4447,9 @@ emit_insn_before_setloc (rtx pattern, rtx before, int loc) rtx first = PREV_INSN (before); rtx last = emit_insn_before (pattern, before); + if (pattern == NULL_RTX) + return last; + first = NEXT_INSN (first); while (1) { |