diff options
author | Kaz Kojima <kkojima@gcc.gnu.org> | 2004-05-28 05:47:36 +0000 |
---|---|---|
committer | Kaz Kojima <kkojima@gcc.gnu.org> | 2004-05-28 05:47:36 +0000 |
commit | 4fbf3498e4c9f43d7143d22f7a0b0f0ce9a067bf (patch) | |
tree | 595306ca0fa8bb85bbca0c8297fc473749f5e607 /gcc | |
parent | e8a382b780014dfccb7a6559b71cb547a829047d (diff) | |
download | gcc-4fbf3498e4c9f43d7143d22f7a0b0f0ce9a067bf.zip gcc-4fbf3498e4c9f43d7143d22f7a0b0f0ce9a067bf.tar.gz gcc-4fbf3498e4c9f43d7143d22f7a0b0f0ce9a067bf.tar.bz2 |
re PR target/13250 ([3.4 only] [SH] Gcc code for rotation clobbers the register, but gcc continues to use the register as if it was not clobbered)
PR target/13250
* config/sh/sh.md (rotlsi3): Use emit_move_insn.
From-SVN: r82356
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/sh/sh.md | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9e1cc89..b45bea0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-05-28 Kaz Kojima <kkojima@gcc.gnu.org> + + PR target/13250 + * config/sh/sh.md (rotlsi3): Use emit_move_insn. + 2004-05-27 Kaz Kojima <kkojima@gcc.gnu.org> * config/sh/t-linux (SHLIB_MAPFILES): Use sh specific diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index d3b4c94..174ae60 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -2194,7 +2194,7 @@ parts[0] = gen_reg_rtx (SImode); parts[1] = gen_reg_rtx (SImode); emit_insn (gen_rotlsi3_16 (parts[2-choice], operands[1])); - parts[choice-1] = operands[1]; + emit_move_insn (parts[choice-1], operands[1]); emit_insn (gen_ashlsi3 (parts[0], parts[0], GEN_INT (8))); emit_insn (gen_lshrsi3 (parts[1], parts[1], GEN_INT (8))); emit_insn (gen_iorsi3 (operands[0], parts[0], parts[1])); |