aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Henderson <rth@cygnus.com>2000-08-17 20:03:50 -0700
committerRichard Henderson <rth@gcc.gnu.org>2000-08-17 20:03:50 -0700
commitbc08aefe1f03e62b0fc23a33c08a14bb11b963c6 (patch)
treef422ab917a37d4551a6241d08e639ff73413d0a2 /gcc
parent4998268292c6b27cdd51e180ac0780f1dfaa0b08 (diff)
downloadgcc-bc08aefe1f03e62b0fc23a33c08a14bb11b963c6.zip
gcc-bc08aefe1f03e62b0fc23a33c08a14bb11b963c6.tar.gz
gcc-bc08aefe1f03e62b0fc23a33c08a14bb11b963c6.tar.bz2
ia64.c (spill_restore_mem): Handle emitting the first insn in a sequence.
* config/ia64/ia64.c (spill_restore_mem): Handle emitting the first insn in a sequence. From-SVN: r35772
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/ia64/ia64.c10
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e7705dc..9de4916 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2000-08-17 Richard Henderson <rth@cygnus.com>
+
+ * config/ia64/ia64.c (spill_restore_mem): Handle emitting
+ the first insn in a sequence.
+
Thu Aug 17 22:40:05 EDT 2000 John Wehle (john@feith.com)
* alias.c (true_dependence, write_dependence_p): A read
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index 44bc8d8..0c16cd3 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -1398,8 +1398,14 @@ spill_restore_mem (reg, cfa_off)
spill_fill_data.init_after
= emit_insn_after (seq, spill_fill_data.init_after);
else
- spill_fill_data.init_after
- = emit_insn_before (seq, get_insns ());
+ {
+ rtx first = get_insns ();
+ if (first)
+ spill_fill_data.init_after
+ = emit_insn_before (seq, first);
+ else
+ spill_fill_data.init_after = emit_insn (seq);
+ }
}
mem = gen_rtx_MEM (GET_MODE (reg), spill_fill_data.iter_reg[iter]);