aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Kenner <kenner@gcc.gnu.org>1996-09-23 14:22:18 -0400
committerRichard Kenner <kenner@gcc.gnu.org>1996-09-23 14:22:18 -0400
commit9acc54fa93fbaea0f3b2e8976b1806d832297b45 (patch)
treef0a5eb23e647abb1f68623687aa4b5db40d03327
parenta2cabb29bdf400bb81581e68f0fb36c4802bc343 (diff)
downloadgcc-9acc54fa93fbaea0f3b2e8976b1806d832297b45.zip
gcc-9acc54fa93fbaea0f3b2e8976b1806d832297b45.tar.gz
gcc-9acc54fa93fbaea0f3b2e8976b1806d832297b45.tar.bz2
(emit_reload_insns): For output part of RELOAD_OTHER...
(emit_reload_insns): For output part of RELOAD_OTHER, put in front of anything previous for that output, but not separately. From-SVN: r12776
-rw-r--r--gcc/reload1.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c
index d18244b..ccc3b9c 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -5694,7 +5694,6 @@ emit_reload_insns (insn)
rtx output_address_reload_insns[MAX_RECOG_OPERANDS];
rtx operand_reload_insns = 0;
rtx other_operand_reload_insns = 0;
- rtx other_output_reload_insns = 0;
rtx following_insn = NEXT_INSN (insn);
rtx before_insn = insn;
int special;
@@ -6481,14 +6480,9 @@ emit_reload_insns (insn)
}
if (reload_when_needed[j] == RELOAD_OTHER)
- {
- if (other_output_reload_insns)
- emit_insns (other_output_reload_insns);
- other_output_reload_insns = get_insns ();
- }
- else
- output_reload_insns[reload_opnum[j]] = get_insns ();
+ emit_insns (output_reload_insns[reload_opnum[j]]);
+ output_reload_insns[reload_opnum[j]] = get_insns ();
end_sequence ();
}
}
@@ -6534,8 +6528,6 @@ emit_reload_insns (insn)
emit_insns_before (output_reload_insns[j], following_insn);
}
- emit_insns_before (other_output_reload_insns, following_insn);
-
/* Move death notes from INSN
to output-operand-address and output reload insns. */
#ifdef PRESERVE_DEATH_INFO_REGNO_P