aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2019-02-11 11:39:59 +0100
committerJakub Jelinek <jakub@gcc.gnu.org>2019-02-11 11:39:59 +0100
commit85fef82fc17b597db4943c42fe9ce6f159232de9 (patch)
treeb7696a4c8982da0854c980c361fc534ba1ddfd52
parent9fb117e8310076cd8e4803e35eaa6d3b09a45d79 (diff)
downloadgcc-85fef82fc17b597db4943c42fe9ce6f159232de9.zip
gcc-85fef82fc17b597db4943c42fe9ce6f159232de9.tar.gz
gcc-85fef82fc17b597db4943c42fe9ce6f159232de9.tar.bz2
re PR bootstrap/88714 (bootstrap comparison failure on armv7l since r265398)
PR bootstrap/88714 * config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Use q constraint instead of r. From-SVN: r268766
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/arm/ldrdstrd.md8
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a4cc46a..1fa6936 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2019-02-11 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/88714
+ * config/arm/ldrdstrd.md (*arm_ldrd, *arm_strd): Use q constraint
+ instead of r.
+
2019-02-11 Hans-Peter Nilsson <hp@axis.com>
* function.c (assign_parm_setup_block): Use the stored
diff --git a/gcc/config/arm/ldrdstrd.md b/gcc/config/arm/ldrdstrd.md
index cb7a6ad..c937591 100644
--- a/gcc/config/arm/ldrdstrd.md
+++ b/gcc/config/arm/ldrdstrd.md
@@ -157,9 +157,9 @@
;; 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_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)"
{