Commit 5d11b4bf by Eric Botcazou Committed by Eric Botcazou

reorg.c (make_return_insns): Use emit_copy_of_insn_after for the insns in the…

reorg.c (make_return_insns): Use emit_copy_of_insn_after for the insns in the delay slot and add_insn_after...

	* reorg.c (make_return_insns): Use emit_copy_of_insn_after for the
	insns in the delay slot and add_insn_after for the jump insn.

From-SVN: r264780
parent 0edf3afe
2018-10-02 Eric Botcazou <ebotcazou@adacore.com>
* reorg.c (make_return_insns): Use emit_copy_of_insn_after for the
insns in the delay slot and add_insn_after for the jump insn.
2018-10-02 Richard Biener <rguenther@suse.de> 2018-10-02 Richard Biener <rguenther@suse.de>
* tree-inline.c (expand_call_inline): Use the location of * tree-inline.c (expand_call_inline): Use the location of
...@@ -3638,18 +3638,13 @@ make_return_insns (rtx_insn *first) ...@@ -3638,18 +3638,13 @@ make_return_insns (rtx_insn *first)
insns for its delay slots, if it needs some. */ insns for its delay slots, if it needs some. */
if (ANY_RETURN_P (PATTERN (jump_insn))) if (ANY_RETURN_P (PATTERN (jump_insn)))
{ {
rtx_insn *prev = PREV_INSN (insn); rtx_insn *after = PREV_INSN (insn);
delete_related_insns (insn); delete_related_insns (insn);
for (i = 1; i < XVECLEN (pat, 0); i++) insn = jump_insn;
{ for (i = 1; i < pat->len (); i++)
rtx_insn *in_seq_insn = as_a<rtx_insn *> (XVECEXP (pat, 0, i)); after = emit_copy_of_insn_after (pat->insn (i), after);
prev = emit_insn_after_setloc (PATTERN (in_seq_insn), prev, add_insn_after (insn, after, NULL);
INSN_LOCATION (in_seq_insn));
}
insn = emit_jump_insn_after_setloc (PATTERN (jump_insn), prev,
INSN_LOCATION (jump_insn));
emit_barrier_after (insn); emit_barrier_after (insn);
if (slots) if (slots)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment