GFNI enabling [4/4]
authorJulia Koval <julia.koval@intel.com>
Thu, 16 Nov 2017 05:59:51 +0000 (06:59 +0100)
committerKirill Yukhin <kyukhin@gcc.gnu.org>
Thu, 16 Nov 2017 05:59:51 +0000 (05:59 +0000)
commite0c31a15faa00230fdd91b7fce179a8a92119b12
tree84630f8c5531d8f1f618619c2c73571615d4b69e
parent00a2022a6717d205c838cf5f624c74e8ddd02fc6
GFNI enabling [4/4]

gcc/
* config/i386/gfniintrin.h (_mm_gf2p8mul_epi8, _mm256_gf2p8mul_epi8,
_mm_mask_gf2p8mul_epi8, _mm_maskz_gf2p8mul_epi8,
_mm256_mask_gf2p8mul_epi8, _mm256_maskz_gf2p8mul_epi8,
_mm512_mask_gf2p8mul_epi8, _mm512_maskz_gf2p8mul_epi8,
_mm512_gf2p8mul_epi8): New intrinsics.
* config/i386/i386-builtin-types.def
(V64QI_FTYPE_V64QI_V64QI): New type.
* config/i386/i386-builtin.def (__builtin_ia32_vgf2p8mulb_v64qi,
__builtin_ia32_vgf2p8mulb_v64qi_mask, __builtin_ia32_vgf2p8mulb_v32qi,
__builtin_ia32_vgf2p8mulb_v32qi_mask, __builtin_ia32_vgf2p8mulb_v16qi,
__builtin_ia32_vgf2p8mulb_v16qi_mask): New builtins.
* config/i386/sse.md (vgf2p8mulb_*): New pattern.
* config/i386/i386.c (ix86_expand_args_builtin): Handle new type.
gcc/testsuite/
* gcc.target/i386/avx512f-gf2p8mulb-2.c: New runtime tests.
* gcc.target/i386/avx512vl-gf2p8mulb-2.c: Ditto.
* gcc.target/i386/gfni-1.c: Add tests for GF2P8MUL.
* gcc.target/i386/gfni-2.c: Ditto.
* gcc.target/i386/gfni-3.c: Ditto.
* gcc.target/i386/gfni-4.c: Ditto.

From-SVN: r254795
15 files changed:
gcc/ChangeLog
gcc/config/i386/gfniintrin.h
gcc/config/i386/i386-builtin-types.def
gcc/config/i386/i386-builtin.def
gcc/config/i386/i386.c
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/avx-1.c
gcc/testsuite/gcc.target/i386/avx-2.c
gcc/testsuite/gcc.target/i386/avx512f-gf2p8mulb-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/avx512vl-gf2p8mulb-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/gfni-1.c
gcc/testsuite/gcc.target/i386/gfni-2.c
gcc/testsuite/gcc.target/i386/gfni-3.c
gcc/testsuite/gcc.target/i386/gfni-4.c