-
v0.26.0 Stable
released this
2026-08-02 21:11:30 +00:00 | 253 commits to main since this releaseUniversal differential fuzzing:
gasm verify --fuzzneeds no hand-written
reference. It parses the// funcsignature from the assembly source,
generates typed random inputs (slices with random content, ints, pointers to
fixed arrays), JIT-executes BOTH the gasm-assembled and the go-tool-asm-
assembled versions with independent buffer copies, and compares the result
area bit-for-bit.Added
verify:FuzzFunc/ExtractSignatures/parseFuncSig— universal
differential fuzz driven by the conventional// funccomment. Each
version gets its own buffer set (deep copy) so functions that write to
their arguments (histogram increments) don't corrupt the other's input.gasm verify --fuzz [-n N]: runs the differential fuzz for every function
with a parseable signature. Total functions (wideCopy, pack16, decorrelate,
analyze, autocorr) pass; partial functions (decoders that fault on malformed
input) should use--ground-truthinstead.
Known limitation
--fuzzcrashes the process for partial functions (e.g. LZ4 decoders) whose
over-copy paths read past the buffer on random garbage input. Subprocess
isolation (fork per function) is planned. Use--ground-truthfor decoders.Downloads