23 #ifndef _WMMINTRIN_AES_H
24 #define _WMMINTRIN_AES_H
28 #if !defined (__AES__)
29 # error "AES instructions not enabled"
33 #define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__))
36 _mm_aesenc_si128(__m128i __V, __m128i __R)
38 return (__m128i)__builtin_ia32_aesenc128(__V, __R);
42 _mm_aesenclast_si128(__m128i __V, __m128i __R)
44 return (__m128i)__builtin_ia32_aesenclast128(__V, __R);
48 _mm_aesdec_si128(__m128i __V, __m128i __R)
50 return (__m128i)__builtin_ia32_aesdec128(__V, __R);
54 _mm_aesdeclast_si128(__m128i __V, __m128i __R)
56 return (__m128i)__builtin_ia32_aesdeclast128(__V, __R);
60 _mm_aesimc_si128(__m128i __V)
62 return (__m128i)__builtin_ia32_aesimc128(__V);
65 #define _mm_aeskeygenassist_si128(C, R) \
66 __builtin_ia32_aeskeygenassist128((C), (R))
68 #undef __DEFAULT_FN_ATTRS
#define __DEFAULT_FN_ATTRS