docs: fold development changes into v0.29.0, document --call/--buf/--map
This commit is contained in:
+22
-20
@@ -9,31 +9,13 @@ and this project adheres to [Conventional Commits](https://www.conventionalcommi
|
||||
|
||||
Unreleased changes on the `development` branch.
|
||||
|
||||
### Added
|
||||
|
||||
- **`gasm diff --map`** — compare functions whose names differ between files
|
||||
(e.g. `--map wideCopyAVX2=wideCopyAVX512` pairs AVX2 and AVX-512 variants
|
||||
regardless of suffix). Unmapped functions fall back to the original name match.
|
||||
- **`gasm verify --call`** — invoke a single function with user-supplied buffers
|
||||
(`--buf name:size:pattern`) instead of the smoke/abi/fuzz sweeps. Patterns:
|
||||
`zero`, `ones`, `seq`, or a hex blob. Useful for partial functions (e.g.
|
||||
decoders) that crash on random input but should succeed on valid data.
|
||||
The arg block is printed before and after the call, showing return values.
|
||||
- **`gasm verify --ground-truth`** now documented in `--help` (was already a flag,
|
||||
just missing from the help text).
|
||||
|
||||
### Fixed
|
||||
|
||||
- **Signature parser** — grouped Go parameters like `dst, src []byte` are now
|
||||
parsed correctly (both get type `[]byte`). Previously the first name was
|
||||
treated as its own type (`dst` with size 8), causing wrong ABI0 arg-block
|
||||
layout in both `verify --call` and the fuzzer.
|
||||
|
||||
## [0.29.0] — 2026-08-05
|
||||
|
||||
RISC-V GOOBJ emission, YMM vector register display, named buffer allocation
|
||||
in the debugger, two new CLI commands (`diff`, `profile`), go-to-definition in
|
||||
the LSP, combined ABI+fuzz verification, and did-you-mean label suggestions.
|
||||
A `--map` flag for `diff` and `--call`/`--buf` flags for `verify` extend the
|
||||
new CLI commands. A signature-parser fix corrects grouped Go parameters.
|
||||
|
||||
### Added
|
||||
|
||||
@@ -57,11 +39,31 @@ the LSP, combined ABI+fuzz verification, and did-you-mean label suggestions.
|
||||
a crash or mismatch for reproducibility.
|
||||
- **ABI + fuzz combined** — `gasm verify --fuzz` now runs ABI checks (sentinel
|
||||
registers, canary, stack bounds) alongside differential fuzz testing.
|
||||
- **`gasm diff --map`** — compare functions whose names differ between files
|
||||
(e.g. `--map wideCopyAVX2=wideCopyAVX512` pairs AVX2 and AVX-512 variants
|
||||
regardless of suffix). Unmapped functions fall back to the original name match.
|
||||
- **`gasm verify --call`** — invoke a single function with user-supplied buffers
|
||||
(`--buf name:size:pattern`) instead of the smoke/abi/fuzz sweeps. Patterns:
|
||||
`zero`, `ones`, `seq`, or a hex blob. Useful for partial functions (e.g.
|
||||
decoders) that crash on random input but should succeed on valid data.
|
||||
The arg block is printed before and after the call, showing return values.
|
||||
- **`gasm verify --ground-truth`** now documented in `--help` (was already a flag,
|
||||
just missing from the help text).
|
||||
|
||||
### Fixed
|
||||
|
||||
- **Signature parser** — grouped Go parameters like `dst, src []byte` are now
|
||||
parsed correctly (both get type `[]byte`). Previously the first name was
|
||||
treated as its own type (`dst` with size 8), causing wrong ABI0 arg-block
|
||||
layout in both `verify --call` and the fuzzer.
|
||||
|
||||
### Verified
|
||||
|
||||
- RISC-V GOOBJ output links correctly with the Go toolchain.
|
||||
- `gasm diff` detects byte-level differences in real assembly kernels.
|
||||
- `gasm diff --map` pairs AVX2 and AVX-512 kernels by mapped name.
|
||||
- `gasm verify --call` invokes `wideCopyAVX2` and `decodeBlockAVX2` with
|
||||
user-supplied buffers; the decoder returns its error code instead of crashing.
|
||||
- LSP go-to-definition resolves labels across functions and files.
|
||||
- Debugger YMM display confirmed on AVX2-capable hardware.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user