(plus of gtu patterns): Add case to handle immediates.

From-SVN: r3285
This commit is contained in:
Richard Kenner 1993-01-19 18:50:54 -05:00
parent cfcf04a6ba
commit 0075180522

View File

@ -4442,38 +4442,47 @@
[(set_attr "type" "compare")])
(define_insn ""
[(set (match_operand:SI 0 "gpc_reg_operand" "=r,r")
(plus:SI (gtu:SI (match_operand:SI 1 "gpc_reg_operand" "r,r")
(match_operand:SI 2 "reg_or_short_operand" "rI,rI"))
(match_operand:SI 3 "reg_or_short_operand" "r,I")))
(clobber (match_scratch:SI 4 "=&r,&r"))]
[(set (match_operand:SI 0 "gpc_reg_operand" "=r,r,r")
(plus:SI (gtu:SI (match_operand:SI 1 "gpc_reg_operand" "r,r,r")
(match_operand:SI 2 "reg_or_short_operand" "I,r,rI"))
(match_operand:SI 3 "reg_or_short_operand" "r,r,I")))
(clobber (match_scratch:SI 4 "=&r,&r,&r"))]
""
"sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3 %0,%4,%3")
"@
ai %4,%1,%k2\;aze %0,%3
sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3 %0,%4,%3
sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3 %0,%4,%3")
(define_insn ""
[(set (match_operand:CC 0 "cc_reg_operand" "=x,x")
[(set (match_operand:CC 0 "cc_reg_operand" "=x,x,x")
(compare:CC
(plus:SI (gtu:SI (match_operand:SI 1 "gpc_reg_operand" "r,r")
(match_operand:SI 2 "reg_or_short_operand" "rI,rI"))
(match_operand:SI 3 "reg_or_short_operand" "r,I"))
(plus:SI (gtu:SI (match_operand:SI 1 "gpc_reg_operand" "r,r,r")
(match_operand:SI 2 "reg_or_short_operand" "I,r,rI"))
(match_operand:SI 3 "reg_or_short_operand" "r,r,I"))
(const_int 0)))
(clobber (match_scratch:SI 4 "=&r,&r"))]
(clobber (match_scratch:SI 4 "=&r,&r,&r"))]
""
"sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3. %4,%4,%3"
"@
ai %4,%1,%k2\;aze. %0,%3
sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3. %0,%4,%3
sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3. %0,%4,%3"
[(set_attr "type" "compare")])
(define_insn ""
[(set (match_operand:CC 5 "cc_reg_operand" "=x,x")
[(set (match_operand:CC 5 "cc_reg_operand" "=x,x,x")
(compare:CC
(plus:SI (gtu:SI (match_operand:SI 1 "gpc_reg_operand" "r,r")
(match_operand:SI 2 "reg_or_short_operand" "rI,rI"))
(match_operand:SI 3 "reg_or_short_operand" "r,I"))
(plus:SI (gtu:SI (match_operand:SI 1 "gpc_reg_operand" "r,r,r")
(match_operand:SI 2 "reg_or_short_operand" "I,r,rI"))
(match_operand:SI 3 "reg_or_short_operand" "r,r,I"))
(const_int 0)))
(set (match_operand:SI 0 "gpc_reg_operand" "=r,r")
(set (match_operand:SI 0 "gpc_reg_operand" "=r,r,r")
(plus:SI (gtu:SI (match_dup 1) (match_dup 2)) (match_dup 3)))
(clobber (match_scratch:SI 4 "=&r,&r"))]
(clobber (match_scratch:SI 4 "=&r,&r,&r"))]
""
"sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3. %0,%4,%3"
"@
ai %4,%1,%k2\;aze. %0,%3
sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3. %0,%4,%3
sf%I2 %4,%1,%2\;sfe %4,%4,%4\;sf%I3. %0,%4,%3"
[(set_attr "type" "compare")])
(define_insn ""