feat(asm): PCALIGN alignment on amd64
Assisted-by: GLM 5.3 Flash
This commit is contained in:
+8
-7
@@ -22,13 +22,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||
relocation, per-GOOS); arm64 accepts the bare-register indirect branch
|
||||
(`BL R9` beside `BL (R9)`, both BLR) and the zero-immediate store
|
||||
(`MOVD $0, mem` through the zero register, rejecting non-zero immediates
|
||||
as the toolchain does); and `gasm asm` predefines the `GOARCH_<arch>`
|
||||
and `GOOS_<goos>` macros the go command passes to `go tool asm`, so
|
||||
GOROOT headers' `#ifdef GOARCH_amd64` platform blocks (`go_tls.h`'s
|
||||
`get_tls` and friends) select as intended. The GOROOT corpus measure
|
||||
moves to 276 of 353 files assembling for every target architecture
|
||||
(78.2 %), 91.4 % of the real-code corpus (280 of 303), from 70.8 %
|
||||
and 82.2 %.
|
||||
as the toolchain does); `PCALIGN` now aligns on amd64, padding with the
|
||||
toolchain's greedy single-instruction NOPs; and `gasm asm` predefines
|
||||
the `GOARCH_<arch>` and `GOOS_<goos>` macros the go command passes to
|
||||
`go tool asm`, so GOROOT headers' `#ifdef GOARCH_amd64` platform blocks
|
||||
(`go_tls.h`'s `get_tls` and friends) select as intended. The GOROOT
|
||||
corpus measure moves to 285 of 353 files assembling for every target
|
||||
architecture (80.7 %), 91.4 % of the real-code corpus (280 of 303),
|
||||
from 70.8 % and 82.2 %.
|
||||
|
||||
### Added
|
||||
|
||||
|
||||
Reference in New Issue
Block a user