Commit 33163ace by Torbjorn Granlund

(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
parent ae678a13
...@@ -2949,16 +2949,12 @@ ...@@ -2949,16 +2949,12 @@
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "register_operand" "=d") [(set (match_operand:SI 0 "register_operand" "=d")
(mult:SI (match_operand:SI 1 "register_operand" "%0") (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") (set (match_operand:SI 3 "register_operand" "=d")
(truncate:SI (lshiftrt:DI (mult:DI (sign_extend:DI (match_dup 1)) (truncate:SI (lshiftrt:DI (mult:DI (sign_extend:DI (match_dup 1))
(match_dup 2)) (match_dup 2))
(const_int 32))))] (const_int 32))))]
"TARGET_68020 && !TARGET_68060 && !TARGET_5200 "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"
"muls%.l %2,%3:%0") "muls%.l %2,%3:%0")
(define_expand "umulsi3_highpart" (define_expand "umulsi3_highpart"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment