src/block/aes_intel/aes_intel.cpp File Reference

#include <botan/aes_intel.h>
#include <botan/loadstor.h>
#include <wmmintrin.h>

Go to the source code of this file.

Namespaces

namespace  Botan

Defines

#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)


Define Documentation

#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   ) 

Value:

aes_192_key_expansion(&K0, &K1,                            \
                         _mm_aeskeygenassist_si128(K1, RCON), \
                         EK + EK_OFF, EK_OFF == 48)

#define AES_DEC_4_LAST_ROUNDS (  ) 

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 94 of file aes_intel.cpp.

Referenced by Botan::AES_256_Intel::decrypt_n(), Botan::AES_192_Intel::decrypt_n(), and Botan::AES_128_Intel::decrypt_n().

#define AES_DEC_4_ROUNDS (  ) 

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 85 of file aes_intel.cpp.

Referenced by Botan::AES_256_Intel::decrypt_n(), Botan::AES_192_Intel::decrypt_n(), and Botan::AES_128_Intel::decrypt_n().

#define AES_ENC_4_LAST_ROUNDS (  ) 

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 76 of file aes_intel.cpp.

Referenced by Botan::AES_256_Intel::encrypt_n(), Botan::AES_192_Intel::encrypt_n(), and Botan::AES_128_Intel::encrypt_n().

#define AES_ENC_4_ROUNDS (  ) 

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 67 of file aes_intel.cpp.

Referenced by Botan::AES_256_Intel::encrypt_n(), Botan::AES_192_Intel::encrypt_n(), and Botan::AES_128_Intel::encrypt_n().


Generated on Fri Aug 13 16:20:53 2010 for Botan by  doxygen 1.5.8