From c5dce79bc330b8b5a0f0430b8c4e8506a77a90bd Mon Sep 17 00:00:00 2001 From: Andrew Pinski Date: Sat, 8 Oct 2005 21:41:50 +0000 Subject: [multiple changes] 2005-10-08 Andrew Pinski PR target/24136 * config/rs6000/darwin.md (movdf_low_si): Remove early clobber. Rewrite for no need for the early clobber. 2005-10-07 Andrew Pinski PR target/24136 * gfortran.fortran-torture/compile/pr24136.f: New test. From-SVN: r105123 --- gcc/config/rs6000/darwin.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'gcc/config/rs6000/darwin.md') diff --git a/gcc/config/rs6000/darwin.md b/gcc/config/rs6000/darwin.md index 0732817ef15..49c6caa03ce 100644 --- a/gcc/config/rs6000/darwin.md +++ b/gcc/config/rs6000/darwin.md @@ -28,10 +28,10 @@ Boston, MA 02110-1301, USA. */ [(set_attr "length" "4")]) (define_insn "movdf_low_si" - [(set (match_operand:DF 0 "gpc_reg_operand" "=f,!&r") + [(set (match_operand:DF 0 "gpc_reg_operand" "=f,!r") (mem:DF (lo_sum:SI (match_operand:SI 1 "gpc_reg_operand" "b,b") (match_operand 2 "" ""))))] - "TARGET_MACHO && TARGET_HARD_FLOAT && TARGET_FPRS && ! TARGET_64BIT" + "TARGET_MACHO && TARGET_HARD_FLOAT && TARGET_FPRS && !TARGET_64BIT" "* { switch (which_alternative) @@ -45,9 +45,9 @@ Boston, MA 02110-1301, USA. */ return \"ld %0,lo16(%2)(%1)\"; else { - output_asm_insn (\"{l|lwz} %0,lo16(%2)(%1)\", operands); - output_asm_insn (\"{cal|la} %L0,lo16(%2)(%1)\", operands); - return (\"{l|lwz} %L0,4(%L0)\"); + output_asm_insn (\"{cal|la} %0,lo16(%2)(%1)\", operands); + output_asm_insn (\"{l|lwz} %L0,4(%0)\", operands); + return (\"{l|lwz} %0,0(%0)\"); } } default: -- cgit v1.2.1