Botan 2.19.1
Crypto and TLS for C&
Namespaces | Macros | Typedefs
aes_power8.cpp File Reference
#include <botan/aes.h>
#include <botan/cpuid.h>
#include <altivec.h>

Go to the source code of this file.

Namespaces

namespace  Botan
 

Macros

#define AES_DECRYPT_4(B0, B1, B2, B3, K)
 
#define AES_DECRYPT_4_LAST(B0, B1, B2, B3, K)
 
#define AES_ENCRYPT_4(B0, B1, B2, B3, K)
 
#define AES_ENCRYPT_4_LAST(B0, B1, B2, B3, K)
 
#define AES_XOR_4(B0, B1, B2, B3, K)
 

Typedefs

typedef __vector unsigned int Botan::Altivec32x4
 
typedef __vector unsigned long long Botan::Altivec64x2
 
typedef __vector unsigned char Botan::Altivec8x16
 

Macro Definition Documentation

◆ AES_DECRYPT_4

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

Definition at line 87 of file aes_power8.cpp.

◆ AES_DECRYPT_4_LAST

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

Definition at line 94 of file aes_power8.cpp.

◆ AES_ENCRYPT_4

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

Definition at line 73 of file aes_power8.cpp.

◆ AES_ENCRYPT_4_LAST

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

Definition at line 80 of file aes_power8.cpp.

◆ AES_XOR_4

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

Definition at line 66 of file aes_power8.cpp.