|
native 0.0.1
Vectors, masks and wide register packs for C++26
|
Exported Modules | |
| module | native.arm.features |
| module | native.simd |
Functions | |
|
template<isa< arm > Arch> requires (Arch.has(arm_feature::aes)) | |
| constexpr simd< std::uint8_t, 16, Arch > | native::aese (simd< std::uint8_t, 16, Arch > state, simd< std::uint8_t, 16, Arch > round_key) noexcept |
| Apply AddRoundKey, SubBytes and ShiftRows to one AES state. | |
|
template<isa< arm > Arch> requires (!Arch.has(arm_feature::aes) && requires { sizeof(simd<std::uint8_t, 16, Arch>); }) | |
| consteval simd< std::uint8_t, 16, Arch > | native::aese (simd< std::uint8_t, 16, Arch > state, simd< std::uint8_t, 16, Arch > round_key) noexcept |
| Evaluate constant operands without the instruction feature. | |
|
template<isa< arm > Arch> requires (Arch.has(arm_feature::aes)) | |
| constexpr simd< std::uint8_t, 16, Arch > | native::aesd (simd< std::uint8_t, 16, Arch > state, simd< std::uint8_t, 16, Arch > round_key) noexcept |
| Apply AddRoundKey, inverse ShiftRows and inverse SubBytes to one AES state. | |
|
template<isa< arm > Arch> requires (!Arch.has(arm_feature::aes) && requires { sizeof(simd<std::uint8_t, 16, Arch>); }) | |
| consteval simd< std::uint8_t, 16, Arch > | native::aesd (simd< std::uint8_t, 16, Arch > state, simd< std::uint8_t, 16, Arch > round_key) noexcept |
| Evaluate constant operands without the instruction feature. | |
|
template<isa< arm > Arch> requires (Arch.has(arm_feature::aes)) | |
| constexpr simd< std::uint8_t, 16, Arch > | native::aesmc (simd< std::uint8_t, 16, Arch > state) noexcept |
| Apply AES MixColumns independently to the four state columns. | |
|
template<isa< arm > Arch> requires (!Arch.has(arm_feature::aes) && requires { sizeof(simd<std::uint8_t, 16, Arch>); }) | |
| consteval simd< std::uint8_t, 16, Arch > | native::aesmc (simd< std::uint8_t, 16, Arch > state) noexcept |
| Evaluate constant operands without the instruction feature. | |
|
template<isa< arm > Arch> requires (Arch.has(arm_feature::aes)) | |
| constexpr simd< std::uint8_t, 16, Arch > | native::aesimc (simd< std::uint8_t, 16, Arch > state) noexcept |
| Apply inverse AES MixColumns independently to the four state columns. | |
|
template<isa< arm > Arch> requires (!Arch.has(arm_feature::aes) && requires { sizeof(simd<std::uint8_t, 16, Arch>); }) | |
| consteval simd< std::uint8_t, 16, Arch > | native::aesimc (simd< std::uint8_t, 16, Arch > state) noexcept |
| Evaluate constant operands without the instruction feature. | |
| template<isa< arm > Arch, class... T> | |
| void | native::aese (T...)=delete |
| Reject unsupported argument shapes or unavailable instruction features. | |
| template<isa< arm > Arch, class... T> | |
| void | native::aesd (T...)=delete |
| Reject unsupported argument shapes or unavailable instruction features. | |
| template<isa< arm > Arch, class... T> | |
| void | native::aesmc (T...)=delete |
| Reject unsupported argument shapes or unavailable instruction features. | |
| template<isa< arm > Arch, class... T> | |
| void | native::aesimc (T...)=delete |
| Reject unsupported argument shapes or unavailable instruction features. | |
Files | |
| file | src/native.arm.aes.ccm |