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_vaesenc_v16qi,
        __builtin_ia32_vaesenc_v32qi, __builtin_ia32_vaesenc_v64qi): New.
        * config/i386/sse.md (vaesenc_<mode>): New pattern.
        * config/i386/vaesintrin.h (_mm256_aesenc_epi128, _mm512_aesenc_epi128,
        _mm_aesenc_epi128): New intrinsics.

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

Attachment: 0004-VAESENC-instruction.patch
Description: 0004-VAESENC-instruction.patch

Reply via email to