mn10300.md: Use nonimmediate_operand instead of general_operand on output operands.
authorGraham Stott <grahams@cygnus.co.uk>
Mon, 7 Aug 2000 11:28:02 +0000 (11:28 +0000)
committerAlexandre Oliva <aoliva@gcc.gnu.org>
Mon, 7 Aug 2000 11:28:02 +0000 (11:28 +0000)
* mn10300.md: Use nonimmediate_operand instead of general_operand
on output operands.

From-SVN: r35551

gcc/ChangeLog
gcc/config/mn10300/mn10300.md

index 44275901e0a4624b1e067e3e3643acd1f12dd9c8..9bf7e3c55ee16b4e157c65e2f77e0f3b4683812e 100644 (file)
@@ -1,5 +1,8 @@
 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.
 
 2000-08-07  Alexandre Oliva  <aoliva@redhat.com>
index 125815b10373a55a9cbe167258fb76fe1cfb6681..b3bff0eec3b12f308c35d43ea09f606e19a8daf3 100644 (file)
@@ -56,7 +56,7 @@
 }")
 
 (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"))]
   "TARGET_AM33
    && (register_operand (operands[0], QImode)
@@ -99,7 +99,7 @@
   [(set_attr "cc" "none,clobber,none_0hit,none_0hit,none_0hit")])
 
 (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"))]
   "register_operand (operands[0], QImode)
    || register_operand (operands[1], QImode)"
 }")
 
 (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"))]
   "TARGET_AM33
    && (register_operand (operands[0], HImode)
   [(set_attr "cc" "none,clobber,none_0hit,none_0hit,none_0hit")])
 
 (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"))]
   "register_operand (operands[0], HImode)
    || register_operand (operands[1], HImode)"
 }")
 
 (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")
        (match_operand:SI 1 "general_operand"
                                "0,0,I,I,dx,ax,dx,ax,dixm,aixm,dixm,aixm,!*y,axR"))]
 }")
 
 (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"))]
   "register_operand (operands[0], SFmode)
    || register_operand (operands[1], SFmode)"
 }")
 
 (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")
        (match_operand:DI 1 "general_operand"
                                "0,0,I,I,dx,ax,dx,ax,dxim,axim,dxim,axim"))]
 }")
 
 (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")
        (match_operand:DF 1 "general_operand"
                                "0,0,G,G,dx,ax,dx,ax,dxFm,axFm,dxFm,axFm"))]
   [(set_attr "cc" "set_zn")])
 
 (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")
                 (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)))]
   ""
   "*
   [(set_attr "cc" "set_zn")])
 
 (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")
                 (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)))]
   ""
   "*
 ;; and storing the register, but they don't need a scratch register
 ;; which may allow for better code generation.
 (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
   [(set_attr "cc" "clobber")])
 
 (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
   [(set_attr "cc" "clobber,none_0hit")])
 
 (define_insn ""
-  [(set (match_operand:QI 0 "general_operand" "+R,d")
+  [(set (match_operand:QI 0 "nonimmediate_operand" "+R,d")
        (subreg:QI
          (and:SI (subreg:SI (match_dup 0) 0)
                  (match_operand:SI 1 "const_int_operand" "i,i")) 0))]
   [(set_attr "cc" "clobber,set_znv")])
 
 (define_insn ""
-  [(set (match_operand:QI 0 "general_operand" "+R,d")
+  [(set (match_operand:QI 0 "nonimmediate_operand" "+R,d")
        (subreg:QI
          (ior:SI (subreg:SI (match_dup 0) 0)
                  (match_operand:SI 1 "const_int_operand" "i,i")) 0))]
   "")
 
 (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
         (match_operand:QI 1 "general_operand" "0,dax,m,0,dax,m")))]
   "TARGET_AM33"
   [(set_attr "cc" "none_0hit")])
 
 (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
         (match_operand:QI 1 "general_operand" "0,d,m")))]
   ""
   "")
 
 (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
         (match_operand:HI 1 "general_operand" "0,dax,m,0,dax,m")))]
   "TARGET_AM33"
   [(set_attr "cc" "none_0hit")])
 
 (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
         (match_operand:HI 1 "general_operand" "0,dx,m")))]
   ""
   "")
 
 (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
         (match_operand:QI 1 "general_operand" "0,dx,0,dax")))]
   "TARGET_AM33"
   [(set_attr "cc" "none_0hit")])
 
 (define_insn ""
-  [(set (match_operand:SI 0 "general_operand" "=dx,dx")
+  [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx")
        (sign_extend:SI
         (match_operand:QI 1 "general_operand" "0,dx")))]
   ""
   "")
 
 (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
         (match_operand:HI 1 "general_operand" "0,dax,0,dax")))]
   "TARGET_AM33"
   [(set_attr "cc" "none_0hit")])
 
 (define_insn ""
-  [(set (match_operand:SI 0 "general_operand" "=dx,dx")
+  [(set (match_operand:SI 0 "nonimmediate_operand" "=dx,dx")
        (sign_extend:SI
         (match_operand:HI 1 "general_operand" "0,dx")))]
   ""