Commit d1f0a70a by Alan Modra Committed by Alan Modra

[RS6000] Force source of fix_trunc<mode>si2 to reg

	* config/rs6000/rs6000.md (fix_trunc<mode>si2): Force source operand
	to a reg.  Localize vars.

From-SVN: r239011
parent 819c7145
2016-08-03 Alan Modra <amodra@gmail.com> 2016-08-03 Alan Modra <amodra@gmail.com>
* config/rs6000/rs6000.md (fix_trunc<mode>si2): Force source operand
to a reg. Localize vars.
2016-08-03 Alan Modra <amodra@gmail.com>
* config/rs6000/rs6000.opt: Remove negatives from help strings * config/rs6000/rs6000.opt: Remove negatives from help strings
and comments. and comments.
......
...@@ -5357,15 +5357,15 @@ ...@@ -5357,15 +5357,15 @@
{ {
if (!<E500_CONVERT>) if (!<E500_CONVERT>)
{ {
rtx tmp, stack; rtx src = force_reg (SFmode, operands[1]);
if (TARGET_STFIWX) if (TARGET_STFIWX)
emit_insn (gen_fix_trunc<mode>si2_stfiwx (operands[0], operands[1])); emit_insn (gen_fix_trunc<mode>si2_stfiwx (operands[0], src));
else else
{ {
tmp = gen_reg_rtx (DImode); rtx tmp = gen_reg_rtx (DImode);
stack = rs6000_allocate_stack_temp (DImode, true, false); rtx stack = rs6000_allocate_stack_temp (DImode, true, false);
emit_insn (gen_fix_trunc<mode>si2_internal (operands[0], operands[1], emit_insn (gen_fix_trunc<mode>si2_internal (operands[0], src,
tmp, stack)); tmp, stack));
} }
DONE; DONE;
......
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