AVX-512. Add shuffles (pd, 32x4, etc.).
gcc/ * config/i386/i386.c (ix86_expand_args_builtin): Handle CODE_FOR_sse2_shufpd, CODE_FOR_sse2_sse2_shufpd_mask, CODE_FOR_sse2_avx512dq_shuf_f64x2_mask, CODE_FOR_sse2_avx512dq_shuf_i64x2_mask, CODE_FOR_sse2_avx512vl_shuf_i32x4_mask and CODE_FOR_sse2_avx512vl_shuf_f32x4_mask. * config/i386/sse.md (define_expand "avx512dq_shuf_<shuffletype>64x2_mask"): New. (define_insn "<mask_codefor>avx512dq_shuf_<shuffletype>64x2_1<mask_name>"): Ditto. (define_expand "avx512vl_shuf_<shuffletype>32x4_mask"): Ditto. (define_insn "<mask_codefor>avx512vl_shuf_<shuffletype>32x4_1<mask_name>"): Ditto. (define_expand "avx512vl_pshufdv3_mask"): Ditto. (define_insn "avx2_pshufd_1<mask_name>"): Add masking. (define_expand "avx512vl_pshufd_mask"): New. (define_insn "sse2_pshufd_1<mask_name>"): Add masking. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com> Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com> Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com> Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com> From-SVN: r215543
Showing
Please
register
or
sign in
to comment