Skip to content

Conversation

@tarcieri
Copy link
Member

Consolidates the many (nested, via unions!) repeated Polyval structs found throughout the crate for each backend into a single Polyval(Generic) struct which imlements the universal-hash interface in a single place.

FieldElement now defers decoding into SIMD registers until we're ready to actually perform a field operation, so we can use that as a common type for all field backends (and already implemented this in previous commits).

Backends are now just free functions that operate on FieldElement, making them dramatically simpler.

@tarcieri tarcieri force-pushed the polyval/consolidate-uhf-type branch from c668d07 to 030ef72 Compare January 27, 2026 18:04
Consolidates the many (nested, via unions!) repeated `Polyval` structs
found throughout the crate for each backend into a single
`Polyval(Generic)` struct which imlements the `universal-hash` interface
in a single place.

`FieldElement` now defers decoding into SIMD registers until we're ready
to actually perform a field operation, so we can use that as a common
type for all field backends (and already implemented this in previous
commits).

Backends are now just free functions that operate on `FieldElement`,
making them dramatically simpler.
@tarcieri tarcieri force-pushed the polyval/consolidate-uhf-type branch from 030ef72 to cc9faff Compare January 27, 2026 18:06
@tarcieri tarcieri merged commit 7312cc8 into master Jan 27, 2026
25 checks passed
@tarcieri tarcieri deleted the polyval/consolidate-uhf-type branch January 27, 2026 18:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants