merge.c
2.92 KB
-
rs6000.c (altivec_expand_vec_perm_const): Use CODE_FOR_altivec_vmrg*_direct… · 68d3bacf
rs6000.c (altivec_expand_vec_perm_const): Use CODE_FOR_altivec_vmrg*_direct rather than CODE_FOR_altivec_vmrg*. gcc: 2014-01-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * config/rs6000/rs6000.c (altivec_expand_vec_perm_const): Use CODE_FOR_altivec_vmrg*_direct rather than CODE_FOR_altivec_vmrg*. * config/rs6000/vsx.md (vsx_mergel_<mode>): Adjust for -maltivec=be with LE targets. (vsx_mergeh_<mode>): Likewise. * config/rs6000/altivec.md (UNSPEC_VMRG[HL]_DIRECT): New unspecs. (mulv8hi3): Use gen_altivec_vmrg[hl]w_direct. (altivec_vmrghb): Replace with define_expand and new *altivec_vmrghb_internal insn; adjust for -maltivec=be with LE targets. (altivec_vmrghb_direct): New define_insn. (altivec_vmrghh): Replace with define_expand and new *altivec_vmrghh_internal insn; adjust for -maltivec=be with LE targets. (altivec_vmrghh_direct): New define_insn. (altivec_vmrghw): Replace with define_expand and new *altivec_vmrghw_internal insn; adjust for -maltivec=be with LE targets. (altivec_vmrghw_direct): New define_insn. (*altivec_vmrghsf): Adjust for endianness. (altivec_vmrglb): Replace with define_expand and new *altivec_vmrglb_internal insn; adjust for -maltivec=be with LE targets. (altivec_vmrglb_direct): New define_insn. (altivec_vmrglh): Replace with define_expand and new *altivec_vmrglh_internal insn; adjust for -maltivec=be with LE targets. (altivec_vmrglh_direct): New define_insn. (altivec_vmrglw): Replace with define_expand and new *altivec_vmrglw_internal insn; adjust for -maltivec=be with LE targets. (altivec_vmrglw_direct): New define_insn. (*altivec_vmrglsf): Adjust for endianness. (vec_widen_umult_hi_v16qi): Use gen_altivec_vmrghh_direct. (vec_widen_umult_lo_v16qi): Use gen_altivec_vmrglh_direct. (vec_widen_smult_hi_v16qi): Use gen_altivec_vmrghh_direct. (vec_widen_smult_lo_v16qi): Use gen_altivec_vmrglh_direct. (vec_widen_umult_hi_v8hi): Use gen_altivec_vmrghw_direct. (vec_widen_umult_lo_v8hi): Use gen_altivec_vmrglw_direct. (vec_widen_smult_hi_v8hi): Use gen_altivec_vmrghw_direct. (vec_widen_smult_lo_v8hi): Use gen_altivec_vmrglw_direct. gcc/testsuite: 2014-01-29 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.dg/vmx/merge-be-order.c: New. * gcc.dg/vmx/merge.c: New. * gcc.dg/vmx/merge-vsx-be-order.c: New. * gcc.dg/vmx/merge-vsx.c: New. From-SVN: r207262
Bill Schmidt committed