Botan 2.19.5 Crypto and TLS for C&

Namespaces | Macros
aes_armv8.cpp File Reference
`#include <botan/aes.h>`
`#include <botan/loadstor.h>`
`#include <arm_neon.h>`

Go to the source code of this file.

## Namespaces
namespace | Botan

## Macros
#define | AES_DEC_4_LAST_ROUNDS(K, K2)
#define | AES_DEC_4_ROUNDS(K)
#define | AES_ENC_4_LAST_ROUNDS(K, K2)
#define | AES_ENC_4_ROUNDS(K)

## Macro Definition Documentation

## ◆ AES_DEC_4_LAST_ROUNDS

#define AES_DEC_4_LAST_ROUNDS | ( |  | K,
|  |  | K2
| ) |  |

Value:
do \
{ \
B0 = veorq_u8(vaesdq_u8(B0, K), K2); \
B1 = veorq_u8(vaesdq_u8(B1, K), K2); \
B2 = veorq_u8(vaesdq_u8(B2, K), K2); \
B3 = veorq_u8(vaesdq_u8(B3, K), K2); \
} while(0)

Definition at line 44 of file aes_armv8.cpp.

## ◆ AES_DEC_4_ROUNDS

#define AES_DEC_4_ROUNDS | ( |  | K | ) |

Value:
do \
{ \
B0 = vaesimcq_u8(vaesdq_u8(B0, K)); \
B1 = vaesimcq_u8(vaesdq_u8(B1, K)); \
B2 = vaesimcq_u8(vaesdq_u8(B2, K)); \
B3 = vaesimcq_u8(vaesdq_u8(B3, K)); \
} while(0)

Definition at line 35 of file aes_armv8.cpp.

## ◆ AES_ENC_4_LAST_ROUNDS

#define AES_ENC_4_LAST_ROUNDS | ( |  | K,
|  |  | K2
| ) |  |

Value:
do \
{ \
B0 = veorq_u8(vaeseq_u8(B0, K), K2); \
B1 = veorq_u8(vaeseq_u8(B1, K), K2); \
B2 = veorq_u8(vaeseq_u8(B2, K), K2); \
B3 = veorq_u8(vaeseq_u8(B3, K), K2); \
} while(0)

Definition at line 26 of file aes_armv8.cpp.

## ◆ AES_ENC_4_ROUNDS

#define AES_ENC_4_ROUNDS | ( |  | K | ) |

Value:
do \
{ \
B0 = vaesmcq_u8(vaeseq_u8(B0, K)); \
B1 = vaesmcq_u8(vaeseq_u8(B1, K)); \
B2 = vaesmcq_u8(vaeseq_u8(B2, K)); \
B3 = vaesmcq_u8(vaeseq_u8(B3, K)); \
} while(0)

Definition at line 17 of file aes_armv8.cpp.