From 9701812bee6e1115c4b069e1ce6b40487432dc03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Balv=C3=ADn?= Date: Mon, 21 Sep 2026 02:04:44 +0200 Subject: [PATCH] docs: changelog for the completeness waves Assisted-by: GLM 5.3 Flash --- CHANGELOG.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b434567..16410b3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 Also fixed on the way: arm64 `CASD`/`CASW` lacked an opcode bit, and riscv64 `VSETVLI` with an immediate length now canonicalises to `vsetivli` as the toolchain does. +- **The GOROOT instruction wave, part 2.** The encoder gains the + quad-register AVX-512 families (4FMAPS, 4FNMADD, 4VNNIW, VP4DPWSSD, + VP4DPWSSDS) with the register list riding the inverted V'VVVV field, + floating-point immediates on the SSE scalar moves and arithmetic + (the constant lands in a synthesised read-only pool, a positive zero + collapses to XORPS exactly as the toolchain does), accept-and-ignore + FUNCDATA and PCDATA, three-operand double shifts, static-symbol + operands for the legacy SSE moves, and the pooled 64-bit immediate + materialisation on riscv64. The parser carries bracketed register + ranges, index-only VSIB memory operands and bare trailing immediates; + macro substitution reaches parameters used with element suffixes + (`A.S4`), and `;` separates statements in plain files. +- **`gasm asm -GOOS`.** The go_asm.h generator type-checks per target + GOOS, so the darwin-only and windows-only runtime files assemble with + their own defines; the corpus audit derives the GOOS from the file + name. DATA initialisers accept `$symbol(SB)` values (an absolute + relocation at the data field, GOOBJ on all four architectures and ELF + on amd64, arm64, riscv64 and loong64), and U+2215 is accepted inside + symbol package paths. - **The corpus audit measures honestly.** Files named for Go ports gasm does not target (arm, 386, s390x, ...) are no longer attempted for the four supported architectures (no supported build compiles them), and