pa.md (movqi, [...]): Discourage regclass from preferring anything which involves...
authorJeff Law <law@gcc.gnu.org>
Wed, 6 Jan 1993 17:47:46 +0000 (10:47 -0700)
committerJeff Law <law@gcc.gnu.org>
Wed, 6 Jan 1993 17:47:46 +0000 (10:47 -0700)
* pa.md (movqi, movhi, movsi, movdi, movsf, movdf): Discourage
regclass from preferring anything which involves a FP<->GR copy.

From-SVN: r3123

gcc/config/pa/pa.md

index f249259e9237b9a6eace090a19099c514a95f1c9..27296822a062c7e38f3a29d9117a28cd9e29534b 100644 (file)
 
 (define_insn ""
   [(set (match_operand:SI 0 "reg_or_nonsymb_mem_operand"
-                         "=r,r,Q,!r,!fx,!fx")
-       (match_operand:SI 1 "move_operand" "rM,Q,rM,!fxy,!r,!fx"))]
+                         "=r,r,Q,!*r,!fx,!fx")
+       (match_operand:SI 1 "move_operand" "rM,Q,rM,!fxy,!*r,!fx"))]
   "register_operand (operands[0], SImode)
    || reg_or_0_operand (operands[1], SImode)"
   "@
 }")
 
 (define_insn ""
-  [(set (match_operand:HI 0 "reg_or_nonsymb_mem_operand" "=r,r,Q,!r,!*fx,!*fx")
-       (match_operand:HI 1 "move_operand" "rM,Q,rM,*fx,r,!*fx"))]
+  [(set (match_operand:HI 0 "reg_or_nonsymb_mem_operand" "=r,r,Q,!*r,!fx,!fx")
+       (match_operand:HI 1 "move_operand" "rM,Q,rM,fx,*r,!fx"))]
   "register_operand (operands[0], HImode)
    || reg_or_0_operand (operands[1], HImode)"
   "@
 }")
 
 (define_insn ""
-  [(set (match_operand:QI 0 "reg_or_nonsymb_mem_operand" "=r,r,Q,!r,!*fx,!*fx")
-       (match_operand:QI 1 "move_operand" "rM,Q,rM,*fx,r,*fx"))]
+  [(set (match_operand:QI 0 "reg_or_nonsymb_mem_operand" "=r,r,Q,!*r,!fx,!fx")
+       (match_operand:QI 1 "move_operand" "rM,Q,rM,fx,*r,fx"))]
   "register_operand (operands[0], QImode)
    || reg_or_0_operand (operands[1], QImode)"
   "@
 
 (define_insn ""
   [(set (match_operand:DF 0 "reg_or_nonsymb_mem_operand"
-                         "=fx,*r,Q,?Q,fx,*&r,?fx,?r")
+                         "=fx,*r,Q,?Q,fx,*&r,?fx,?*r")
        (match_operand:DF 1 "reg_or_nonsymb_mem_operand"
                          "fx,*r,fx,*r,Q,Q,*r,fx"))]
   "register_operand (operands[0], DFmode)
 
 (define_insn ""
   [(set (match_operand:DI 0 "reg_or_nonsymb_mem_operand"
-                         "=r,Q,&r,&r,fx,fx,r")
+                         "=r,Q,&r,&r,fx,fx,*r")
        (match_operand:DI 1 "general_operand"
-                         "r,r,Q,i,r,fx,fx"))]
+                         "r,r,Q,i,*r,fx,fx"))]
   "register_operand (operands[0], DImode)
    || reg_or_0_operand (operands[1], DImode)"
   "*
 
 (define_insn ""
   [(set (match_operand:SF 0 "reg_or_nonsymb_mem_operand"
-                         "=fx,r,r,fx,fx,r,Q,Q")
+                         "=fx,r,*r,fx,fx,r,Q,Q")
        (match_operand:SF 1 "reg_or_nonsymb_mem_operand"
-                         "fx,r,!fx,!r,Q,Q,fx,r"))]
+                         "fx,r,!fx,!*r,Q,Q,fx,r"))]
   "register_operand (operands[0], SFmode)
    || register_operand (operands[1], SFmode)"
   "@