diff options
author | Jim Wilson <wilson@cygnus.com> | 1998-03-18 15:45:35 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1998-03-18 07:45:35 -0800 |
commit | 5bac82c574601d8e2b3074ef475cb372fed20971 (patch) | |
tree | be78faf728b4ec1fef2bf7311ae5647ad9191091 | |
parent | 9623b8e14f80d24d9d78255751b9c568f4600f42 (diff) | |
download | gcc-5bac82c574601d8e2b3074ef475cb372fed20971.zip gcc-5bac82c574601d8e2b3074ef475cb372fed20971.tar.gz gcc-5bac82c574601d8e2b3074ef475cb372fed20971.tar.bz2 |
Fix bug reported by Toshi Morita.
* sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c.
(ashlsi): Use match_dup 1 instead of match_operand 2.
From-SVN: r18674
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/sh/sh.md | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2b24655..674724c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Wed Mar 18 12:43:20 1998 Jim Wilson <wilson@cygnus.com> + + * sh.md (ashlsi_c-1): Delete 3rd argument to gen_ashlsi_c. + (ashlsi): Use match_dup 1 instead of match_operand 2. + Wed Mar 18 13:46:07 1998 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> * fold-const.c (operand_equal_for_comparison_p): See if equal diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index 93a2ec8..8659ddc 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -1256,7 +1256,7 @@ [(const_int 0)] " { - emit_insn (gen_ashlsi_c (operands[0], operands[1], operands[1])); + emit_insn (gen_ashlsi_c (operands[0], operands[1])); emit_insn (gen_subc1 (operands[0], operands[0], operands[0])); DONE; }") @@ -1264,7 +1264,7 @@ (define_insn "ashlsi_c" [(set (match_operand:SI 0 "arith_reg_operand" "=r") (ashift:SI (match_operand:SI 1 "arith_reg_operand" "0") (const_int 1))) - (set (reg:SI 18) (lt:SI (match_operand:SI 2 "arith_reg_operand" "0") + (set (reg:SI 18) (lt:SI (match_dup 1) (const_int 0)))] "" "shll %0" |