Commit d37f862e by Richard Kenner

(stack-adjust/push peepholes): Addresses are moved with "addr", not

with "movd".

From-SVN: r8014
parent 1a6e3d52
......@@ -2702,6 +2702,8 @@
if (GET_CODE (operands[1]) == CONST_INT)
output_asm_insn (output_move_dconst (INTVAL (operands[1]), \"%$%1,0(sp)\"),
operands);
else if (address_operand (operands[1], SImode))
output_asm_insn (\"addr %a1,0(sp)\", operands);
else
output_asm_insn (\"movd %1,0(sp)\", operands);
return \"\";
......@@ -2722,12 +2724,16 @@
if (GET_CODE (operands[1]) == CONST_INT)
output_asm_insn (output_move_dconst (INTVAL (operands[1]), \"%$%1,4(sp)\"),
operands);
else if (address_operand (operands[1], SImode))
output_asm_insn (\"addr %a1,0(sp)\", operands);
else
output_asm_insn (\"movd %1,4(sp)\", operands);
if (GET_CODE (operands[3]) == CONST_INT)
output_asm_insn (output_move_dconst (INTVAL (operands[3]), \"%$%3,0(sp)\"),
operands);
else if (address_operand (operands[3], SImode))
output_asm_insn (\"addr %a3,0(sp)\", operands);
else
output_asm_insn (\"movd %3,0(sp)\", operands);
return \"\";
......
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