On Fri, Aug 15, 2014 at 1:52 PM, Kirill Yukhin <kirill.yuk...@gmail.com> wrote:
> Hello,
> This patch introduces new patterns to support
> AVX-512Vl,DQ broadcast insns.
>
> Bootstrapped.
> New tests on top of patch-set all pass
> under simulator.
>
> Is it ok for trunk?
>
> gcc/
>         * config/i386/sse.md
>         (define_mode_iterator VI4F_BRCST32x2): New.
>         (define_mode_attr 64x2_mode): New.
>         (define_mode_attr 32x2mode): New.
>         (define_insn "<mask_codefor>avx512dq_broadcast<mode><mask_name>"): 
> New.
>         (define_insn "<mask_codefor>avx512vl_broadcast<mode><mask_name>_1"): 
> New.
>         (define_insn "<mask_codefor>avx512dq_broadcast<mode><mask_name>_1"): 
> New.
>         (define_insn "<mask_codefor>avx512dq_broadcast<mode><mask_name>_1"): 
> New.

Can you avoid insn constraints like:

> +  "TARGET_AVX512DQ && (<MODE_SIZE> == 64 || TARGET_AVX512VL)"

This should be split to two insn patterns, each with different
baseline insn constraint.

Uros.

Reply via email to