Change output contraint on post inc load/store multiple patterns to be a
authorNick Clifton <nickc@redhat.com>
Fri, 9 Feb 2001 18:47:05 +0000 (18:47 +0000)
committerNick Clifton <nickc@gcc.gnu.org>
Fri, 9 Feb 2001 18:47:05 +0000 (18:47 +0000)
read/write contraint.

From-SVN: r39566

gcc/ChangeLog
gcc/config/arm/arm.md

index 98c858bc6db8af2ce34fb5e9bffe40e939416797..fa213ddd692bf7381c0baf5439041fb57b409d1b 100644 (file)
@@ -1,3 +1,8 @@
+2001-02-09  Nick Clifton  <nickc@redhat.com>
+
+       * config/arm/arm.md: Change output contraint on post inc
+       load/store multiple patterns to be a read/write contraint.
+
 2001-02-09  Neil Booth  <neil@daikokuya.demon.co.uk>
 
         * gcc.c (cpp_options): Delete .d files on error.  Don't delete
index a5d5a499c35a88ab696b407fa4b246f9aff34199..f69e0fee17015a3bae13a6f21ab7b5fcb107be4a 100644 (file)
 )
 
 (define_insn "negsf2"
-  [(set (match_operand:SF 0 "s_register_operand" "=f")
+  [(set (match_operand:SF         0 "s_register_operand" "=f")
        (neg:SF (match_operand:SF 1 "s_register_operand" "f")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "mnf%?s\\t%0, %1"
 )
 
 (define_insn "negdf2"
-  [(set (match_operand:DF 0 "s_register_operand" "=f")
+  [(set (match_operand:DF         0 "s_register_operand" "=f")
        (neg:DF (match_operand:DF 1 "s_register_operand" "f")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "mnf%?d\\t%0, %1"
 ;; (neg (abs...))
 
 (define_insn "abssi2"
-  [(set (match_operand:SI 0 "s_register_operand" "=r,&r")
+  [(set (match_operand:SI         0 "s_register_operand" "=r,&r")
        (abs:SI (match_operand:SI 1 "s_register_operand" "0,r")))
    (clobber (reg:CC CC_REGNUM))]
   "TARGET_ARM"
 )
 
 (define_insn "abssf2"
-  [(set (match_operand:SF 0 "s_register_operand" "=f")
+  [(set (match_operand:SF          0 "s_register_operand" "=f")
         (abs:SF (match_operand:SF 1 "s_register_operand" "f")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "abs%?s\\t%0, %1"
 )
 
 (define_insn "absdf2"
-  [(set (match_operand:DF 0 "s_register_operand" "=f")
+  [(set (match_operand:DF         0 "s_register_operand" "=f")
        (abs:DF (match_operand:DF 1 "s_register_operand" "f")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "abs%?d\\t%0, %1"
 ;; Fixed <--> Floating conversion insns
 
 (define_insn "floatsisf2"
-  [(set (match_operand:SF 0 "s_register_operand" "=f")
+  [(set (match_operand:SF           0 "s_register_operand" "=f")
        (float:SF (match_operand:SI 1 "s_register_operand" "r")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "flt%?s\\t%0, %1"
 )
 
 (define_insn "floatsidf2"
-  [(set (match_operand:DF 0 "s_register_operand" "=f")
+  [(set (match_operand:DF           0 "s_register_operand" "=f")
        (float:DF (match_operand:SI 1 "s_register_operand" "r")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "flt%?d\\t%0, %1"
 )
 
 (define_insn "fix_truncsfsi2"
-  [(set (match_operand:SI 0 "s_register_operand" "=r")
+  [(set (match_operand:SI         0 "s_register_operand" "=r")
        (fix:SI (match_operand:SF 1 "s_register_operand" "f")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "fix%?z\\t%0, %1"
 )
 
 (define_insn "fix_truncdfsi2"
-  [(set (match_operand:SI 0 "s_register_operand" "=r")
+  [(set (match_operand:SI         0 "s_register_operand" "=r")
        (fix:SI (match_operand:DF 1 "s_register_operand" "f")))]
   "TARGET_ARM && TARGET_HARD_FLOAT"
   "fix%?z\\t%0, %1"
 (define_insn "*arm_movdi"
   [(set (match_operand:DI 0 "nonimmediate_di_operand" "=r, r, o<>")
        (match_operand:DI 1 "di_operand"              "rIK,mi,r"))]
-  "TARGET_ARM
-  "
+  "TARGET_ARM"
   "*
   return (output_move_double (operands));
   "
 
 (define_insn "*ldmsi_postinc4"
   [(match_parallel 0 "load_multiple_operation"
-    [(set (match_operand:SI 1 "s_register_operand" "=r")
+    [(set (match_operand:SI 1 "s_register_operand" "+r")
          (plus:SI (match_operand:SI 2 "s_register_operand" "1")
                   (const_int 16)))
      (set (match_operand:SI 3 "arm_hard_register_operand" "")
 
 (define_insn "*ldmsi_postinc3"
   [(match_parallel 0 "load_multiple_operation"
-    [(set (match_operand:SI 1 "s_register_operand" "=r")
+    [(set (match_operand:SI 1 "s_register_operand" "+r")
          (plus:SI (match_operand:SI 2 "s_register_operand" "1")
                   (const_int 12)))
      (set (match_operand:SI 3 "arm_hard_register_operand" "")
 
 (define_insn "*ldmsi_postinc2"
   [(match_parallel 0 "load_multiple_operation"
-    [(set (match_operand:SI 1 "s_register_operand" "=r")
+    [(set (match_operand:SI 1 "s_register_operand" "+r")
          (plus:SI (match_operand:SI 2 "s_register_operand" "1")
                   (const_int 8)))
      (set (match_operand:SI 3 "arm_hard_register_operand" "")
 
 (define_insn "*stmsi_postinc4"
   [(match_parallel 0 "store_multiple_operation"
-    [(set (match_operand:SI 1 "s_register_operand" "=r")
+    [(set (match_operand:SI 1 "s_register_operand" "+r")
          (plus:SI (match_operand:SI 2 "s_register_operand" "1")
                   (const_int 16)))
      (set (mem:SI (match_dup 2))
 
 (define_insn "*stmsi_postinc3"
   [(match_parallel 0 "store_multiple_operation"
-    [(set (match_operand:SI 1 "s_register_operand" "=r")
+    [(set (match_operand:SI 1 "s_register_operand" "+r")
          (plus:SI (match_operand:SI 2 "s_register_operand" "1")
                   (const_int 12)))
      (set (mem:SI (match_dup 2))
 
 (define_insn "*stmsi_postinc2"
   [(match_parallel 0 "store_multiple_operation"
-    [(set (match_operand:SI 1 "s_register_operand" "=r")
+    [(set (match_operand:SI 1 "s_register_operand" "+r")
          (plus:SI (match_operand:SI 2 "s_register_operand" "1")
                   (const_int 8)))
      (set (mem:SI (match_dup 2))
        (match_operand:SI 1 "s_register_operand" ""))
    (set (reg:CC CC_REGNUM)
        (compare:CC (match_dup 1) (const_int 0)))]
-  "TARGET_ARM"
+  "TARGET_ARM
+  "
   [(parallel [(set (reg:CC CC_REGNUM) (compare:CC (match_dup 1) (const_int 0)))
              (set (match_dup 0) (match_dup 1))])]
   ""