[PATCH i386 AVX512] [34/n] AVX-512. Extend vpermvar insn patterns.
Uros Bizjak
ubizjak@gmail.com
Wed Sep 10 17:13:00 GMT 2014
On Wed, Sep 10, 2014 at 2:37 PM, Kirill Yukhin <kirill.yukhin@gmail.com> wrote:
> Hello,
> patch in the bottom extends PERMVAR based patterns.
>
> Hello,
>
> Bootstrapped.
> AVX-512* tests on top of patch-set all pass
> under simulator.
>
> Is it ok for trunk?
>
> gcc/
> * config/i386/sse.md
> (define_mode_attr avx2_avx512): Rename from avx2_avx512bw.
> (define_mode_iterator VI48F_256_512): Extend to AVX-512VL.
> (define_insn "<avx2_avx512>_permvar<mode><mask_name>"): Rename from
> "<avx2_avx512f>_permvar<mode><mask_name>".
> (define_insn "<avx512>_permvar<mode><mask_name>"): New.
> (define_insn "<avx2_avx512>_ashrv<mode><mask_name>" with
> VI48_AVX512F_AVX512VL mode iterator): Rename from
You can use extended forms of the mode attributes to distinguish
various same-name patterns:
(define_insn "<avx2_avx512>_ashrv<VI48_AVX512F_AVX512VL:mode><mask_name>"):
Rename ...
It is up to you, the description you provided is also OK.
> "<avx2_avx512f>_ashrv<mode><mask_name>".
> (define_insn "<avx2_avx512>_ashrv<mode><mask_name>" with
> VI2_AVX512VL mode iterator): Ditto.
> (define_insn "<avx2_avx512>_<shift_insn>v<mode><mask_name>" with
> VI48_AVX512F mode iterator): Rename from
> "<avx2_avx512bw>_<shift_insn>v<mode><mask_name>".
> (define_insn "<avx2_avx512>_<shift_insn>v<mode><mask_name>" with
> VI2_AVX512VL mode iterator): Rename from
> "<avx2_avx512bw>_<shift_insn>v<mode><mask_name>".
OK for mainline.
Thanks,
Uros.
More information about the Gcc-patches
mailing list