Botan  2.8.0
Crypto and TLS for C++11
Namespaces | Macros
aes_ni.cpp File Reference
#include <botan/aes.h>
#include <botan/loadstor.h>
#include <wmmintrin.h>

Go to the source code of this file.

Namespaces

 Botan
 

Macros

#define AES_128_key_exp(K, RCON)   aes_128_key_expansion(K, _mm_aeskeygenassist_si128(K, RCON))
 
#define AES_192_key_exp(RCON, EK_OFF)
 
#define AES_DEC_4_LAST_ROUNDS(K)
 
#define AES_DEC_4_ROUNDS(K)
 
#define AES_ENC_4_LAST_ROUNDS(K)
 
#define AES_ENC_4_ROUNDS(K)
 

Macro Definition Documentation

◆ AES_128_key_exp

#define AES_128_key_exp (   K,
  RCON 
)    aes_128_key_expansion(K, _mm_aeskeygenassist_si128(K, RCON))

◆ AES_192_key_exp

#define AES_192_key_exp (   RCON,
  EK_OFF 
)
Value:
aes_192_key_expansion(&K0, &K1, \
_mm_aeskeygenassist_si128(K1, RCON), \
&m_EK[EK_OFF], EK_OFF == 48)

◆ AES_DEC_4_LAST_ROUNDS

#define AES_DEC_4_LAST_ROUNDS (   K)
Value:
do \
{ \
B0 = _mm_aesdeclast_si128(B0, K); \
B1 = _mm_aesdeclast_si128(B1, K); \
B2 = _mm_aesdeclast_si128(B2, K); \
B3 = _mm_aesdeclast_si128(B3, K); \
} while(0)

Definition at line 97 of file aes_ni.cpp.

◆ AES_DEC_4_ROUNDS

#define AES_DEC_4_ROUNDS (   K)
Value:
do \
{ \
B0 = _mm_aesdec_si128(B0, K); \
B1 = _mm_aesdec_si128(B1, K); \
B2 = _mm_aesdec_si128(B2, K); \
B3 = _mm_aesdec_si128(B3, K); \
} while(0)

Definition at line 88 of file aes_ni.cpp.

◆ AES_ENC_4_LAST_ROUNDS

#define AES_ENC_4_LAST_ROUNDS (   K)
Value:
do \
{ \
B0 = _mm_aesenclast_si128(B0, K); \
B1 = _mm_aesenclast_si128(B1, K); \
B2 = _mm_aesenclast_si128(B2, K); \
B3 = _mm_aesenclast_si128(B3, K); \
} while(0)

Definition at line 79 of file aes_ni.cpp.

◆ AES_ENC_4_ROUNDS

#define AES_ENC_4_ROUNDS (   K)
Value:
do \
{ \
B0 = _mm_aesenc_si128(B0, K); \
B1 = _mm_aesenc_si128(B1, K); \
B2 = _mm_aesenc_si128(B2, K); \
B3 = _mm_aesenc_si128(B3, K); \
} while(0)

Definition at line 70 of file aes_ni.cpp.