re PR target/80846 (auto-vectorized AVX2 horizontal sum should narrow to 128b right...
authorJakub Jelinek <jakub@redhat.com>
Tue, 1 Aug 2017 16:12:31 +0000 (18:12 +0200)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 1 Aug 2017 16:12:31 +0000 (18:12 +0200)
PR target/80846
* config/rs6000/vsx.md (vextract_fp_from_shorth,
vextract_fp_from_shortl): Add element mode after mode in gen_vec_init*
calls.

From-SVN: r250784

gcc/ChangeLog
gcc/config/rs6000/vsx.md

index a6661bb12d9f5f9102c250f51ea3d2d5c6781264..5d33a594ed25a06d2e2d7807a098be0fa744e508 100644 (file)
@@ -1,3 +1,10 @@
+2017-08-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR target/80846
+       * config/rs6000/vsx.md (vextract_fp_from_shorth,
+       vextract_fp_from_shortl): Add element mode after mode in gen_vec_init*
+       calls.
+
 2017-08-01  Jerome Lambourg  <lambourg@adacore.com>
             Doug Rupp  <rupp@adacore.com>
             Olivier Hainque  <hainque@adacore.com>
index 2937499c4a633bd5c86c001f576dfd2d2ea8a6d3..c2c1e9250805efb79d1e3c7c8749b3aff1952c90 100644 (file)
      inputs in half words 1,3,5,7 (IBM numbering).  Use xxperm to move
      src half words 0,1,2,3 for the conversion instruction.  */
   v = gen_rtvec_v (16, rvals);
-  emit_insn (gen_vec_initv16qi (mask, gen_rtx_PARALLEL (V16QImode, v)));
+  emit_insn (gen_vec_initv16qiqi (mask, gen_rtx_PARALLEL (V16QImode, v)));
   emit_insn (gen_altivec_vperm_v8hiv16qi (tmp, operands[1],
                                          operands[1], mask));
   emit_insn (gen_vsx_xvcvhpsp (operands[0], tmp));
      inputs in half words 1,3,5,7 (IBM numbering).  Use xxperm to move
      src half words 4,5,6,7 for the conversion instruction.  */
   v = gen_rtvec_v (16, rvals);
-  emit_insn (gen_vec_initv16qi (mask, gen_rtx_PARALLEL (V16QImode, v)));
+  emit_insn (gen_vec_initv16qiqi (mask, gen_rtx_PARALLEL (V16QImode, v)));
   emit_insn (gen_altivec_vperm_v8hiv16qi (tmp, operands[1],
                                          operands[1], mask));
   emit_insn (gen_vsx_xvcvhpsp (operands[0], tmp));