This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix up vec_set_* for -mavx512vl -mno-avx512dq
- From: Kirill Yukhin <kirill dot yukhin at gmail dot com>
- To: Jakub Jelinek <jakub at redhat dot com>
- Cc: Uros Bizjak <ubizjak at gmail dot com>, gcc-patches at gcc dot gnu dot org
- Date: Sun, 22 May 2016 10:42:11 +0300
- Subject: Re: [PATCH] Fix up vec_set_* for -mavx512vl -mno-avx512dq
- Authentication-results: sourceware.org; auth=none
- References: <20160518210339 dot GX28550 at tucnak dot redhat dot com>
Hello,
On 18 May 23:03, Jakub Jelinek wrote:
> Hi!
>
> The vinsert[if]64x2 instructions are AVX512VL & AVX512DQ, so
> if only AVX512VL is on, we should emit the other insns - 32x4,
> which without masking do the same thing.
> With masking, we have to require TARGET_AVX512DQ.
>
> Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk?
OK.
>
> 2016-05-18 Jakub Jelinek <jakub@redhat.com>
>
> * config/i386/sse.md (vec_set_lo_<mode><mask_name>,
> vec_set_hi_<mode><mask_name>): Add && <mask_avx512dq_condition>
> condition. For !TARGET_AVX512DQ, emit 32x4 instruction instead
> of 64x2.
>
> * gcc.target/i386/avx512dq-vinsert-1.c: New test.
> * gcc.target/i386/avx512vl-vinsert-1.c: New test.
--
Thanks, K