mn10300.md: Use nonimmediate_operand instead of general_operand on output operands.

* mn10300.md: Use nonimmediate_operand instead of general_operand
on output operands.

From-SVN: r35551
This commit is contained in:
Graham Stott 2000-08-07 11:28:02 +00:00 committed by Alexandre Oliva
parent a7fef47884
commit f3d6a3cb21
2 changed files with 27 additions and 24 deletions

View File

@ -1,5 +1,8 @@
2000-08-07 Graham Stott <grahams@cygnus.co.uk> 2000-08-07 Graham Stott <grahams@cygnus.co.uk>
* mn10300.md: Use nonimmediate_operand instead of general_operand
on output operands.
* mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads. * mn10300.h (PREFERRED_RELOAD_CLASS): Limit memory reloads.
2000-08-07 Alexandre Oliva <aoliva@redhat.com> 2000-08-07 Alexandre Oliva <aoliva@redhat.com>

View File

@ -56,7 +56,7 @@
}") }")
(define_insn "" (define_insn ""
[(set (match_operand:QI 0 "general_operand" "=d*x*a,d*x,d*x*a,d*x*a,m") [(set (match_operand:QI 0 "nonimmediate_operand" "=d*x*a,d*x,d*x*a,d*x*a,m")
(match_operand:QI 1 "general_operand" "0,I,d*xai,m,d*xa"))] (match_operand:QI 1 "general_operand" "0,I,d*xai,m,d*xa"))]
"TARGET_AM33 "TARGET_AM33
&& (register_operand (operands[0], QImode) && (register_operand (operands[0], QImode)
@ -99,7 +99,7 @@
[(set_attr "cc" "none,clobber,none_0hit,none_0hit,none_0hit")]) [(set_attr "cc" "none,clobber,none_0hit,none_0hit,none_0hit")])
(define_insn "" (define_insn ""
[(set (match_operand:QI 0 "general_operand" "=d*a,d,d*a,d,m") [(set (match_operand:QI 0 "nonimmediate_operand" "=d*a,d,d*a,d,m")
(match_operand:QI 1 "general_operand" "0,I,dai,m,d"))] (match_operand:QI 1 "general_operand" "0,I,dai,m,d"))]
"register_operand (operands[0], QImode) "register_operand (operands[0], QImode)
|| register_operand (operands[1], QImode)" || register_operand (operands[1], QImode)"
@ -146,7 +146,7 @@
}") }")
(define_insn "" (define_insn ""
[(set (match_operand:HI 0 "general_operand" "=d*x*a,d*x,d*x*a,d*x*a,m") [(set (match_operand:HI 0 "nonimmediate_operand" "=d*x*a,d*x,d*x*a,d*x*a,m")
(match_operand:HI 1 "general_operand" "0,I,d*x*ai,m,d*x*a"))] (match_operand:HI 1 "general_operand" "0,I,d*x*ai,m,d*x*a"))]
"TARGET_AM33 "TARGET_AM33
&& (register_operand (operands[0], HImode) && (register_operand (operands[0], HImode)
@ -189,7 +189,7 @@
[(set_attr "cc" "none,clobber,none_0hit,none_0hit,none_0hit")]) [(set_attr "cc" "none,clobber,none_0hit,none_0hit,none_0hit")])
(define_insn "" (define_insn ""
[(set (match_operand:HI 0 "general_operand" "=d*a,d,d*a,d,m") [(set (match_operand:HI 0 "nonimmediate_operand" "=d*a,d,d*a,d,m")
(match_operand:HI 1 "general_operand" "0,I,dai,m,d"))] (match_operand:HI 1 "general_operand" "0,I,dai,m,d"))]
"register_operand (operands[0], HImode) "register_operand (operands[0], HImode)
|| register_operand (operands[1], HImode)" || register_operand (operands[1], HImode)"
@ -275,7 +275,7 @@
}") }")
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" [(set (match_operand:SI 0 "nonimmediate_operand"
"=dx,ax,dx,a,dxm,dxm,axm,axm,dx,dx,ax,ax,axR,!*y") "=dx,ax,dx,a,dxm,dxm,axm,axm,dx,dx,ax,ax,axR,!*y")
(match_operand:SI 1 "general_operand" (match_operand:SI 1 "general_operand"
"0,0,I,I,dx,ax,dx,ax,dixm,aixm,dixm,aixm,!*y,axR"))] "0,0,I,I,dx,ax,dx,ax,dixm,aixm,dixm,aixm,!*y,axR"))]
@ -339,7 +339,7 @@
}") }")
(define_insn "" (define_insn ""
[(set (match_operand:SF 0 "general_operand" "=dx,ax,dx,a,daxm,dax") [(set (match_operand:SF 0 "nonimmediate_operand" "=dx,ax,dx,a,daxm,dax")
(match_operand:SF 1 "general_operand" "0,0,G,G,dax,daxFm"))] (match_operand:SF 1 "general_operand" "0,0,G,G,dax,daxFm"))]
"register_operand (operands[0], SFmode) "register_operand (operands[0], SFmode)
|| register_operand (operands[1], SFmode)" || register_operand (operands[1], SFmode)"
@ -384,7 +384,7 @@
}") }")
(define_insn "" (define_insn ""
[(set (match_operand:DI 0 "general_operand" [(set (match_operand:DI 0 "nonimmediate_operand"
"=dx,ax,dx,a,dxm,dxm,axm,axm,dx,dx,ax,ax") "=dx,ax,dx,a,dxm,dxm,axm,axm,dx,dx,ax,ax")
(match_operand:DI 1 "general_operand" (match_operand:DI 1 "general_operand"
"0,0,I,I,dx,ax,dx,ax,dxim,axim,dxim,axim"))] "0,0,I,I,dx,ax,dx,ax,dxim,axim,dxim,axim"))]
@ -534,7 +534,7 @@
}") }")
(define_insn "" (define_insn ""
[(set (match_operand:DF 0 "general_operand" [(set (match_operand:DF 0 "nonimmediate_operand"
"=dx,ax,dx,a,dxm,dxm,axm,axm,dx,dx,ax,ax") "=dx,ax,dx,a,dxm,dxm,axm,axm,dx,dx,ax,ax")
(match_operand:DF 1 "general_operand" (match_operand:DF 1 "general_operand"
"0,0,G,G,dx,ax,dx,ax,dxFm,axFm,dxFm,axFm"))] "0,0,G,G,dx,ax,dx,ax,dxFm,axFm,dxFm,axFm"))]
@ -970,10 +970,10 @@
[(set_attr "cc" "set_zn")]) [(set_attr "cc" "set_zn")])
(define_insn "udivmodsi4" (define_insn "udivmodsi4"
[(set (match_operand:SI 0 "general_operand" "=dx") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx")
(udiv:SI (match_operand:SI 1 "general_operand" "0") (udiv:SI (match_operand:SI 1 "general_operand" "0")
(match_operand:SI 2 "general_operand" "dx"))) (match_operand:SI 2 "general_operand" "dx")))
(set (match_operand:SI 3 "general_operand" "=&d") (set (match_operand:SI 3 "nonimmediate_operand" "=&d")
(umod:SI (match_dup 1) (match_dup 2)))] (umod:SI (match_dup 1) (match_dup 2)))]
"" ""
"* "*
@ -988,10 +988,10 @@
[(set_attr "cc" "set_zn")]) [(set_attr "cc" "set_zn")])
(define_insn "divmodsi4" (define_insn "divmodsi4"
[(set (match_operand:SI 0 "general_operand" "=dx") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx")
(div:SI (match_operand:SI 1 "general_operand" "0") (div:SI (match_operand:SI 1 "general_operand" "0")
(match_operand:SI 2 "general_operand" "dx"))) (match_operand:SI 2 "general_operand" "dx")))
(set (match_operand:SI 3 "general_operand" "=d") (set (match_operand:SI 3 "nonimmediate_operand" "=d")
(mod:SI (match_dup 1) (match_dup 2)))] (mod:SI (match_dup 1) (match_dup 2)))]
"" ""
"* "*
@ -1214,7 +1214,7 @@
;; and storing the register, but they don't need a scratch register ;; and storing the register, but they don't need a scratch register
;; which may allow for better code generation. ;; which may allow for better code generation.
(define_insn "" (define_insn ""
[(set (match_operand:QI 0 "general_operand" "=R,d") (const_int 0))] [(set (match_operand:QI 0 "nonimmediate_operand" "=R,d") (const_int 0))]
"" ""
"@ "@
bclr 255,%A0 bclr 255,%A0
@ -1222,7 +1222,7 @@
[(set_attr "cc" "clobber")]) [(set_attr "cc" "clobber")])
(define_insn "" (define_insn ""
[(set (match_operand:QI 0 "general_operand" "=R,d") (const_int -1))] [(set (match_operand:QI 0 "nonimmediate_operand" "=R,d") (const_int -1))]
"" ""
"@ "@
bset 255,%A0 bset 255,%A0
@ -1230,7 +1230,7 @@
[(set_attr "cc" "clobber,none_0hit")]) [(set_attr "cc" "clobber,none_0hit")])
(define_insn "" (define_insn ""
[(set (match_operand:QI 0 "general_operand" "+R,d") [(set (match_operand:QI 0 "nonimmediate_operand" "+R,d")
(subreg:QI (subreg:QI
(and:SI (subreg:SI (match_dup 0) 0) (and:SI (subreg:SI (match_dup 0) 0)
(match_operand:SI 1 "const_int_operand" "i,i")) 0))] (match_operand:SI 1 "const_int_operand" "i,i")) 0))]
@ -1241,7 +1241,7 @@
[(set_attr "cc" "clobber,set_znv")]) [(set_attr "cc" "clobber,set_znv")])
(define_insn "" (define_insn ""
[(set (match_operand:QI 0 "general_operand" "+R,d") [(set (match_operand:QI 0 "nonimmediate_operand" "+R,d")
(subreg:QI (subreg:QI
(ior:SI (subreg:SI (match_dup 0) 0) (ior:SI (subreg:SI (match_dup 0) 0)
(match_operand:SI 1 "const_int_operand" "i,i")) 0))] (match_operand:SI 1 "const_int_operand" "i,i")) 0))]
@ -1595,7 +1595,7 @@
"") "")
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx,dx,!dax,!dax,!dax") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx,dx,!dax,!dax,!dax")
(zero_extend:SI (zero_extend:SI
(match_operand:QI 1 "general_operand" "0,dax,m,0,dax,m")))] (match_operand:QI 1 "general_operand" "0,dax,m,0,dax,m")))]
"TARGET_AM33" "TARGET_AM33"
@ -1609,7 +1609,7 @@
[(set_attr "cc" "none_0hit")]) [(set_attr "cc" "none_0hit")])
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx,dx") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx,dx")
(zero_extend:SI (zero_extend:SI
(match_operand:QI 1 "general_operand" "0,d,m")))] (match_operand:QI 1 "general_operand" "0,d,m")))]
"" ""
@ -1627,7 +1627,7 @@
"") "")
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx,dx,!dax,!dax,!dax") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx,dx,!dax,!dax,!dax")
(zero_extend:SI (zero_extend:SI
(match_operand:HI 1 "general_operand" "0,dax,m,0,dax,m")))] (match_operand:HI 1 "general_operand" "0,dax,m,0,dax,m")))]
"TARGET_AM33" "TARGET_AM33"
@ -1641,7 +1641,7 @@
[(set_attr "cc" "none_0hit")]) [(set_attr "cc" "none_0hit")])
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx,dx") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx,dx")
(zero_extend:SI (zero_extend:SI
(match_operand:HI 1 "general_operand" "0,dx,m")))] (match_operand:HI 1 "general_operand" "0,dx,m")))]
"" ""
@ -1661,7 +1661,7 @@
"") "")
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx,!dax,!dax") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx,!dax,!dax")
(sign_extend:SI (sign_extend:SI
(match_operand:QI 1 "general_operand" "0,dx,0,dax")))] (match_operand:QI 1 "general_operand" "0,dx,0,dax")))]
"TARGET_AM33" "TARGET_AM33"
@ -1673,7 +1673,7 @@
[(set_attr "cc" "none_0hit")]) [(set_attr "cc" "none_0hit")])
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx")
(sign_extend:SI (sign_extend:SI
(match_operand:QI 1 "general_operand" "0,dx")))] (match_operand:QI 1 "general_operand" "0,dx")))]
"" ""
@ -1690,7 +1690,7 @@
"") "")
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx,!dax,!dax") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx,!dax,!dax")
(sign_extend:SI (sign_extend:SI
(match_operand:HI 1 "general_operand" "0,dax,0,dax")))] (match_operand:HI 1 "general_operand" "0,dax,0,dax")))]
"TARGET_AM33" "TARGET_AM33"
@ -1702,7 +1702,7 @@
[(set_attr "cc" "none_0hit")]) [(set_attr "cc" "none_0hit")])
(define_insn "" (define_insn ""
[(set (match_operand:SI 0 "general_operand" "=dx,dx") [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx")
(sign_extend:SI (sign_extend:SI
(match_operand:HI 1 "general_operand" "0,dx")))] (match_operand:HI 1 "general_operand" "0,dx")))]
"" ""