]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: use zero register instead of specialized *zero instructions
authorkhr@golang.org <khr@golang.org>
Sun, 24 Nov 2024 23:29:56 +0000 (15:29 -0800)
committerKeith Randall <khr@golang.org>
Fri, 4 Apr 2025 22:26:24 +0000 (15:26 -0700)
commite373771490bab84449c7981a6be84e995de1ae80
tree30014d96c3699ce56f9bb454aaa66f5bf2247d4a
parent2d050e91a3cd411d018921b43f3161068b9dcbc6
cmd/compile: use zero register instead of specialized *zero instructions

This lets us get rid of lots of specialized opcodes for storing zero.
Instead, use regular store opcodes that just happen to use the zero
register as one of their inputs.

Change-Id: I2902a6f9b0831cb598df45189ca6bb57221bef72
Reviewed-on: https://go-review.googlesource.com/c/go/+/633075
Reviewed-by: Cherry Mui <cherryyz@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Keith Randall <khr@google.com>
12 files changed:
src/cmd/compile/internal/arm64/ssa.go
src/cmd/compile/internal/ssa/_gen/ARM64.rules
src/cmd/compile/internal/ssa/_gen/ARM64Ops.go
src/cmd/compile/internal/ssa/_gen/ARM64latelower.rules
src/cmd/compile/internal/ssa/_gen/genericOps.go
src/cmd/compile/internal/ssa/_gen/main.go
src/cmd/compile/internal/ssa/op.go
src/cmd/compile/internal/ssa/opGen.go
src/cmd/compile/internal/ssa/pair.go
src/cmd/compile/internal/ssa/regalloc.go
src/cmd/compile/internal/ssa/rewriteARM64.go
src/cmd/compile/internal/ssa/rewriteARM64latelower.go