Assisted-by: GLM 5.3 Flash
This commit is contained in:
@@ -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
|
Also fixed on the way: arm64 `CASD`/`CASW` lacked an opcode bit, and
|
||||||
riscv64 `VSETVLI` with an immediate length now canonicalises to
|
riscv64 `VSETVLI` with an immediate length now canonicalises to
|
||||||
`vsetivli` as the toolchain does.
|
`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
|
- **The corpus audit measures honestly.** Files named for Go ports gasm
|
||||||
does not target (arm, 386, s390x, ...) are no longer attempted for the
|
does not target (arm, 386, s390x, ...) are no longer attempted for the
|
||||||
four supported architectures (no supported build compiles them), and
|
four supported architectures (no supported build compiles them), and
|
||||||
|
|||||||
Reference in New Issue
Block a user