diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/m68k/m68k.c | 2 | ||||
-rw-r--r-- | gcc/config/m68k/m68k.md | 604 |
3 files changed, 309 insertions, 303 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index be0e64a..7995bfb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2001-07-30 Roman Zippel <zippel@linux-m68k.org> + + * config/m68k/m68k.md: Replace all general_operand with + nonimmediate_operand for all destinations. + * config/m68k/m68k.c (not_sp_operand): Likewise. + Mon Jul 30 23:20:34 EDT 2001 John Wehle (john@feith.com) * flow.c (merge_blocks): Return 1 if an extra jump is inserted. diff --git a/gcc/config/m68k/m68k.c b/gcc/config/m68k/m68k.c index 493e770..46aeea0 100644 --- a/gcc/config/m68k/m68k.c +++ b/gcc/config/m68k/m68k.c @@ -1494,7 +1494,7 @@ not_sp_operand (op, mode) register rtx op; enum machine_mode mode; { - return op != stack_pointer_rtx && general_operand (op, mode); + return op != stack_pointer_rtx && nonimmediate_operand (op, mode); } /* Return TRUE if X is a valid comparison operator for the dbcc diff --git a/gcc/config/m68k/m68k.md b/gcc/config/m68k/m68k.md index f56e354..799284b 100644 --- a/gcc/config/m68k/m68k.md +++ b/gcc/config/m68k/m68k.md @@ -885,7 +885,7 @@ ;This is never used. ;(define_insn "swapsi" -; [(set (match_operand:SI 0 "general_operand" "+r") +; [(set (match_operand:SI 0 "nonimmediate_operand" "+r") ; (match_operand:SI 1 "general_operand" "+r")) ; (set (match_dup 1) (match_dup 0))] ; "" @@ -896,7 +896,7 @@ ;; into a data reg with moveq in order to store it elsewhere. (define_insn "movsi_const0" - [(set (match_operand:SI 0 "general_operand" "=g") + [(set (match_operand:SI 0 "nonimmediate_operand" "=g") (const_int 0))] ;; clr insns on 68000 read before writing. ;; This isn't so on the 68010, but we have no TARGET_68010. @@ -943,7 +943,7 @@ ;; In both the PIC and non-PIC cases the patterns generated will ;; matched by the next define_insn. (define_expand "movsi" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (match_operand:SI 1 "general_operand" ""))] "" " @@ -977,7 +977,7 @@ ;; Notes: make sure no alternative allows g vs g. ;; We don't allow f-regs since fixed point cannot go in them. ;; We do allow y and x regs since fixed point is allowed in them. - [(set (match_operand:SI 0 "general_operand" "=g,d,a<,y,!*x*r*m") + [(set (match_operand:SI 0 "nonimmediate_operand" "=g,d,a<,y,!*x*r*m") (match_operand:SI 1 "general_src_operand" "daymSKT,n,i,g,*x*r*m"))] "!TARGET_5200" @@ -991,7 +991,7 @@ }") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=r<Q>,g") + [(set (match_operand:SI 0 "nonimmediate_operand" "=r<Q>,g") (match_operand:SI 1 "general_operand" "g,r<Q>"))] "TARGET_5200" "* return output_move_simode (operands);") @@ -999,7 +999,7 @@ ;; Special case of fullword move, where we need to get a non-GOT PIC ;; reference into an address register. (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=a<") + [(set (match_operand:SI 0 "nonimmediate_operand" "=a<") (match_operand:SI 1 "pcrel_address" ""))] "TARGET_PCREL" "* @@ -1010,87 +1010,87 @@ }") (define_expand "movhi" - [(set (match_operand:HI 0 "general_operand" "") + [(set (match_operand:HI 0 "nonimmediate_operand" "") (match_operand:HI 1 "general_operand" ""))] "" "") (define_insn "" - [(set (match_operand:HI 0 "general_operand" "=g") + [(set (match_operand:HI 0 "nonimmediate_operand" "=g") (match_operand:HI 1 "general_src_operand" "gS"))] "!TARGET_5200" "* return output_move_himode (operands);") (define_insn "" - [(set (match_operand:HI 0 "general_operand" "=r<Q>,g") + [(set (match_operand:HI 0 "nonimmediate_operand" "=r<Q>,g") (match_operand:HI 1 "general_operand" "g,r<Q>"))] "TARGET_5200" "* return output_move_himode (operands);") (define_expand "movstricthi" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "")) (match_operand:HI 1 "general_src_operand" ""))] "" "") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+dm")) (match_operand:HI 1 "general_src_operand" "rmSn"))] "!TARGET_5200" "* return output_move_stricthi (operands);") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+d,m")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+d,m")) (match_operand:HI 1 "general_src_operand" "rmn,r"))] "TARGET_5200" "* return output_move_stricthi (operands);") (define_expand "movqi" - [(set (match_operand:QI 0 "general_operand" "") + [(set (match_operand:QI 0 "nonimmediate_operand" "") (match_operand:QI 1 "general_src_operand" ""))] "" "") (define_insn "" - [(set (match_operand:QI 0 "general_operand" "=d,*a,m") + [(set (match_operand:QI 0 "nonimmediate_operand" "=d,*a,m") (match_operand:QI 1 "general_src_operand" "dmSi*a,di*a,dmSi"))] "!TARGET_5200" "* return output_move_qimode (operands);") (define_insn "" - [(set (match_operand:QI 0 "general_operand" "=d<Q>,dm,d*a") + [(set (match_operand:QI 0 "nonimmediate_operand" "=d<Q>,dm,d*a") (match_operand:QI 1 "general_src_operand" "dmi,d<Q>,di*a"))] "TARGET_5200" "* return output_move_qimode (operands);") (define_expand "movstrictqi" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "")) (match_operand:QI 1 "general_src_operand" ""))] "" "") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+dm")) (match_operand:QI 1 "general_src_operand" "dmSn"))] "!TARGET_5200" "* return output_move_strictqi (operands);") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+d,m")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+d,m")) (match_operand:QI 1 "general_src_operand" "dmn,d"))] "TARGET_5200" "* return output_move_strictqi (operands);") (define_expand "movsf" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (match_operand:SF 1 "general_operand" ""))] "" "") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=rmf,x,y,rm,!x,!rm") + [(set (match_operand:SF 0 "nonimmediate_operand" "=rmf,x,y,rm,!x,!rm") (match_operand:SF 1 "general_operand" "rmfF,xH,rmF,y,rm,x"))] -; [(set (match_operand:SF 0 "general_operand" "=rmf") +; [(set (match_operand:SF 0 "nonimmediate_operand" "=rmf") ; (match_operand:SF 1 "general_operand" "rmfF"))] "!TARGET_5200" "* @@ -1170,23 +1170,23 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=r,g") + [(set (match_operand:SF 0 "nonimmediate_operand" "=r,g") (match_operand:SF 1 "general_operand" "g,r"))] "TARGET_5200" "* return \"move%.l %1,%0\";") (define_expand "movdf" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (match_operand:DF 1 "general_operand" ""))] "" "") (define_insn "" - [(set (match_operand:DF 0 "general_operand" + [(set (match_operand:DF 0 "nonimmediate_operand" "=*rm,*rf,*rf,&*rof<>,y,*rm,x,!x,!*rm") (match_operand:DF 1 "general_operand" "*rf,m,0,*rofE<>,*rmE,y,xH,*rm,x"))] -; [(set (match_operand:DF 0 "general_operand" "=rm,&rf,&rof<>") +; [(set (match_operand:DF 0 "nonimmediate_operand" "=rm,&rf,&rof<>") ; (match_operand:DF 1 "general_operand" "rf,m,rofF<>"))] "!TARGET_5200" "* @@ -1239,7 +1239,7 @@ }") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=r,g") + [(set (match_operand:DF 0 "nonimmediate_operand" "=r,g") (match_operand:DF 1 "general_operand" "g,r"))] "TARGET_5200" "* return output_move_double (operands);") @@ -1358,7 +1358,7 @@ (define_expand "movdi" ;; Let's see if it really still needs to handle fp regs, and, if so, why. - [(set (match_operand:DI 0 "general_operand" "") + [(set (match_operand:DI 0 "nonimmediate_operand" "") (match_operand:DI 1 "general_operand" ""))] "" "") @@ -1366,11 +1366,11 @@ ;; movdi can apply to fp regs in some cases (define_insn "" ;; Let's see if it really still needs to handle fp regs, and, if so, why. - [(set (match_operand:DI 0 "general_operand" "=rm,r,&ro<>,y,rm,!*x,!rm") + [(set (match_operand:DI 0 "nonimmediate_operand" "=rm,r,&ro<>,y,rm,!*x,!rm") (match_operand:DI 1 "general_operand" "rF,m,roi<>F,rmiF,y,rmF,*x"))] -; [(set (match_operand:DI 0 "general_operand" "=rm,&r,&ro<>,!&rm,!&f,y,rm,x,!x,!rm") +; [(set (match_operand:DI 0 "nonimmediate_operand" "=rm,&r,&ro<>,!&rm,!&f,y,rm,x,!x,!rm") ; (match_operand:DI 1 "general_operand" "r,m,roi<>,fF,rfmF,rmi,y,rm,x"))] -; [(set (match_operand:DI 0 "general_operand" "=rm,&rf,&ro<>,!&rm,!&f") +; [(set (match_operand:DI 0 "nonimmediate_operand" "=rm,&rf,&ro<>,!&rm,!&f") ; (match_operand:DI 1 "general_operand" "r,m,roi<>,fF,rfF"))] "!TARGET_5200" "* @@ -1410,7 +1410,7 @@ }") (define_insn "" - [(set (match_operand:DI 0 "general_operand" "=r,g") + [(set (match_operand:DI 0 "nonimmediate_operand" "=r,g") (match_operand:DI 1 "general_operand" "g,r"))] "TARGET_5200" "* return output_move_double (operands);") @@ -1428,7 +1428,7 @@ ;; truncation instructions (define_insn "truncsiqi2" - [(set (match_operand:QI 0 "general_operand" "=dm,d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm,d") (truncate:QI (match_operand:SI 1 "general_src_operand" "doJS,i")))] "" @@ -1447,7 +1447,7 @@ }") (define_insn "trunchiqi2" - [(set (match_operand:QI 0 "general_operand" "=dm,d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm,d") (truncate:QI (match_operand:HI 1 "general_src_operand" "doJS,i")))] "" @@ -1475,7 +1475,7 @@ }") (define_insn "truncsihi2" - [(set (match_operand:HI 0 "general_operand" "=dm,d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm,d") (truncate:HI (match_operand:SI 1 "general_src_operand" "roJS,i")))] "" @@ -1496,7 +1496,7 @@ ;; zero extension instructions (define_insn "zero_extendqidi2" - [(set (match_operand:DI 0 "general_operand" "=&d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=&d") (zero_extend:DI (match_operand:QI 1 "general_operand" "dm")))] "" "* @@ -1507,7 +1507,7 @@ }") (define_insn "zero_extendhidi2" - [(set (match_operand:DI 0 "general_operand" "=&d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=&d") (zero_extend:DI (match_operand:HI 1 "general_operand" "rm")))] "" "* @@ -1519,7 +1519,7 @@ ;; this is the canonical form for (lshiftrt:DI x 32) (define_insn "zero_extendsidi2" - [(set (match_operand:DI 0 "general_operand" "=rm") + [(set (match_operand:DI 0 "nonimmediate_operand" "=rm") (zero_extend:DI (match_operand:SI 1 "general_operand" "rm")))] "" "* @@ -1584,7 +1584,7 @@ ;; of this case will result in worse code than the uncombined patterns. (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=do<>,d<") + [(set (match_operand:SI 0 "nonimmediate_operand" "=do<>,d<") (zero_extend:SI (match_operand:HI 1 "nonimmediate_src_operand" "r,mS")))] "GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM" "* @@ -1613,7 +1613,7 @@ }") (define_insn "" - [(set (match_operand:HI 0 "general_operand" "=do<>,d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=do<>,d") (zero_extend:HI (match_operand:QI 1 "nonimmediate_src_operand" "d,mS")))] "GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM" "* @@ -1654,7 +1654,7 @@ }") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=do<>,d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=do<>,d") (zero_extend:SI (match_operand:QI 1 "nonimmediate_src_operand" "d,mS")))] "GET_CODE (operands[0]) != MEM || GET_CODE (operands[1]) != MEM" "* @@ -1707,7 +1707,7 @@ ;; sign extension instructions (define_insn "extendqidi2" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (sign_extend:DI (match_operand:QI 1 "general_src_operand" "rmS")))] "" "* @@ -1721,7 +1721,7 @@ }") (define_insn "extendhidi2" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (sign_extend:DI (match_operand:HI 1 "general_src_operand" "rmS")))] "" @@ -1736,7 +1736,7 @@ }") (define_insn "extendsidi2" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (sign_extend:DI (match_operand:SI 1 "general_operand" "rm")))] "" @@ -1783,7 +1783,7 @@ }") (define_insn "extendhisi2" - [(set (match_operand:SI 0 "general_operand" "=*d,a") + [(set (match_operand:SI 0 "nonimmediate_operand" "=*d,a") (sign_extend:SI (match_operand:HI 1 "nonimmediate_src_operand" "0,rmS")))] "" @@ -1795,13 +1795,13 @@ }") (define_insn "extendqihi2" - [(set (match_operand:HI 0 "general_operand" "=d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=d") (sign_extend:HI (match_operand:QI 1 "nonimmediate_operand" "0")))] "" "ext%.w %0") (define_insn "extendqisi2" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (sign_extend:SI (match_operand:QI 1 "nonimmediate_operand" "0")))] "TARGET_68020 || TARGET_5200" "extb%.l %0") @@ -1809,21 +1809,21 @@ ;; Conversions between float and double. (define_expand "extendsfdf2" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (float_extend:DF (match_operand:SF 1 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=x,y") + [(set (match_operand:DF 0 "nonimmediate_operand" "=x,y") (float_extend:DF (match_operand:SF 1 "general_operand" "xH,rmF")))] "TARGET_FPA" "fpstod %w1,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=*fdm,f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=*fdm,f") (float_extend:DF (match_operand:SF 1 "general_operand" "f,dmF")))] "TARGET_68881" @@ -1856,14 +1856,14 @@ ;; sure of truncating in that case. ;; But on the Sun FPA, we can be sure. (define_expand "truncdfsf2" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (float_truncate:SF (match_operand:DF 1 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=x,y") + [(set (match_operand:SF 0 "nonimmediate_operand" "=x,y") (float_truncate:SF (match_operand:DF 1 "general_operand" "xH,rmF")))] "TARGET_FPA" @@ -1871,7 +1871,7 @@ ;; On the '040 we can truncate in a register accurately and easily. (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (float_truncate:SF (match_operand:DF 1 "general_operand" "fmG")))] "TARGET_68040_ONLY" @@ -1883,7 +1883,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=dm") + [(set (match_operand:SF 0 "nonimmediate_operand" "=dm") (float_truncate:SF (match_operand:DF 1 "general_operand" "f")))] "TARGET_68881" @@ -1898,61 +1898,61 @@ ;; rather than as QImode or HImode. (define_expand "floatsisf2" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (float:SF (match_operand:SI 1 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=y,x") + [(set (match_operand:SF 0 "nonimmediate_operand" "=y,x") (float:SF (match_operand:SI 1 "general_operand" "rmi,x")))] "TARGET_FPA" "fpltos %1,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (float:SF (match_operand:SI 1 "general_operand" "dmi")))] "TARGET_68881" "f%$move%.l %1,%0") (define_expand "floatsidf2" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (float:DF (match_operand:SI 1 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=y,x") + [(set (match_operand:DF 0 "nonimmediate_operand" "=y,x") (float:DF (match_operand:SI 1 "general_operand" "rmi,x")))] "TARGET_FPA" "fpltod %1,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (float:DF (match_operand:SI 1 "general_operand" "dmi")))] "TARGET_68881" "f%&move%.l %1,%0") (define_insn "floathisf2" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (float:SF (match_operand:HI 1 "general_operand" "dmn")))] "TARGET_68881" "f%$move%.w %1,%0") (define_insn "floathidf2" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (float:DF (match_operand:HI 1 "general_operand" "dmn")))] "TARGET_68881" "fmove%.w %1,%0") (define_insn "floatqisf2" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (float:SF (match_operand:QI 1 "general_operand" "dmn")))] "TARGET_68881" "fmove%.b %1,%0") (define_insn "floatqidf2" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (float:DF (match_operand:QI 1 "general_operand" "dmn")))] "TARGET_68881" "f%&move%.b %1,%0") @@ -1963,7 +1963,7 @@ ;; than calling the subroutines fixsfsi or fixdfsi. (define_insn "fix_truncdfsi2" - [(set (match_operand:SI 0 "general_operand" "=dm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") (fix:SI (fix:DF (match_operand:DF 1 "register_operand" "f")))) (clobber (match_scratch:SI 2 "=d")) (clobber (match_scratch:SI 3 "=d"))] @@ -1975,7 +1975,7 @@ }") (define_insn "fix_truncdfhi2" - [(set (match_operand:HI 0 "general_operand" "=dm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") (fix:HI (fix:DF (match_operand:DF 1 "register_operand" "f")))) (clobber (match_scratch:SI 2 "=d")) (clobber (match_scratch:SI 3 "=d"))] @@ -1987,7 +1987,7 @@ }") (define_insn "fix_truncdfqi2" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (fix:QI (fix:DF (match_operand:DF 1 "register_operand" "f")))) (clobber (match_scratch:SI 2 "=d")) (clobber (match_scratch:SI 3 "=d"))] @@ -2002,7 +2002,7 @@ ;; This is the first stage of converting it to an integer type. (define_insn "ftruncdf2" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (fix:DF (match_operand:DF 1 "general_operand" "fFm")))] "TARGET_68881 && !TARGET_68040" "* @@ -2013,7 +2013,7 @@ }") (define_insn "ftruncsf2" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (fix:SF (match_operand:SF 1 "general_operand" "dfFm")))] "TARGET_68881 && !TARGET_68040" "* @@ -2026,37 +2026,37 @@ ;; Convert a float whose value is an integer ;; to an actual integer. Second stage of converting float to integer type. (define_insn "fixsfqi2" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (fix:QI (match_operand:SF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.b %1,%0") (define_insn "fixsfhi2" - [(set (match_operand:HI 0 "general_operand" "=dm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") (fix:HI (match_operand:SF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.w %1,%0") (define_insn "fixsfsi2" - [(set (match_operand:SI 0 "general_operand" "=dm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") (fix:SI (match_operand:SF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.l %1,%0") (define_insn "fixdfqi2" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (fix:QI (match_operand:DF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.b %1,%0") (define_insn "fixdfhi2" - [(set (match_operand:HI 0 "general_operand" "=dm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") (fix:HI (match_operand:DF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.w %1,%0") (define_insn "fixdfsi2" - [(set (match_operand:SI 0 "general_operand" "=dm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") (fix:SI (match_operand:DF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.l %1,%0") @@ -2065,13 +2065,13 @@ ;; On the Sun FPA, this is done in one step. (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=x,y") + [(set (match_operand:SI 0 "nonimmediate_operand" "=x,y") (fix:SI (fix:SF (match_operand:SF 1 "general_operand" "xH,rmF"))))] "TARGET_FPA" "fpstol %w1,%0") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=x,y") + [(set (match_operand:SI 0 "nonimmediate_operand" "=x,y") (fix:SI (fix:DF (match_operand:DF 1 "general_operand" "xH,rmF"))))] "TARGET_FPA" "fpdtol %y1,%0") @@ -2079,7 +2079,7 @@ ;; add instructions (define_insn "adddi_lshrdi_63" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (plus:DI (lshiftrt:DI (match_operand:DI 1 "general_operand" "rm") (const_int 63)) (match_dup 1))) @@ -2113,7 +2113,7 @@ }") (define_insn "adddi_sexthishl32" - [(set (match_operand:DI 0 "general_operand" "=o,a,*d,*d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=o,a,*d,*d") (plus:DI (ashift:DI (sign_extend:DI (match_operand:HI 1 "general_operand" "rm,rm,rm,rm")) (const_int 32)) @@ -2132,7 +2132,7 @@ } ") (define_insn "adddi_dilshr32" - [(set (match_operand:DI 0 "general_operand" "=d,o") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d,o") ;; (plus:DI (match_operand:DI 2 "general_operand" "%0") ;; (lshiftrt:DI (match_operand:DI 1 "general_operand" "ro") ;; (const_int 32))))] @@ -2151,7 +2151,7 @@ } ") (define_insn "adddi_dishl32" - [(set (match_operand:DI 0 "general_operand" "=r,o") + [(set (match_operand:DI 0 "nonimmediate_operand" "=r,o") ;; (plus:DI (match_operand:DI 2 "general_operand" "%0") ;; (ashift:DI (match_operand:DI 1 "general_operand" "ro") ;; (const_int 32))))] @@ -2170,7 +2170,7 @@ } ") (define_insn "adddi3" - [(set (match_operand:DI 0 "general_operand" "=<,o<>,d,d,d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=<,o<>,d,d,d") (plus:DI (match_operand:DI 1 "general_operand" "%0,0,0,0,0") (match_operand:DI 2 "general_operand" "<,d,no>,d,a"))) (clobber (match_scratch:SI 3 "=X,&d,&d,X,&d"))] @@ -2262,7 +2262,7 @@ } ") (define_insn "addsi_lshrsi_31" - [(set (match_operand:SI 0 "general_operand" "=dm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") (plus:SI (lshiftrt:SI (match_operand:SI 1 "general_operand" "rm") (const_int 31)) (match_dup 1)))] @@ -2295,7 +2295,7 @@ }") (define_expand "addsi3" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (plus:SI (match_operand:SI 1 "general_operand" "") (match_operand:SI 2 "general_src_operand" "")))] "" @@ -2306,7 +2306,7 @@ ;; This is needed since they are not themselves reloaded, ;; so commutativity won't apply to them. (define_insn "*addsi3_internal" - [(set (match_operand:SI 0 "general_operand" "=m,?a,?a,d,a") + [(set (match_operand:SI 0 "nonimmediate_operand" "=m,?a,?a,d,a") (plus:SI (match_operand:SI 1 "general_operand" "%0,a,rJK,0,0") (match_operand:SI 2 "general_src_operand" "dIKLT,rJK,a,mSrIKLT,mSrIKLs")))] @@ -2315,14 +2315,14 @@ "* return output_addsi3 (operands);") (define_insn "*addsi3_5200" - [(set (match_operand:SI 0 "general_operand" "=m,?a,?a,r") + [(set (match_operand:SI 0 "nonimmediate_operand" "=m,?a,?a,r") (plus:SI (match_operand:SI 1 "general_operand" "%0,a,rJK,0") (match_operand:SI 2 "general_src_operand" "d,rJK,a,mrIKLs")))] "TARGET_5200" "* return output_addsi3 (operands);") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=a") + [(set (match_operand:SI 0 "nonimmediate_operand" "=a") (plus:SI (match_operand:SI 1 "general_operand" "0") (sign_extend:SI (match_operand:HI 2 "nonimmediate_src_operand" "rmS"))))] @@ -2330,7 +2330,7 @@ "add%.w %2,%0") (define_insn "addhi3" - [(set (match_operand:HI 0 "general_operand" "=m,r") + [(set (match_operand:HI 0 "nonimmediate_operand" "=m,r") (plus:HI (match_operand:HI 1 "general_operand" "%0,0") (match_operand:HI 2 "general_src_operand" "dn,rmSn")))] "!TARGET_5200" @@ -2392,7 +2392,7 @@ ;; operand in both positions. (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+m,d")) (plus:HI (match_dup 0) (match_operand:HI 1 "general_src_operand" "dn,rmSn")))] "!TARGET_5200" @@ -2448,7 +2448,7 @@ }") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+m,d")) (plus:HI (match_operand:HI 1 "general_src_operand" "dn,rmSn") (match_dup 0)))] "!TARGET_5200" @@ -2504,7 +2504,7 @@ }") (define_insn "addqi3" - [(set (match_operand:QI 0 "general_operand" "=m,d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=m,d") (plus:QI (match_operand:QI 1 "general_operand" "%0,0") (match_operand:QI 2 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" @@ -2530,7 +2530,7 @@ }") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+m,d")) (plus:QI (match_dup 0) (match_operand:QI 1 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" @@ -2556,7 +2556,7 @@ }") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+m,d")) (plus:QI (match_operand:QI 1 "general_src_operand" "dn,dmSn") (match_dup 0)))] "!TARGET_5200" @@ -2582,14 +2582,14 @@ }") (define_expand "adddf3" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (plus:DF (match_operand:DF 1 "general_operand" "") (match_operand:DF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=x,y") + [(set (match_operand:DF 0 "nonimmediate_operand" "=x,y") (plus:DF (match_operand:DF 1 "general_operand" "%xH,y") (match_operand:DF 2 "general_operand" "xH,dmF")))] "TARGET_FPA" @@ -2605,28 +2605,28 @@ }") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (plus:DF (float:DF (match_operand:SI 2 "general_operand" "dmi")) (match_operand:DF 1 "general_operand" "0")))] "TARGET_68881" "f%&add%.l %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (plus:DF (float:DF (match_operand:HI 2 "general_operand" "dmn")) (match_operand:DF 1 "general_operand" "0")))] "TARGET_68881" "f%&add%.w %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (plus:DF (float:DF (match_operand:QI 2 "general_operand" "dmn")) (match_operand:DF 1 "general_operand" "0")))] "TARGET_68881" "f%&add%.b %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (plus:DF (match_operand:DF 1 "general_operand" "%0") (match_operand:DF 2 "general_operand" "fmG")))] "TARGET_68881" @@ -2638,14 +2638,14 @@ }") (define_expand "addsf3" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (plus:SF (match_operand:SF 1 "general_operand" "") (match_operand:SF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=x,y") + [(set (match_operand:SF 0 "nonimmediate_operand" "=x,y") (plus:SF (match_operand:SF 1 "general_operand" "%xH,y") (match_operand:SF 2 "general_operand" "xH,rmF")))] "TARGET_FPA" @@ -2661,28 +2661,28 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (plus:SF (float:SF (match_operand:SI 2 "general_operand" "dmi")) (match_operand:SF 1 "general_operand" "0")))] "TARGET_68881" "f%$add%.l %2,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (plus:SF (float:SF (match_operand:HI 2 "general_operand" "dmn")) (match_operand:SF 1 "general_operand" "0")))] "TARGET_68881" "f%$add%.w %2,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (plus:SF (float:SF (match_operand:QI 2 "general_operand" "dmn")) (match_operand:SF 1 "general_operand" "0")))] "TARGET_68881" "f%$add%.b %2,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (plus:SF (match_operand:SF 1 "general_operand" "%0") (match_operand:SF 2 "general_operand" "fdmF")))] "TARGET_68881" @@ -2696,7 +2696,7 @@ ;; subtract instructions (define_insn "subdi_sexthishl32" - [(set (match_operand:DI 0 "general_operand" "=o,a,*d,*d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=o,a,*d,*d") (minus:DI (match_operand:DI 1 "general_operand" "0,0,0,0") (ashift:DI (sign_extend:DI (match_operand:HI 2 "general_operand" "rm,rm,rm,rm")) (const_int 32)))) @@ -2714,7 +2714,7 @@ } ") (define_insn "subdi_dishl32" - [(set (match_operand:DI 0 "general_operand" "+ro") + [(set (match_operand:DI 0 "nonimmediate_operand" "+ro") (minus:DI (match_dup 0) (ashift:DI (match_operand:DI 1 "general_operand" "ro") (const_int 32))))] @@ -2730,7 +2730,7 @@ } ") (define_insn "subdi3" - [(set (match_operand:DI 0 "general_operand" "=<,o<>,d,d,d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=<,o<>,d,d,d") (minus:DI (match_operand:DI 1 "general_operand" "0,0,0,0,0") (match_operand:DI 2 "general_operand" "<,d,no>,d,a"))) (clobber (match_scratch:SI 3 "=X,&d,&d,X,&d"))] @@ -2824,14 +2824,14 @@ } ") (define_insn "subsi3" - [(set (match_operand:SI 0 "general_operand" "=m,d,a") + [(set (match_operand:SI 0 "nonimmediate_operand" "=m,d,a") (minus:SI (match_operand:SI 1 "general_operand" "0,0,0") (match_operand:SI 2 "general_src_operand" "dT,mSrT,mSrs")))] "" "sub%.l %2,%0") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=a") + [(set (match_operand:SI 0 "nonimmediate_operand" "=a") (minus:SI (match_operand:SI 1 "general_operand" "0") (sign_extend:SI (match_operand:HI 2 "nonimmediate_src_operand" "rmS"))))] @@ -2839,42 +2839,42 @@ "sub%.w %2,%0") (define_insn "subhi3" - [(set (match_operand:HI 0 "general_operand" "=m,r") + [(set (match_operand:HI 0 "nonimmediate_operand" "=m,r") (minus:HI (match_operand:HI 1 "general_operand" "0,0") (match_operand:HI 2 "general_src_operand" "dn,rmSn")))] "!TARGET_5200" "sub%.w %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+m,d")) (minus:HI (match_dup 0) (match_operand:HI 1 "general_src_operand" "dn,rmSn")))] "!TARGET_5200" "sub%.w %1,%0") (define_insn "subqi3" - [(set (match_operand:QI 0 "general_operand" "=m,d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=m,d") (minus:QI (match_operand:QI 1 "general_operand" "0,0") (match_operand:QI 2 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "sub%.b %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+m,d")) (minus:QI (match_dup 0) (match_operand:QI 1 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "sub%.b %1,%0") (define_expand "subdf3" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (minus:DF (match_operand:DF 1 "general_operand" "") (match_operand:DF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=x,y,y") + [(set (match_operand:DF 0 "nonimmediate_operand" "=x,y,y") (minus:DF (match_operand:DF 1 "general_operand" "xH,y,dmF") (match_operand:DF 2 "general_operand" "xH,dmF,0")))] "TARGET_FPA" @@ -2890,28 +2890,28 @@ }") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (minus:DF (match_operand:DF 1 "general_operand" "0") (float:DF (match_operand:SI 2 "general_operand" "dmi"))))] "TARGET_68881" "f%&sub%.l %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (minus:DF (match_operand:DF 1 "general_operand" "0") (float:DF (match_operand:HI 2 "general_operand" "dmn"))))] "TARGET_68881" "f%&sub%.w %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (minus:DF (match_operand:DF 1 "general_operand" "0") (float:DF (match_operand:QI 2 "general_operand" "dmn"))))] "TARGET_68881" "f%&sub%.b %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (minus:DF (match_operand:DF 1 "general_operand" "0") (match_operand:DF 2 "general_operand" "fmG")))] "TARGET_68881" @@ -2923,14 +2923,14 @@ }") (define_expand "subsf3" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (minus:SF (match_operand:SF 1 "general_operand" "") (match_operand:SF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=x,y,y") + [(set (match_operand:SF 0 "nonimmediate_operand" "=x,y,y") (minus:SF (match_operand:SF 1 "general_operand" "xH,y,rmF") (match_operand:SF 2 "general_operand" "xH,rmF,0")))] "TARGET_FPA" @@ -2946,28 +2946,28 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (minus:SF (match_operand:SF 1 "general_operand" "0") (float:SF (match_operand:SI 2 "general_operand" "dmi"))))] "TARGET_68881" "f%$sub%.l %2,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (minus:SF (match_operand:SF 1 "general_operand" "0") (float:SF (match_operand:HI 2 "general_operand" "dmn"))))] "TARGET_68881" "f%$sub%.w %2,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (minus:SF (match_operand:SF 1 "general_operand" "0") (float:SF (match_operand:QI 2 "general_operand" "dmn"))))] "TARGET_68881" "f%$sub%.b %2,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (minus:SF (match_operand:SF 1 "general_operand" "0") (match_operand:SF 2 "general_operand" "fdmF")))] "TARGET_68881" @@ -2981,7 +2981,7 @@ ;; multiply instructions (define_insn "mulhi3" - [(set (match_operand:HI 0 "general_operand" "=d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=d") (mult:HI (match_operand:HI 1 "general_operand" "%0") (match_operand:HI 2 "general_src_operand" "dmSn")))] "" @@ -2995,7 +2995,7 @@ }") (define_insn "mulhisi3" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (mult:SI (sign_extend:SI (match_operand:HI 1 "nonimmediate_operand" "%0")) (sign_extend:SI @@ -3011,7 +3011,7 @@ }") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (mult:SI (sign_extend:SI (match_operand:HI 1 "nonimmediate_operand" "%0")) (match_operand:SI 2 "const_int_operand" "n")))] @@ -3026,14 +3026,14 @@ }") (define_expand "mulsi3" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (mult:SI (match_operand:SI 1 "general_operand" "") (match_operand:SI 2 "general_operand" "")))] "TARGET_68020 || TARGET_5200" "") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (mult:SI (match_operand:SI 1 "general_operand" "%0") (match_operand:SI 2 "general_src_operand" "dmSTK")))] @@ -3041,14 +3041,14 @@ "muls%.l %2,%0") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (mult:SI (match_operand:SI 1 "general_operand" "%0") (match_operand:SI 2 "general_operand" "d<Q>")))] "TARGET_5200" "muls%.l %2,%0") (define_insn "umulhisi3" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (mult:SI (zero_extend:SI (match_operand:HI 1 "nonimmediate_operand" "%0")) (zero_extend:SI @@ -3064,7 +3064,7 @@ }") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (mult:SI (zero_extend:SI (match_operand:HI 1 "nonimmediate_operand" "%0")) (match_operand:SI 2 "const_int_operand" "n")))] @@ -3247,14 +3247,14 @@ "muls%.l %3,%0:%1") (define_expand "muldf3" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (mult:DF (match_operand:DF 1 "general_operand" "") (match_operand:DF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=x,y") + [(set (match_operand:DF 0 "nonimmediate_operand" "=x,y") (mult:DF (match_operand:DF 1 "general_operand" "%xH,y") (match_operand:DF 2 "general_operand" "xH,rmF")))] "TARGET_FPA" @@ -3272,28 +3272,28 @@ }") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (mult:DF (float:DF (match_operand:SI 2 "general_operand" "dmi")) (match_operand:DF 1 "general_operand" "0")))] "TARGET_68881" "f%&mul%.l %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (mult:DF (float:DF (match_operand:HI 2 "general_operand" "dmn")) (match_operand:DF 1 "general_operand" "0")))] "TARGET_68881" "f%&mul%.w %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (mult:DF (float:DF (match_operand:QI 2 "general_operand" "dmn")) (match_operand:DF 1 "general_operand" "0")))] "TARGET_68881" "f%&mul%.b %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (mult:DF (match_operand:DF 1 "general_operand" "%0") (match_operand:DF 2 "general_operand" "fmG")))] "TARGET_68881" @@ -3312,14 +3312,14 @@ }") (define_expand "mulsf3" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (mult:SF (match_operand:SF 1 "general_operand" "") (match_operand:SF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=x,y") + [(set (match_operand:SF 0 "nonimmediate_operand" "=x,y") (mult:SF (match_operand:SF 1 "general_operand" "%xH,y") (match_operand:SF 2 "general_operand" "xH,rmF")))] "TARGET_FPA" @@ -3337,7 +3337,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (mult:SF (float:SF (match_operand:SI 2 "general_operand" "dmi")) (match_operand:SF 1 "general_operand" "0")))] "TARGET_68881" @@ -3349,7 +3349,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (mult:SF (float:SF (match_operand:HI 2 "general_operand" "dmn")) (match_operand:SF 1 "general_operand" "0")))] "TARGET_68881" @@ -3361,7 +3361,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (mult:SF (float:SF (match_operand:QI 2 "general_operand" "dmn")) (match_operand:SF 1 "general_operand" "0")))] "TARGET_68881" @@ -3373,7 +3373,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (mult:SF (match_operand:SF 1 "general_operand" "%0") (match_operand:SF 2 "general_operand" "fdmF")))] "TARGET_68881" @@ -3398,14 +3398,14 @@ ;; divide instructions (define_expand "divdf3" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (div:DF (match_operand:DF 1 "general_operand" "") (match_operand:DF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=x,y,y") + [(set (match_operand:DF 0 "nonimmediate_operand" "=x,y,y") (div:DF (match_operand:DF 1 "general_operand" "xH,y,rmF") (match_operand:DF 2 "general_operand" "xH,rmF,0")))] "TARGET_FPA" @@ -3421,28 +3421,28 @@ }") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (div:DF (match_operand:DF 1 "general_operand" "0") (float:DF (match_operand:SI 2 "general_operand" "dmi"))))] "TARGET_68881" "f%&div%.l %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (div:DF (match_operand:DF 1 "general_operand" "0") (float:DF (match_operand:HI 2 "general_operand" "dmn"))))] "TARGET_68881" "f%&div%.w %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (div:DF (match_operand:DF 1 "general_operand" "0") (float:DF (match_operand:QI 2 "general_operand" "dmn"))))] "TARGET_68881" "f%&div%.b %2,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (div:DF (match_operand:DF 1 "general_operand" "0") (match_operand:DF 2 "general_operand" "fmG")))] "TARGET_68881" @@ -3454,14 +3454,14 @@ }") (define_expand "divsf3" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (div:SF (match_operand:SF 1 "general_operand" "") (match_operand:SF 2 "general_operand" "")))] "TARGET_68881 || TARGET_FPA" "") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=x,y,y") + [(set (match_operand:SF 0 "nonimmediate_operand" "=x,y,y") (div:SF (match_operand:SF 1 "general_operand" "xH,y,rmF") (match_operand:SF 2 "general_operand" "xH,rmF,0")))] "TARGET_FPA" @@ -3477,7 +3477,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (div:SF (match_operand:SF 1 "general_operand" "0") (float:SF (match_operand:SI 2 "general_operand" "dmi"))))] "TARGET_68881" @@ -3489,7 +3489,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (div:SF (match_operand:SF 1 "general_operand" "0") (float:SF (match_operand:HI 2 "general_operand" "dmn"))))] "TARGET_68881" @@ -3501,7 +3501,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (div:SF (match_operand:SF 1 "general_operand" "0") (float:SF (match_operand:QI 2 "general_operand" "dmn"))))] "TARGET_68881" @@ -3513,7 +3513,7 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (div:SF (match_operand:SF 1 "general_operand" "0") (match_operand:SF 2 "general_operand" "fdmF")))] "TARGET_68881" @@ -3538,10 +3538,10 @@ ;; Remainder instructions. (define_insn "divmodsi4" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (div:SI (match_operand:SI 1 "general_operand" "0") (match_operand:SI 2 "general_src_operand" "dmSTK"))) - (set (match_operand:SI 3 "general_operand" "=d") + (set (match_operand:SI 3 "nonimmediate_operand" "=d") (mod:SI (match_dup 1) (match_dup 2)))] "TARGET_68020 && !TARGET_5200" "* @@ -3553,10 +3553,10 @@ }") (define_insn "udivmodsi4" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (udiv:SI (match_operand:SI 1 "general_operand" "0") (match_operand:SI 2 "general_src_operand" "dmSTK"))) - (set (match_operand:SI 3 "general_operand" "=d") + (set (match_operand:SI 3 "nonimmediate_operand" "=d") (umod:SI (match_dup 1) (match_dup 2)))] "TARGET_68020 && !TARGET_5200" "* @@ -3568,10 +3568,10 @@ }") (define_insn "divmodhi4" - [(set (match_operand:HI 0 "general_operand" "=d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=d") (div:HI (match_operand:HI 1 "general_operand" "0") (match_operand:HI 2 "general_src_operand" "dmSKT"))) - (set (match_operand:HI 3 "general_operand" "=d") + (set (match_operand:HI 3 "nonimmediate_operand" "=d") (mod:HI (match_dup 1) (match_dup 2)))] "!TARGET_5200" "* @@ -3591,10 +3591,10 @@ }") (define_insn "udivmodhi4" - [(set (match_operand:HI 0 "general_operand" "=d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=d") (udiv:HI (match_operand:HI 1 "general_operand" "0") (match_operand:HI 2 "general_src_operand" "dmSKT"))) - (set (match_operand:HI 3 "general_operand" "=d") + (set (match_operand:HI 3 "nonimmediate_operand" "=d") (umod:HI (match_dup 1) (match_dup 2)))] "!TARGET_5200" "* @@ -3617,7 +3617,7 @@ ;; "anddi3" is mainly here to help combine(). (define_insn "anddi3" - [(set (match_operand:DI 0 "general_operand" "=o,d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=o,d") (and:DI (match_operand:DI 1 "general_operand" "%0,0") (match_operand:DI 2 "general_operand" "dn,don")))] "!TARGET_5200" @@ -3711,42 +3711,42 @@ "and%.l %2,%0") (define_insn "andhi3" - [(set (match_operand:HI 0 "general_operand" "=m,d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=m,d") (and:HI (match_operand:HI 1 "general_operand" "%0,0") (match_operand:HI 2 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "and%.w %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+m,d")) (and:HI (match_dup 0) (match_operand:HI 1 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "and%.w %1,%0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+m,d")) (and:HI (match_operand:HI 1 "general_src_operand" "dn,dmSn") (match_dup 0)))] "!TARGET_5200" "and%.w %1,%0") (define_insn "andqi3" - [(set (match_operand:QI 0 "general_operand" "=m,d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=m,d") (and:QI (match_operand:QI 1 "general_operand" "%0,0") (match_operand:QI 2 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "and%.b %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+m,d")) (and:QI (match_dup 0) (match_operand:QI 1 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "and%.b %1,%0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+m,d")) (and:QI (match_operand:QI 1 "general_src_operand" "dn,dmSn") (match_dup 0)))] "!TARGET_5200" @@ -3755,7 +3755,7 @@ ;; inclusive-or instructions (define_insn "iordi_zext" - [(set (match_operand:DI 0 "general_operand" "=o,d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=o,d") (ior:DI (zero_extend:DI (match_operand 1 "general_operand" "dn,dmn")) (match_operand:DI 2 "general_operand" "0,0")))] "!TARGET_5200" @@ -3782,7 +3782,7 @@ ;; "iordi3" is mainly here to help combine(). (define_insn "iordi3" - [(set (match_operand:DI 0 "general_operand" "=o,d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=o,d") (ior:DI (match_operand:DI 1 "general_operand" "%0,0") (match_operand:DI 2 "general_operand" "dn,don")))] "!TARGET_5200" @@ -3852,14 +3852,14 @@ }") (define_expand "iorsi3" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (ior:SI (match_operand:SI 1 "general_operand" "") (match_operand:SI 2 "general_src_operand" "")))] "" "") (define_insn "iorsi3_internal" - [(set (match_operand:SI 0 "general_operand" "=m,d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=m,d") (ior:SI (match_operand:SI 1 "general_operand" "%0,0") (match_operand:SI 2 "general_src_operand" "dKT,dmSMT")))] "! TARGET_5200" @@ -3869,49 +3869,49 @@ }") (define_insn "iorsi3_5200" - [(set (match_operand:SI 0 "general_operand" "=m,d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=m,d") (ior:SI (match_operand:SI 1 "general_operand" "%0,0") (match_operand:SI 2 "general_src_operand" "d,dmsK")))] "TARGET_5200" "or%.l %2,%0") (define_insn "iorhi3" - [(set (match_operand:HI 0 "general_operand" "=m,d") + [(set (match_operand:HI 0 "nonimmediate_operand" "=m,d") (ior:HI (match_operand:HI 1 "general_operand" "%0,0") (match_operand:HI 2 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "or%.w %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+m,d")) (ior:HI (match_dup 0) (match_operand:HI 1 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "or%.w %1,%0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+m,d")) (ior:HI (match_operand:HI 1 "general_src_operand" "dn,dmSn") (match_dup 0)))] "!TARGET_5200" "or%.w %1,%0") (define_insn "iorqi3" - [(set (match_operand:QI 0 "general_operand" "=m,d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=m,d") (ior:QI (match_operand:QI 1 "general_operand" "%0,0") (match_operand:QI 2 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "or%.b %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+m,d")) (ior:QI (match_dup 0) (match_operand:QI 1 "general_src_operand" "dn,dmSn")))] "!TARGET_5200" "or%.b %1,%0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+m,d")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+m,d")) (ior:QI (match_operand:QI 1 "general_src_operand" "dn,dmSn") (match_dup 0)))] "!TARGET_5200" @@ -3921,7 +3921,7 @@ ;; See also ashlsi_16, ashrsi_16 and lshrsi_16. (define_insn "iorsi_zexthi_ashl16" - [(set (match_operand:SI 0 "general_operand" "=&d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=&d") (ior:SI (zero_extend:SI (match_operand:HI 1 "general_operand" "rmn")) (ashift:SI (match_operand:SI 2 "general_operand" "or") (const_int 16))))] @@ -3938,7 +3938,7 @@ }") (define_insn "iorsi_zext" - [(set (match_operand:SI 0 "general_operand" "=o,d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=o,d") (ior:SI (zero_extend:SI (match_operand 1 "general_operand" "dn,dmn")) (match_operand:SI 2 "general_operand" "0,0")))] "!TARGET_5200" @@ -3961,7 +3961,7 @@ ;; "xordi3" is mainly here to help combine(). (define_insn "xordi3" - [(set (match_operand:DI 0 "general_operand" "=od") + [(set (match_operand:DI 0 "nonimmediate_operand" "=od") (xor:DI (match_operand:DI 1 "general_operand" "%0") (match_operand:DI 2 "general_operand" "dn")))] "!TARGET_5200" @@ -4034,14 +4034,14 @@ }") (define_expand "xorsi3" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (xor:SI (match_operand:SI 1 "general_operand" "") (match_operand:SI 2 "general_operand" "")))] "" "") (define_insn "xorsi3_internal" - [(set (match_operand:SI 0 "general_operand" "=do,m") + [(set (match_operand:SI 0 "nonimmediate_operand" "=do,m") (xor:SI (match_operand:SI 1 "general_operand" "%0,0") (match_operand:SI 2 "general_operand" "di,dKT")))] @@ -4052,49 +4052,49 @@ }") (define_insn "xorsi3_5200" - [(set (match_operand:SI 0 "general_operand" "=dm,d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm,d") (xor:SI (match_operand:SI 1 "general_operand" "%0,0") (match_operand:SI 2 "general_operand" "d,Ks")))] "TARGET_5200" "eor%.l %2,%0") (define_insn "xorhi3" - [(set (match_operand:HI 0 "general_operand" "=dm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") (xor:HI (match_operand:HI 1 "general_operand" "%0") (match_operand:HI 2 "general_operand" "dn")))] "!TARGET_5200" "eor%.w %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+dm")) (xor:HI (match_dup 0) (match_operand:HI 1 "general_operand" "dn")))] "!TARGET_5200" "eor%.w %1,%0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+dm")) (xor:HI (match_operand:HI 1 "general_operand" "dn") (match_dup 0)))] "!TARGET_5200" "eor%.w %1,%0") (define_insn "xorqi3" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (xor:QI (match_operand:QI 1 "general_operand" "%0") (match_operand:QI 2 "general_operand" "dn")))] "!TARGET_5200" "eor%.b %2,%0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+dm")) (xor:QI (match_dup 0) (match_operand:QI 1 "general_operand" "dn")))] "!TARGET_5200" "eor%.b %1,%0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+dm")) (xor:QI (match_operand:QI 1 "general_operand" "dn") (match_dup 0)))] "!TARGET_5200" @@ -4103,7 +4103,7 @@ ;; negation instructions (define_expand "negdi2" - [(set (match_operand:DI 0 "general_operand" "") + [(set (match_operand:DI 0 "nonimmediate_operand" "") (neg:DI (match_operand:DI 1 "general_operand" "")))] "" " @@ -4116,7 +4116,7 @@ }") (define_insn "negdi2_internal" - [(set (match_operand:DI 0 "general_operand" "=<,do,!*a") + [(set (match_operand:DI 0 "nonimmediate_operand" "=<,do,!*a") (neg:DI (match_operand:DI 1 "general_operand" "0,0,0")))] "!TARGET_5200" "* @@ -4134,7 +4134,7 @@ } ") (define_insn "negdi2_5200" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (neg:DI (match_operand:DI 1 "general_operand" "0")))] "TARGET_5200" "* @@ -4144,7 +4144,7 @@ } ") (define_expand "negsi2" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (neg:SI (match_operand:SI 1 "general_operand" "")))] "" " @@ -4157,37 +4157,37 @@ }") (define_insn "negsi2_internal" - [(set (match_operand:SI 0 "general_operand" "=dm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") (neg:SI (match_operand:SI 1 "general_operand" "0")))] "!TARGET_5200" "neg%.l %0") (define_insn "negsi2_5200" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (neg:SI (match_operand:SI 1 "general_operand" "0")))] "TARGET_5200" "neg%.l %0") (define_insn "neghi2" - [(set (match_operand:HI 0 "general_operand" "=dm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") (neg:HI (match_operand:HI 1 "general_operand" "0")))] "!TARGET_5200" "neg%.w %0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+dm")) (neg:HI (match_dup 0)))] "!TARGET_5200" "neg%.w %0") (define_insn "negqi2" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (neg:QI (match_operand:QI 1 "general_operand" "0")))] "!TARGET_5200" "neg%.b %0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+dm")) (neg:QI (match_dup 0)))] "!TARGET_5200" "neg%.b %0") @@ -4195,7 +4195,7 @@ ;; If using software floating point, just flip the sign bit. (define_expand "negsf2" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (neg:SF (match_operand:SF 1 "general_operand" "")))] "" " @@ -4222,13 +4222,13 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=x,y") + [(set (match_operand:SF 0 "nonimmediate_operand" "=x,y") (neg:SF (match_operand:SF 1 "general_operand" "xH,rmF")))] "TARGET_FPA" "fpneg%.s %w1,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f,d") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f,d") (neg:SF (match_operand:SF 1 "general_operand" "fdmF,0")))] "TARGET_68881" "* @@ -4244,7 +4244,7 @@ }") (define_expand "negdf2" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (neg:DF (match_operand:DF 1 "general_operand" "")))] "" " @@ -4278,13 +4278,13 @@ }") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=x,y") + [(set (match_operand:DF 0 "nonimmediate_operand" "=x,y") (neg:DF (match_operand:DF 1 "general_operand" "xH,rmF")))] "TARGET_FPA" "fpneg%.d %y1, %0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f,d") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f,d") (neg:DF (match_operand:DF 1 "general_operand" "fmF,0")))] "TARGET_68881" "* @@ -4302,7 +4302,7 @@ ;; Sqrt instruction for the 68881 (define_insn "sqrtsf2" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (sqrt:SF (match_operand:SF 1 "general_operand" "fm")))] "TARGET_68881" "* @@ -4314,7 +4314,7 @@ }") (define_insn "sqrtdf2" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (sqrt:DF (match_operand:DF 1 "general_operand" "fm")))] "TARGET_68881" "* @@ -4329,7 +4329,7 @@ ;; If using software floating point, just zero the sign bit. (define_expand "abssf2" - [(set (match_operand:SF 0 "general_operand" "") + [(set (match_operand:SF 0 "nonimmediate_operand" "") (abs:SF (match_operand:SF 1 "general_operand" "")))] "" " @@ -4356,13 +4356,13 @@ }") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=x,y") + [(set (match_operand:SF 0 "nonimmediate_operand" "=x,y") (abs:SF (match_operand:SF 1 "general_operand" "xH,rmF")))] "TARGET_FPA" "fpabs%.s %y1,%0") (define_insn "" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (abs:SF (match_operand:SF 1 "general_operand" "fdmF")))] "TARGET_68881" "* @@ -4373,7 +4373,7 @@ }") (define_expand "absdf2" - [(set (match_operand:DF 0 "general_operand" "") + [(set (match_operand:DF 0 "nonimmediate_operand" "") (abs:DF (match_operand:DF 1 "general_operand" "")))] "" " @@ -4407,13 +4407,13 @@ }") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=x,y") + [(set (match_operand:DF 0 "nonimmediate_operand" "=x,y") (abs:DF (match_operand:DF 1 "general_operand" "xH,rmF")))] "TARGET_FPA" "fpabs%.d %y1,%0") (define_insn "" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (abs:DF (match_operand:DF 1 "general_operand" "fmF")))] "TARGET_68881" "* @@ -4427,7 +4427,7 @@ ;; "one_cmpldi2" is mainly here to help combine(). (define_insn "one_cmpldi2" - [(set (match_operand:DI 0 "general_operand" "=dm") + [(set (match_operand:DI 0 "nonimmediate_operand" "=dm") (not:DI (match_operand:DI 1 "general_operand" "0")))] "!TARGET_5200" "* @@ -4444,7 +4444,7 @@ }") (define_expand "one_cmplsi2" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (not:SI (match_operand:SI 1 "general_operand" "")))] "" " @@ -4457,37 +4457,37 @@ }") (define_insn "one_cmplsi2_internal" - [(set (match_operand:SI 0 "general_operand" "=dm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") (not:SI (match_operand:SI 1 "general_operand" "0")))] "!TARGET_5200" "not%.l %0") (define_insn "one_cmplsi2_5200" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (not:SI (match_operand:SI 1 "general_operand" "0")))] "TARGET_5200" "not%.l %0") (define_insn "one_cmplhi2" - [(set (match_operand:HI 0 "general_operand" "=dm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") (not:HI (match_operand:HI 1 "general_operand" "0")))] "!TARGET_5200" "not%.w %0") (define_insn "" - [(set (strict_low_part (match_operand:HI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:HI 0 "nonimmediate_operand" "+dm")) (not:HI (match_dup 0)))] "!TARGET_5200" "not%.w %0") (define_insn "one_cmplqi2" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (not:QI (match_operand:QI 1 "general_operand" "0")))] "!TARGET_5200" "not%.b %0") (define_insn "" - [(set (strict_low_part (match_operand:QI 0 "general_operand" "+dm")) + [(set (strict_low_part (match_operand:QI 0 "nonimmediate_operand" "+dm")) (not:QI (match_dup 0)))] "!TARGET_5200" "not%.b %0") @@ -4496,7 +4496,7 @@ ;; We don't need the shift memory by 1 bit instruction (define_insn "ashldi_extsi" - [(set (match_operand:DI 0 "general_operand" "=ro") + [(set (match_operand:DI 0 "nonimmediate_operand" "=ro") (ashift:DI (match_operator:DI 2 "extend_operator" [(match_operand:SI 1 "general_operand" "rm")]) @@ -4516,7 +4516,7 @@ } ") (define_insn "ashldi_sexthi" - [(set (match_operand:DI 0 "general_operand" "=m,a*d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=m,a*d") (ashift:DI (sign_extend:DI (match_operand:HI 1 "general_operand" "rm,rm")) (const_int 32))) (clobber (match_scratch:SI 2 "=a,X"))] @@ -4543,7 +4543,7 @@ } ") (define_insn "ashldi_const32" - [(set (match_operand:DI 0 "general_operand" "=rm") + [(set (match_operand:DI 0 "nonimmediate_operand" "=rm") (ashift:DI (match_operand:DI 1 "general_operand" "ro") (const_int 32)))] "" @@ -4570,7 +4570,7 @@ ;; The predicate below must be general_operand, because ashldi3 allows that (define_insn "ashldi_const" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (ashift:DI (match_operand:DI 1 "general_operand" "0") (match_operand 2 "const_int_operand" "n")))] "(!TARGET_5200 @@ -4602,7 +4602,7 @@ } ") (define_expand "ashldi3" - [(set (match_operand:DI 0 "general_operand" "") + [(set (match_operand:DI 0 "nonimmediate_operand" "") (ashift:DI (match_operand:DI 1 "general_operand" "") (match_operand 2 "const_int_operand" "")))] "!TARGET_5200" @@ -4716,7 +4716,7 @@ }") (define_insn "subreghi1ashrdi_const32" - [(set (match_operand:HI 0 "general_operand" "=rm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=rm") (subreg:HI (ashiftrt:DI (match_operand:DI 1 "general_operand" "ro") (const_int 32)) 4))] "" @@ -4728,7 +4728,7 @@ } ") (define_insn "subregsi1ashrdi_const32" - [(set (match_operand:SI 0 "general_operand" "=rm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=rm") (subreg:SI (ashiftrt:DI (match_operand:DI 1 "general_operand" "ro") (const_int 32)) 4))] "" @@ -4753,7 +4753,7 @@ } ") (define_insn "ashrdi_const32_mem" - [(set (match_operand:DI 0 "general_operand" "=o,<") + [(set (match_operand:DI 0 "nonimmediate_operand" "=o,<") (ashiftrt:DI (match_operand:DI 1 "general_operand" "ro,ro") (const_int 32))) (clobber (match_scratch:SI 2 "=d,d"))] @@ -4773,7 +4773,7 @@ ;; The predicate below must be general_operand, because ashrdi3 allows that (define_insn "ashrdi_const" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (ashiftrt:DI (match_operand:DI 1 "general_operand" "0") (match_operand 2 "const_int_operand" "n")))] "(!TARGET_5200 @@ -4813,7 +4813,7 @@ } ") (define_expand "ashrdi3" - [(set (match_operand:DI 0 "general_operand" "") + [(set (match_operand:DI 0 "nonimmediate_operand" "") (ashiftrt:DI (match_operand:DI 1 "general_operand" "") (match_operand 2 "const_int_operand" "")))] "!TARGET_5200" @@ -4882,7 +4882,7 @@ ;; [(set (cc0) ;; (subreg:SI (lshiftrt:DI (match_operand:DI 0 "general_operand" "ro") ;; (const_int 32)) 4)) -;; (set (match_operand:SI 1 "general_operand" "=dm") +;; (set (match_operand:SI 1 "nonimmediate_operand" "=dm") ;; (subreg:SI (lshiftrt:DI (match_dup 0) ;; (const_int 32)) 4))] ;; "" @@ -4895,7 +4895,7 @@ ;; [(set (cc0) ;; (subreg:SI (lshiftrt:DI (match_operand:DI 0 "general_operand" "ro") ;; (const_int 32)) 0)) -;; (set (match_operand:DI 1 "general_operand" "=do") +;; (set (match_operand:DI 1 "nonimmediate_operand" "=do") ;; (lshiftrt:DI (match_dup 0) ;; (const_int 32)))] ;; "" @@ -4909,7 +4909,7 @@ ;;} ") (define_insn "subreg1lshrdi_const32" - [(set (match_operand:SI 0 "general_operand" "=rm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=rm") (subreg:SI (lshiftrt:DI (match_operand:DI 1 "general_operand" "ro") (const_int 32)) 4))] "" @@ -4919,7 +4919,7 @@ } ") (define_insn "lshrdi_const32" - [(set (match_operand:DI 0 "general_operand" "=ro,<,>") + [(set (match_operand:DI 0 "nonimmediate_operand" "=ro,<,>") (lshiftrt:DI (match_operand:DI 1 "general_operand" "ro,ro,ro") (const_int 32)))] "" @@ -4946,7 +4946,7 @@ ;; The predicate below must be general_operand, because lshrdi3 allows that (define_insn "lshrdi_const" - [(set (match_operand:DI 0 "general_operand" "=d") + [(set (match_operand:DI 0 "nonimmediate_operand" "=d") (lshiftrt:DI (match_operand:DI 1 "general_operand" "0") (match_operand 2 "const_int_operand" "n")))] "(!TARGET_5200 @@ -4981,7 +4981,7 @@ } ") (define_expand "lshrdi3" - [(set (match_operand:DI 0 "general_operand" "") + [(set (match_operand:DI 0 "nonimmediate_operand" "") (lshiftrt:DI (match_operand:DI 1 "general_operand" "") (match_operand 2 "const_int_operand" "")))] "!TARGET_5200" @@ -5318,7 +5318,7 @@ ; than an odd byte aligned bit field instruction. ; (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=rm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=rm") (zero_extract:SI (match_operand:QI 1 "memory_src_operand" "oS") (const_int 32) (match_operand:SI 2 "const_int_operand" "n")))] @@ -5334,7 +5334,7 @@ }") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=&d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=&d") (zero_extract:SI (match_operand:SI 1 "register_operand" "do") (match_operand:SI 2 "const_int_operand" "n") (match_operand:SI 3 "const_int_operand" "n")))] @@ -5374,7 +5374,7 @@ ; than an odd byte aligned bit field instruction. ; (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=rm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=rm") (sign_extract:SI (match_operand:QI 1 "memory_src_operand" "oS") (const_int 32) (match_operand:SI 2 "const_int_operand" "n")))] @@ -5390,7 +5390,7 @@ }") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (sign_extract:SI (match_operand:SI 1 "register_operand" "do") (match_operand:SI 2 "const_int_operand" "n") (match_operand:SI 3 "const_int_operand" "n")))] @@ -5422,7 +5422,7 @@ ;; so that its address is reloaded. (define_expand "extv" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (sign_extract:SI (match_operand:SI 1 "general_operand" "") (match_operand:SI 2 "general_operand" "") (match_operand:SI 3 "general_operand" "")))] @@ -5430,7 +5430,7 @@ "") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (sign_extract:SI (match_operand:QI 1 "memory_operand" "o") (match_operand:SI 2 "general_operand" "di") (match_operand:SI 3 "general_operand" "di")))] @@ -5438,7 +5438,7 @@ "bfexts %1{%b3:%b2},%0") (define_expand "extzv" - [(set (match_operand:SI 0 "general_operand" "") + [(set (match_operand:SI 0 "nonimmediate_operand" "") (zero_extract:SI (match_operand:SI 1 "general_operand" "") (match_operand:SI 2 "general_operand" "") (match_operand:SI 3 "general_operand" "")))] @@ -5446,7 +5446,7 @@ "") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d,d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d,d") (zero_extract:SI (match_operand:QI 1 "memory_operand" "o,d") (match_operand:SI 2 "general_operand" "di,di") (match_operand:SI 3 "general_operand" "di,di")))] @@ -5506,7 +5506,7 @@ }") (define_expand "insv" - [(set (zero_extract:SI (match_operand:SI 0 "general_operand" "") + [(set (zero_extract:SI (match_operand:SI 0 "nonimmediate_operand" "") (match_operand:SI 1 "general_operand" "") (match_operand:SI 2 "general_operand" "")) (match_operand:SI 3 "register_operand" ""))] @@ -5525,7 +5525,7 @@ ;; (or at least were intended to do so). (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (sign_extract:SI (match_operand:SI 1 "register_operand" "d") (match_operand:SI 2 "general_operand" "di") (match_operand:SI 3 "general_operand" "di")))] @@ -5533,7 +5533,7 @@ "bfexts %1{%b3:%b2},%0") (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=d") + [(set (match_operand:SI 0 "nonimmediate_operand" "=d") (zero_extract:SI (match_operand:SI 1 "register_operand" "d") (match_operand:SI 2 "general_operand" "di") (match_operand:SI 3 "general_operand" "di")))] @@ -5648,7 +5648,7 @@ }") (define_insn "scc0_di" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (match_operator 1 "valid_dbcc_comparison_p" [(match_operand:DI 2 "general_operand" "ro") (const_int 0)]))] "! TARGET_5200" @@ -5658,7 +5658,7 @@ } ") (define_insn "scc0_di_5200" - [(set (match_operand:QI 0 "general_operand" "=d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=d") (match_operator 1 "valid_dbcc_comparison_p" [(match_operand:DI 2 "general_operand" "ro") (const_int 0)]))] "TARGET_5200" @@ -5668,7 +5668,7 @@ } ") (define_insn "scc_di" - [(set (match_operand:QI 0 "general_operand" "=dm,dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm,dm") (match_operator 1 "valid_dbcc_comparison_p" [(match_operand:DI 2 "general_operand" "ro,r") (match_operand:DI 3 "general_operand" "r,ro")]))] @@ -5679,7 +5679,7 @@ } ") (define_insn "scc_di_5200" - [(set (match_operand:QI 0 "general_operand" "=d,d") + [(set (match_operand:QI 0 "nonimmediate_operand" "=d,d") (match_operator 1 "valid_dbcc_comparison_p" [(match_operand:DI 2 "general_operand" "ro,r") (match_operand:DI 3 "general_operand" "r,ro")]))] @@ -6554,7 +6554,7 @@ (define_insn "" [(set (pc) (if_then_else - (ne (match_operand:HI 0 "general_operand" "+d*g") + (ne (match_operand:HI 0 "nonimmediate_operand" "+d*g") (const_int 0)) (label_ref (match_operand 1 "" "")) (pc))) @@ -6597,7 +6597,7 @@ (define_insn "" [(set (pc) (if_then_else - (ne (match_operand:SI 0 "general_operand" "+d*g") + (ne (match_operand:SI 0 "nonimmediate_operand" "+d*g") (const_int 0)) (label_ref (match_operand 1 "" "")) (pc))) @@ -6643,7 +6643,7 @@ (define_insn "" [(set (pc) (if_then_else - (ge (plus:HI (match_operand:HI 0 "general_operand" "+d*am") + (ge (plus:HI (match_operand:HI 0 "nonimmediate_operand" "+d*am") (const_int -1)) (const_int 0)) (label_ref (match_operand 1 "" "")) @@ -6688,7 +6688,7 @@ (define_expand "decrement_and_branch_until_zero" [(parallel [(set (pc) (if_then_else - (ge (plus:SI (match_operand:SI 0 "general_operand" "") + (ge (plus:SI (match_operand:SI 0 "nonimmediate_operand" "") (const_int -1)) (const_int 0)) (label_ref (match_operand 1 "" "")) @@ -6702,7 +6702,7 @@ (define_insn "" [(set (pc) (if_then_else - (ge (plus:SI (match_operand:SI 0 "general_operand" "+d*am") + (ge (plus:SI (match_operand:SI 0 "nonimmediate_operand" "+d*am") (const_int -1)) (const_int 0)) (label_ref (match_operand 1 "" "")) @@ -6991,7 +6991,7 @@ ;; This should not be used unless the add/sub insns can't be. (define_insn "" - [(set (match_operand:SI 0 "general_operand" "=a") + [(set (match_operand:SI 0 "nonimmediate_operand" "=a") (match_operand:QI 1 "address_operand" "p"))] "" "* @@ -7458,7 +7458,7 @@ }") (define_insn "extendsfxf2" - [(set (match_operand:XF 0 "general_operand" "=fm,f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=fm,f") (float_extend:XF (match_operand:SF 1 "general_operand" "f,rmF")))] "TARGET_68881" "* @@ -7490,7 +7490,7 @@ (define_insn "extenddfxf2" - [(set (match_operand:XF 0 "general_operand" "=fm,f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=fm,f") (float_extend:XF (match_operand:DF 1 "general_operand" "f,rmE")))] "TARGET_68881" @@ -7526,7 +7526,7 @@ }") (define_insn "truncxfdf2" - [(set (match_operand:DF 0 "general_operand" "=m,!r") + [(set (match_operand:DF 0 "nonimmediate_operand" "=m,!r") (float_truncate:DF (match_operand:XF 1 "general_operand" "f,f")))] "TARGET_68881" @@ -7542,32 +7542,32 @@ }") (define_insn "truncxfsf2" - [(set (match_operand:SF 0 "general_operand" "=dm") + [(set (match_operand:SF 0 "nonimmediate_operand" "=dm") (float_truncate:SF (match_operand:XF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.s %f1,%0") (define_insn "floatsixf2" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (float:XF (match_operand:SI 1 "general_operand" "dmi")))] "TARGET_68881" "fmove%.l %1,%0") (define_insn "floathixf2" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (float:XF (match_operand:HI 1 "general_operand" "dmn")))] "TARGET_68881" "fmove%.w %1,%0") (define_insn "floatqixf2" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (float:XF (match_operand:QI 1 "general_operand" "dmn")))] "TARGET_68881" "fmove%.b %1,%0") (define_insn "ftruncxf2" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (fix:XF (match_operand:XF 1 "general_operand" "fFm")))] "TARGET_68881" "* @@ -7578,46 +7578,46 @@ }") (define_insn "fixxfqi2" - [(set (match_operand:QI 0 "general_operand" "=dm") + [(set (match_operand:QI 0 "nonimmediate_operand" "=dm") (fix:QI (match_operand:XF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.b %1,%0") (define_insn "fixxfhi2" - [(set (match_operand:HI 0 "general_operand" "=dm") + [(set (match_operand:HI 0 "nonimmediate_operand" "=dm") (fix:HI (match_operand:XF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.w %1,%0") (define_insn "fixxfsi2" - [(set (match_operand:SI 0 "general_operand" "=dm") + [(set (match_operand:SI 0 "nonimmediate_operand" "=dm") (fix:SI (match_operand:XF 1 "general_operand" "f")))] "TARGET_68881" "fmove%.l %1,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (plus:XF (float:XF (match_operand:SI 2 "general_operand" "dmi")) (match_operand:XF 1 "nonimmediate_operand" "0")))] "TARGET_68881" "fadd%.l %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (plus:XF (float:XF (match_operand:HI 2 "general_operand" "dmn")) (match_operand:XF 1 "nonimmediate_operand" "0")))] "TARGET_68881" "fadd%.w %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (plus:XF (float:XF (match_operand:QI 2 "general_operand" "dmn")) (match_operand:XF 1 "general_operand" "0")))] "TARGET_68881" "fadd%.b %2,%0") (define_insn "addxf3" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (plus:XF (match_operand:XF 1 "nonimmediate_operand" "%0") (match_operand:XF 2 "nonimmediate_operand" "fm")))] "TARGET_68881" @@ -7629,28 +7629,28 @@ }") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (minus:XF (match_operand:XF 1 "nonimmediate_operand" "0") (float:XF (match_operand:SI 2 "general_operand" "dmi"))))] "TARGET_68881" "fsub%.l %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (minus:XF (match_operand:XF 1 "nonimmediate_operand" "0") (float:XF (match_operand:HI 2 "general_operand" "dmn"))))] "TARGET_68881" "fsub%.w %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (minus:XF (match_operand:XF 1 "nonimmediate_operand" "0") (float:XF (match_operand:QI 2 "general_operand" "dmn"))))] "TARGET_68881" "fsub%.b %2,%0") (define_insn "subxf3" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (minus:XF (match_operand:XF 1 "nonimmediate_operand" "0") (match_operand:XF 2 "nonimmediate_operand" "fm")))] "TARGET_68881" @@ -7662,28 +7662,28 @@ }") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (mult:XF (float:XF (match_operand:SI 2 "general_operand" "dmi")) (match_operand:XF 1 "nonimmediate_operand" "0")))] "TARGET_68881" "fmul%.l %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (mult:XF (float:XF (match_operand:HI 2 "general_operand" "dmn")) (match_operand:XF 1 "nonimmediate_operand" "0")))] "TARGET_68881" "fmul%.w %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (mult:XF (float:XF (match_operand:QI 2 "general_operand" "dmn")) (match_operand:XF 1 "nonimmediate_operand" "0")))] "TARGET_68881" "fmul%.b %2,%0") (define_insn "mulxf3" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (mult:XF (match_operand:XF 1 "nonimmediate_operand" "%0") (match_operand:XF 2 "nonimmediate_operand" "fm")))] "TARGET_68881" @@ -7695,28 +7695,28 @@ }") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (div:XF (match_operand:XF 1 "nonimmediate_operand" "0") (float:XF (match_operand:SI 2 "general_operand" "dmi"))))] "TARGET_68881" "fdiv%.l %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (div:XF (match_operand:XF 1 "nonimmediate_operand" "0") (float:XF (match_operand:HI 2 "general_operand" "dmn"))))] "TARGET_68881" "fdiv%.w %2,%0") (define_insn "" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (div:XF (match_operand:XF 1 "nonimmediate_operand" "0") (float:XF (match_operand:QI 2 "general_operand" "dmn"))))] "TARGET_68881" "fdiv%.b %2,%0") (define_insn "divxf3" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (div:XF (match_operand:XF 1 "nonimmediate_operand" "0") (match_operand:XF 2 "nonimmediate_operand" "fm")))] "TARGET_68881" @@ -7728,7 +7728,7 @@ }") (define_expand "negxf2" - [(set (match_operand:XF 0 "general_operand" "") + [(set (match_operand:XF 0 "nonimmediate_operand" "") (neg:XF (match_operand:XF 1 "nonimmediate_operand" "")))] "" " @@ -7766,7 +7766,7 @@ }") (define_insn "negxf2_68881" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (neg:XF (match_operand:XF 1 "nonimmediate_operand" "fm")))] "TARGET_68881" "* @@ -7777,7 +7777,7 @@ }") (define_expand "absxf2" - [(set (match_operand:XF 0 "general_operand" "") + [(set (match_operand:XF 0 "nonimmediate_operand" "") (abs:XF (match_operand:XF 1 "nonimmediate_operand" "")))] "" " @@ -7815,7 +7815,7 @@ }") (define_insn "absxf2_68881" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (abs:XF (match_operand:XF 1 "nonimmediate_operand" "fm")))] "TARGET_68881" "* @@ -7826,13 +7826,13 @@ }") (define_insn "sqrtxf2" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (sqrt:XF (match_operand:XF 1 "nonimmediate_operand" "fm")))] "TARGET_68881" "fsqrt%.x %1,%0") (define_insn "sinsf2" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (unspec:SF [(match_operand:SF 1 "general_operand" "fm")] 1))] "TARGET_68881 && flag_unsafe_math_optimizations" "* @@ -7844,7 +7844,7 @@ }") (define_insn "sindf2" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (unspec:DF [(match_operand:DF 1 "general_operand" "fm")] 1))] "TARGET_68881 && flag_unsafe_math_optimizations" "* @@ -7856,13 +7856,13 @@ }") (define_insn "sinxf2" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (unspec:XF [(match_operand:XF 1 "nonimmediate_operand" "fm")] 1))] "TARGET_68881 && flag_unsafe_math_optimizations" "fsin%.x %1,%0") (define_insn "cossf2" - [(set (match_operand:SF 0 "general_operand" "=f") + [(set (match_operand:SF 0 "nonimmediate_operand" "=f") (unspec:SF [(match_operand:SF 1 "general_operand" "fm")] 2))] "TARGET_68881 && flag_unsafe_math_optimizations" "* @@ -7874,7 +7874,7 @@ }") (define_insn "cosdf2" - [(set (match_operand:DF 0 "general_operand" "=f") + [(set (match_operand:DF 0 "nonimmediate_operand" "=f") (unspec:DF [(match_operand:DF 1 "general_operand" "fm")] 2))] "TARGET_68881 && flag_unsafe_math_optimizations" "* @@ -7886,7 +7886,7 @@ }") (define_insn "cosxf2" - [(set (match_operand:XF 0 "general_operand" "=f") + [(set (match_operand:XF 0 "nonimmediate_operand" "=f") (unspec:XF [(match_operand:XF 1 "nonimmediate_operand" "fm")] 2))] "TARGET_68881 && flag_unsafe_math_optimizations" "fcos%.x %1,%0") |