Commit 1e1b18c1 by Eric Botcazou

function.c (emit_use_return_register_into_block): On cc0 targets, do not emit…

function.c (emit_use_return_register_into_block): On cc0 targets, do not emit the sequence between cc0 setter and user.

	* function.c (emit_use_return_register_into_block): On cc0 targets,
	do not emit the sequence between cc0 setter and user.

From-SVN: r197036
parent 9a776a83
2013-03-25 Eric Botcazou <ebotcazou@adacore.com>
* function.c (emit_use_return_register_into_block): On cc0 targets,
do not emit the sequence between cc0 setter and user.
2013-03-25 Kai Tietz <ktietz@redhat.com> 2013-03-25 Kai Tietz <ktietz@redhat.com>
* config/i386/predicates.md (local_symbolic_operand): Interpret * config/i386/predicates.md (local_symbolic_operand): Interpret
dll-imported symbols as none-local. dll-imported symbols as none-local.
2013-03-25 Richard Biener <rguenther@suse.de> 2013-03-25 Richard Biener <rguenther@suse.de>
......
...@@ -5598,12 +5598,17 @@ prepare_shrink_wrap (basic_block entry_block) ...@@ -5598,12 +5598,17 @@ prepare_shrink_wrap (basic_block entry_block)
static void static void
emit_use_return_register_into_block (basic_block bb) emit_use_return_register_into_block (basic_block bb)
{ {
rtx seq; rtx seq, insn;
start_sequence (); start_sequence ();
use_return_register (); use_return_register ();
seq = get_insns (); seq = get_insns ();
end_sequence (); end_sequence ();
emit_insn_before (seq, BB_END (bb)); insn = BB_END (bb);
#ifdef HAVE_cc0
if (reg_mentioned_p (cc0_rtx, PATTERN (insn)))
insn = prev_cc0_setter (insn);
#endif
emit_insn_before (seq, insn);
} }
......
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