aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvandro Menezes <e.menezes@samsung.com>2016-04-01 19:55:52 +0000
committerEvandro Menezes <evandro@gcc.gnu.org>2016-04-01 19:55:52 +0000
commit907e22e847dadcf7e8fcb1f77adfc1b76dfec01c (patch)
tree77895ead98f7d0a0f8a95705679fda788631b493
parent763cd859a1d87f361a88e380e849cf6f0eb10751 (diff)
downloadgcc-907e22e847dadcf7e8fcb1f77adfc1b76dfec01c.zip
gcc-907e22e847dadcf7e8fcb1f77adfc1b76dfec01c.tar.gz
gcc-907e22e847dadcf7e8fcb1f77adfc1b76dfec01c.tar.bz2
[AArch64] Fix SIMD predicate
Fix the predicate "aarch64_simd_reg_or_zero" to correctly validate the "Y" constraint (scalar FP 0.0 immediate). * gcc/config/aarch64/predicates.md (aarch64_simd_reg_or_zero): Add the "const_double" to the list of operand constraints. From-SVN: r234685
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/config/aarch64/predicates.md2
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 81d8879..0d32ed6 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2016-03-31 Evandro Menezes <e.menezes@samsung.com>
+
+ Fix the predicate "aarch64_simd_reg_or_zero" to correctly validate
+ the "Y" constraint (scalar FP 0.0 immediate).
+
+ * gcc/config/aarch64/predicates.md (aarch64_simd_reg_or_zero):
+ Add the "const_double" to the list of operand constraints.
+
2016-04-01 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/70467
diff --git a/gcc/config/aarch64/predicates.md b/gcc/config/aarch64/predicates.md
index 1186827..8f2726d 100644
--- a/gcc/config/aarch64/predicates.md
+++ b/gcc/config/aarch64/predicates.md
@@ -302,7 +302,7 @@
})
(define_predicate "aarch64_simd_reg_or_zero"
- (and (match_code "reg,subreg,const_int,const_vector")
+ (and (match_code "reg,subreg,const_int,const_double,const_vector")
(ior (match_operand 0 "register_operand")
(ior (match_test "op == const0_rtx")
(match_test "aarch64_simd_imm_zero_p (op, mode)")))))