[PATCH, i386, AVX-512] Update extract_even_odd w/ AVX-512BW insns.

Kirill Yukhin kirill.yukhin@gmail.com
Fri Oct 2 14:38:00 GMT 2015


On 01 Oct 14:11, Kirill Yukhin wrote:
> Bootstrapped. New tests pass (fail w/o the change). Regtesting is in progress.
> 
> Is it ok for trunk?
> 
> gcc/
> 	* config/i386/i386.c (expand_vec_perm_even_odd_trunc): New.
> 	(expand_vec_perm_even_odd_1): Handle V64QImode.
> 	(ix86_expand_vec_perm_const_1): Try expansion with
> 	expand_vec_perm_even_odd_trunc as well.
> 	* config/i386/sse.md (VI124_AVX512F): Rename to ...
> 	(define_mode_iterator VI124_AVX2_24_AVX512F_1_AVX512BW): This. Extend
> 	to V54QI.
> 	(define_mode_iterator VI248_AVX2_8_AVX512F): Rename to ...
> 	(define_mode_iterator VI248_AVX2_8_AVX512F_24_AVX512BW): This. Extend
> 	to V32HI and V16SI.
> 	(define_insn "avx512bw_<code>v32hiv32qi2"): Unhide pattern name.
> 	(define_expand "vec_pack_trunc_<mode>"): Update iterator name.
> 	(define_expand "vec_unpacks_lo_<mode>"): Ditto.
> 	(define_expand "vec_unpacks_hi_<mode>"): Ditto.
> 	(define_expand "vec_unpacku_lo_<mode>"): Ditto.
> 	(define_expand "vec_unpacku_hi_<mode>"): Ditto.
> 
> gcc/testsuite/
> 	* gcc.target/i386/vect-pack-trunc-1.c: New test.
> 	* gcc.target/i386/vect-pack-trunc-2.c: Ditto.
> 	* gcc.target/i386/vect-perm-even-1.c: Ditto.
> 	* gcc.target/i386/vect-perm-odd-1.c: Ditto.
> 	* gcc.target/i386/vect-unpack-1.c: Ditto.
> 	* gcc.target/i386/vect-unpack-2.c: Ditto.
Checked into main trunk. I'll also check it into gcc-5-branch 
if no objections from RMs next ww.

--
Thanks, K



More information about the Gcc-patches mailing list