* mn10300.md (reload_insi): Do not earlyclobber the output operand.
authorJeffrey A Law <law@cygnus.com>
Sat, 6 Feb 1999 17:25:19 +0000 (17:25 +0000)
committerJeff Law <law@gcc.gnu.org>
Sat, 6 Feb 1999 17:25:19 +0000 (10:25 -0700)
From-SVN: r25065

gcc/ChangeLog
gcc/config/mn10300/mn10300.md

index 0ddb92fdcc639325f9f43603cabc8a1b57eef710..966825a07440edf8ea96b3e1e3b1b18dadbc3378 100644 (file)
@@ -1,5 +1,7 @@
 Sat Feb  6 18:14:46 1999  Jeffrey A Law  (law@cygnus.com)
 
+       * mn10300.md (reload_insi): Do not earlyclobber the output operand.
+
        * README.g77, gcc.c, gcc.texi: Update email addresses.
        * invoke.texi system.h: Likewise.
 
index d576d212530682f782e34d0d0ba0d6489a016fae..8e090a3395d97c3dffa0db008057ee0541e8c922 100644 (file)
 {
   if (XEXP (operands[1], 0) == stack_pointer_rtx)
     {
-      emit_move_insn (operands[0], XEXP (operands[1], 0));
       if (GET_CODE (XEXP (operands[1], 1)) == SUBREG
          && (GET_MODE_SIZE (GET_MODE (XEXP (operands[1], 1)))
              > GET_MODE_SIZE (GET_MODE (SUBREG_REG (XEXP (operands[1], 1))))))
                                 SUBREG_REG (XEXP (operands[1], 1))));
       else
        emit_move_insn (operands[2], XEXP (operands[1], 1));
+      emit_move_insn (operands[0], XEXP (operands[1], 0));
     }
   else
     {
-      emit_move_insn (operands[0], XEXP (operands[1], 1));
       if (GET_CODE (XEXP (operands[1], 0)) == SUBREG
          && (GET_MODE_SIZE (GET_MODE (XEXP (operands[1], 0)))
              > GET_MODE_SIZE (GET_MODE (SUBREG_REG (XEXP (operands[1], 0))))))
                                 SUBREG_REG (XEXP (operands[1], 0))));
       else
        emit_move_insn (operands[2], XEXP (operands[1], 0));
+      emit_move_insn (operands[0], XEXP (operands[1], 1));
     }
   emit_insn (gen_addsi3 (operands[0], operands[0], operands[2]));
   DONE;