diff options
author | Torbjorn Granlund <tege@gnu.org> | 1996-09-26 21:55:07 +0000 |
---|---|---|
committer | Torbjorn Granlund <tege@gnu.org> | 1996-09-26 21:55:07 +0000 |
commit | 33163aceba07dcaf04960280bb06781e6bb7310d (patch) | |
tree | 1cda6a09e51e1c9839c01851817919b7f6e37b39 | |
parent | ae678a132605a4c2d8eebc3b5028bc4666f1cff0 (diff) | |
download | gcc-33163aceba07dcaf04960280bb06781e6bb7310d.zip gcc-33163aceba07dcaf04960280bb06781e6bb7310d.tar.gz gcc-33163aceba07dcaf04960280bb06781e6bb7310d.tar.bz2 |
(mulsidi3 matcher): Change predicate const_int_operand to const_sint32_operand.
(mulsidi3 matcher): Change predicate const_int_operand
to const_sint32_operand. Get rid of bogus range condition.
From-SVN: r12850
-rw-r--r-- | gcc/config/m68k/m68k.md | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index da9ff37..538c8dd 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -2949,16 +2949,12 @@ (define_insn "" [(set (match_operand:SI 0 "register_operand" "=d") (mult:SI (match_operand:SI 1 "register_operand" "%0") - (match_operand:SI 2 "const_int_operand" "n"))) + (match_operand:SI 2 "const_sint32_operand" ""))) (set (match_operand:SI 3 "register_operand" "=d") (truncate:SI (lshiftrt:DI (mult:DI (sign_extend:DI (match_dup 1)) (match_dup 2)) (const_int 32))))] - "TARGET_68020 && !TARGET_68060 && !TARGET_5200 - /* This test is a noop on 32 bit machines, - but important for a cross-compiler hosted on 64-bit machines. */ - && INTVAL (operands[2]) <= 0x7fffffff - && INTVAL (operands[2]) >= -0x80000000" + "TARGET_68020 && !TARGET_68060 && !TARGET_5200" "muls%.l %2,%3:%0") (define_expand "umulsi3_highpart" |