diff options
author | Jeffrey A Law <law@cygnus.com> | 1999-02-06 17:25:19 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-02-06 10:25:19 -0700 |
commit | f15ec016f923608e212ebdbe4d817905bbb4c8ed (patch) | |
tree | deed8a8af9389dfbc100aab13f1c145f1267d3e6 | |
parent | 8d31fdf4ba7ab6ec4131c56991863348101d00bd (diff) | |
download | gcc-f15ec016f923608e212ebdbe4d817905bbb4c8ed.zip gcc-f15ec016f923608e212ebdbe4d817905bbb4c8ed.tar.gz gcc-f15ec016f923608e212ebdbe4d817905bbb4c8ed.tar.bz2 |
* mn10300.md (reload_insi): Do not earlyclobber the output operand.
From-SVN: r25065
-rw-r--r-- | gcc/ChangeLog | 2 | ||||
-rw-r--r-- | gcc/config/mn10300/mn10300.md | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0ddb92f..966825a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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. diff --git a/gcc/config/mn10300/mn10300.md b/gcc/config/mn10300/mn10300.md index d576d21..8e090a3 100644 --- a/gcc/config/mn10300/mn10300.md +++ b/gcc/config/mn10300/mn10300.md @@ -155,7 +155,6 @@ { 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)))))) @@ -164,10 +163,10 @@ 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)))))) @@ -176,6 +175,7 @@ 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; |