Hi, this patch enables VAESENC instruction from VAES isaset, defined here: 
https://software.intel.com/sites/default/files/managed/c5/15/architecture-instruction-set-extensions-programming-reference.pdf

Ok for trunk?
Thanks,
Julia

gcc/
        * config/i386/i386-builtin.def (__builtin_ia32_vaesenclast_v16qi,
        __builtin_ia32_vaesenclast_v32qi, __builtin_ia32_vaesenclast_v64qi): 
New.
        * config/i386/sse.md (vaesenclast_<mode>): New pattern.
        * config/i386/vaesintrin.h (_mm256_aesenclast_epi128,
        _mm512_aesenclast_epi128, _mm_aesenclast_epi128): New intrinsics.

gcc/testsuite/
        * gcc.target/i386/avx512f-aesenclast-2.c: New test.
        * gcc.target/i386/avx512vl-aesenclast-2.c: Ditto.
        * gcc.target/i386/avx512fvl-vaes-1.c: Handle new intrinsics.

Attachment: 0005-VAESENCLAST.PATCH
Description: 0005-VAESENCLAST.PATCH

Reply via email to