tstellar / rpms / gcc

Forked from rpms/gcc 4 years ago
Clone
Blob Blame History Raw
2019-02-08  Jakub Jelinek  <jakub@redhat.com>

	PR bootstrap/88714
	* config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Use q constraint
	instead of r.

--- gcc/config/arm/ldrdstrd.md.jj	2019-02-08 11:25:42.368916124 +0100
+++ gcc/config/arm/ldrdstrd.md	2019-02-08 12:38:33.647585108 +0100
@@ -157,9 +157,9 @@ (define_peephole2 ; swap the destination
 ;; We use gen_operands_ldrd_strd() with a modify argument as false so that the
 ;; operands are not changed.
 (define_insn "*arm_ldrd"
-  [(parallel [(set (match_operand:SI 0 "s_register_operand" "=r")
+  [(parallel [(set (match_operand:SI 0 "s_register_operand" "=q")
 		   (match_operand:SI 2 "memory_operand" "m"))
-	      (set (match_operand:SI 1 "s_register_operand" "=r")
+	      (set (match_operand:SI 1 "s_register_operand" "=q")
 		   (match_operand:SI 3 "memory_operand" "m"))])]
   "TARGET_LDRD && TARGET_ARM && reload_completed
   && valid_operands_ldrd_strd (operands, true)"
@@ -178,9 +178,9 @@ (define_insn "*arm_ldrd"
 
 (define_insn "*arm_strd"
   [(parallel [(set (match_operand:SI 2 "memory_operand" "=m")
-		   (match_operand:SI 0 "s_register_operand" "r"))
+		   (match_operand:SI 0 "s_register_operand" "q"))
 	      (set (match_operand:SI 3 "memory_operand" "=m")
-		   (match_operand:SI 1 "s_register_operand" "r"))])]
+		   (match_operand:SI 1 "s_register_operand" "q"))])]
   "TARGET_LDRD && TARGET_ARM && reload_completed
   && valid_operands_ldrd_strd (operands, false)"
   {