clang 8.0.0

Macros | Functions
__wmmintrin_aes.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Macros
#define | __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("aes"), __min_vector_width__(128)))
#define | _mm_aeskeygenassist_si128(C, R) (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))
| Generates a round key for AES encryption, operating on 128-bit data specified in the first source operand and using an 8-bit round constant specified by the second source operand, and writes the result to the destination. More...

## Functions
static __inline__ __m128i __DEFAULT_FN_ATTRS | _mm_aesenc_si128 (__m128i __V, __m128i __R)
| Performs a single round of AES encryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination. More...
static __inline__ __m128i __DEFAULT_FN_ATTRS | _mm_aesenclast_si128 (__m128i __V, __m128i __R)
| Performs the final round of AES encryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination. More...
static __inline__ __m128i __DEFAULT_FN_ATTRS | _mm_aesdec_si128 (__m128i __V, __m128i __R)
| Performs a single round of AES decryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination. More...
static __inline__ __m128i __DEFAULT_FN_ATTRS | _mm_aesdeclast_si128 (__m128i __V, __m128i __R)
| Performs the final round of AES decryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination. More...
static __inline__ __m128i __DEFAULT_FN_ATTRS | _mm_aesimc_si128 (__m128i __V)
| Applies the AES InvMixColumns() transformation to an expanded key contained in the source operand, and writes the result to the destination. More...

## Macro Definition Documentation

## ◆ __DEFAULT_FN_ATTRS

#define __DEFAULT_FN_ATTRS __attribute__((__always_inline__, __nodebug__, __target__("aes"), __min_vector_width__(128)))

Definition at line 32 of file __wmmintrin_aes.h.

Referenced by _mm_aesdec_si128(), _mm_aesdeclast_si128(), _mm_aesenc_si128(), and _mm_aesenclast_si128().

## ◆ _mm_aeskeygenassist_si128

#define _mm_aeskeygenassist_si128 | ( |  | C,
|  |  | R
| ) |  | (__m128i)__builtin_ia32_aeskeygenassist128((__v2di)(__m128i)(C), (int)(R))

Generates a round key for AES encryption, operating on 128-bit data specified in the first source operand and using an 8-bit round constant specified by the second source operand, and writes the result to the destination.

__m128i _mm_aeskeygenassist_si128(__m128i C, const int R);

This intrinsic corresponds to the `AESKEYGENASSIST` instruction.

Parameters

  C | A 128-bit integer vector that is used to generate the AES encryption key.
  R | An 8-bit round constant used to generate the AES encryption key.

Returns
  A 128-bit round key for AES encryption.

Definition at line 149 of file __wmmintrin_aes.h.

## Function Documentation

## ◆ _mm_aesdec_si128()

static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_aesdec_si128 | ( | __m128i | __V,
|  | __m128i | __R
| ) |  |
| static

Performs a single round of AES decryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination.

This intrinsic corresponds to the `VAESDEC` instruction.

Parameters

  __V | A 128-bit integer vector containing the state value.
  __R | A 128-bit integer vector containing the round key value.

Returns
  A 128-bit integer vector containing the decrypted value.

Definition at line 89 of file __wmmintrin_aes.h.

References __DEFAULT_FN_ATTRS.

## ◆ _mm_aesdeclast_si128()

static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_aesdeclast_si128 | ( | __m128i | __V,
|  | __m128i | __R
| ) |  |
| static

Performs the final round of AES decryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination.

This intrinsic corresponds to the `VAESDECLAST` instruction.

Parameters

  __V | A 128-bit integer vector containing the state value.
  __R | A 128-bit integer vector containing the round key value.

Returns
  A 128-bit integer vector containing the decrypted value.

Definition at line 109 of file __wmmintrin_aes.h.

References __DEFAULT_FN_ATTRS.

## ◆ _mm_aesenc_si128()

static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_aesenc_si128 | ( | __m128i | __V,
|  | __m128i | __R
| ) |  |
| static

Performs a single round of AES encryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination.

This intrinsic corresponds to the `VAESENC` instruction.

Parameters

  __V | A 128-bit integer vector containing the state value.
  __R | A 128-bit integer vector containing the round key value.

Returns
  A 128-bit integer vector containing the encrypted value.

Definition at line 49 of file __wmmintrin_aes.h.

References __DEFAULT_FN_ATTRS.

## ◆ _mm_aesenclast_si128()

static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_aesenclast_si128 | ( | __m128i | __V,
|  | __m128i | __R
| ) |  |
| static

Performs the final round of AES encryption using the Equivalent Inverse Cipher, transforming the state value from the first source operand using a 128-bit round key value contained in the second source operand, and writes the result to the destination.

This intrinsic corresponds to the `VAESENCLAST` instruction.

Parameters

  __V | A 128-bit integer vector containing the state value.
  __R | A 128-bit integer vector containing the round key value.

Returns
  A 128-bit integer vector containing the encrypted value.

Definition at line 69 of file __wmmintrin_aes.h.

References __DEFAULT_FN_ATTRS.

## ◆ _mm_aesimc_si128()

static __inline__ __m128i __DEFAULT_FN_ATTRS _mm_aesimc_si128 | ( | __m128i | __V | ) |
| static

Applies the AES InvMixColumns() transformation to an expanded key contained in the source operand, and writes the result to the destination.

This intrinsic corresponds to the `VAESIMC` instruction.

Parameters

  __V | A 128-bit integer vector containing the expanded key.

Returns
  A 128-bit integer vector containing the transformed value.

Definition at line 126 of file __wmmintrin_aes.h.