binius_field/arch/portable/
packed_512.rs

1// Copyright 2024-2025 Irreducible Inc.
2
3use crate::{
4	arch::{
5		M256,
6		portable::packed_macros::{portable_macros::*, *},
7		strategies::ScaledStrategy,
8	},
9	underlier::ScaledUnderlier,
10};
11
12pub type M512 = ScaledUnderlier<M256, 2>;
13
14define_packed_binary_fields!(
15	underlier: M512,
16	packed_fields: [
17		packed_field {
18			name: PackedBinaryField512x1b,
19			scalar: BinaryField1b,
20			mul:       (ScaledStrategy),
21			square:    (ScaledStrategy),
22			invert:    (ScaledStrategy),
23			mul_alpha: (ScaledStrategy),
24			transform: (ScaledStrategy),
25		},
26	]
27);