Botan 2.19.5 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,
|  |  | K
| ) |  |

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,
|  |  | K
| ) |  |

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,
|  |  | K
| ) |  |

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,
|  |  | K
| ) |  |

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,
|  |  | K
| ) |  |

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.