[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
This commit is contained in:
Evandro Menezes 2016-04-01 19:55:52 +00:00 committed by Evandro Menezes
parent 763cd859a1
commit 907e22e847
2 changed files with 9 additions and 1 deletions

View File

@ -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

View File

@ -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)")))))