binius_field/arch/portable/
packed_aes_128.rs1use super::{
4 packed::PackedPrimitiveType, packed_arithmetic::impl_tower_constants,
5 packed_macros::impl_broadcast,
6};
7use crate::{
8 aes_field::AESTowerField8b,
9 arch::portable::packed_macros::{portable_macros::*, *},
10 arithmetic_traits::{
11 impl_invert_with, impl_mul_alpha_with, impl_mul_with, impl_square_with,
12 impl_transformation_with_strategy,
13 },
14};
15
16define_packed_binary_fields!(
17 underlier: u128,
18 packed_fields: [
19 packed_field {
20 name: PackedAESBinaryField16x8b,
21 scalar: AESTowerField8b,
22 alpha_idx: _,
23 mul: (PairwiseTableStrategy),
24 square: (PairwiseTableStrategy),
25 invert: (PairwiseTableStrategy),
26 mul_alpha: (PairwiseTableStrategy),
27 transform: (PackedStrategy),
28 },
29 ]
30);
31
32impl_tower_constants!(AESTowerField8b, u128, 0x00d300d300d300d300d300d300d300d3);