Hi, this the third patch of GFNI ISASET enabling. It enables GF2P8AFFINE instruction, described here: https://software.intel.com/sites/default/files/managed/c5/15/architecture-instruction-set-extensions-programming-reference.pdf
gcc/ * config/i386/gfniintrin.h (_mm_gf2p8affine_epi64_epi8, _mm256_gf2p8affine_epi64_epi8, (_mm_mask_gf2p8affine_epi64_epi8, _mm_maskz_gf2p8affine_epi64_epi8, _mm256_mask_gf2p8affine_epi64_epi8, _mm256_maskz_gf2p8affine_epi64_epi8, _mm512_mask_gf2p8affine_epi64_epi8, _mm512_maskz_gf2p8affine_epi64_epi8, _mm512_gf2p8affine_epi64_epi8): New intrinsics. * config/i386/i386-builtin.def (__builtin_ia32_vgf2p8affineqb_v64qi, __builtin_ia32_vgf2p8affineqb_v32qi, __builtin_ia32_vgf2p8affineqb_v16qi): New builtins. * config/i386/sse.md (vgf2p8affineqb_*): New pattern. gcc/testsuite/ * gcc.target/i386/avx-1.c: Handle new intrinsics. * gcc.target/i386/avx512f-gf2p8affineqb-2.c: New runtime tests. * gcc.target/i386/avx512vl-gf2p8affineqb-2.c: Ditto. * gcc.target/i386/gfni-1.c: Add tests for GF2P8AFFINE. * gcc.target/i386/gfni-2.c: Ditto. * gcc.target/i386/gfni-3.c: Ditto. * gcc.target/i386/gfni-4.c: Ditto. * gcc.target/i386/sse-13.c: Handle new tests. * gcc.target/i386/sse-23.c: Handle new tests. Ok for trunk? Thanks, Julia
0003-GF2P8AFFINE-instruction.patch
Description: 0003-GF2P8AFFINE-instruction.patch