The bcdadd pattern has the wrong constraints. The change Meissner
supplied in PR79295 fixes the issue.
Successfully bootstrapped on ppc64le, ok for trunk if regtest also
passes?
2017-02-09 Aaron Sawdey <acsaw...@linux.vnet.ibm.com>
PR target/79295
* config/rs6000/altivec.md (bcd<bcd_add_sub>): Fix constraints.
--
Aaron Sawdey, Ph.D. acsaw...@linux.vnet.ibm.com
050-2/C113 (507) 253-7520 home: 507/263-0782
IBM Linux Technology Center - PPC Toolchain
Index: gcc/config/rs6000/altivec.md
===================================================================
--- gcc/config/rs6000/altivec.md (revision 245221)
+++ gcc/config/rs6000/altivec.md (working copy)
@@ -3710,10 +3710,10 @@
(define_code_iterator BCD_TEST [eq lt gt unordered])
(define_insn "bcd<bcd_add_sub>"
- [(set (match_operand:V1TI 0 "register_operand" "")
- (unspec:V1TI [(match_operand:V1TI 1 "register_operand" "")
- (match_operand:V1TI 2 "register_operand" "")
- (match_operand:QI 3 "const_0_to_1_operand" "")]
+ [(set (match_operand:V1TI 0 "gpc_reg_operand" "=v")
+ (unspec:V1TI [(match_operand:V1TI 1 "gpc_reg_operand" "v")
+ (match_operand:V1TI 2 "gpc_reg_operand" "v")
+ (match_operand:QI 3 "const_0_to_1_operand" "n")]
UNSPEC_BCD_ADD_SUB))
(clobber (reg:CCFP CR6_REGNO))]
"TARGET_P8_VECTOR"