mirror of
https://github.com/slackhq/nebula.git
synced 2026-08-15 15:37:03 +02:00
865dc9725c
The correctness sweeps only exercised the public Checksum dispatcher, so wherever it resolved to the gvisor fallback (non-AVX2 amd64, fallback architectures) the suite compared gvisor against itself and the AVX2 assembly went untested -- silently green. Per-arch export_test.go files now enumerate the hand-written implementations and every sweep runs against the dispatcher plus each of them, skipping with an explicit message when the running CPU can't execute one. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
12 lines
487 B
Go
12 lines
487 B
Go
package checksum
|
|
|
|
// archImpls exposes every hand-written implementation on this architecture
|
|
// so the tests exercise them directly, independent of what the public
|
|
// Checksum dispatches to on the running CPU. Without this, running the
|
|
// suite on a non-AVX2 machine compared gvisor against itself and left the
|
|
// assembly untested — silently. available=false makes the test skip loudly
|
|
// instead.
|
|
var archImpls = []archImpl{
|
|
{name: "avx2", fn: checksumAVX2, available: hasAVX2},
|
|
}
|