]> Cypherpunks repositories - gostls13.git/commit
[dev.simd] cmd/compile: make (most) move/load/store lowering use reg and width only
authorJunyang Shao <shaojunyang@google.com>
Thu, 14 Aug 2025 16:56:28 +0000 (16:56 +0000)
committerJunyang Shao <shaojunyang@google.com>
Fri, 15 Aug 2025 16:51:39 +0000 (09:51 -0700)
commit908e3e8166898a3b5f7c961e774f681da2a765bc
tree30c081b8ad7b6c2a960282375f465d5c22d39095
parent9783f86bc8953c3d93853b2382a4de011c5e26a7
[dev.simd] cmd/compile: make (most) move/load/store lowering use reg and width only

This CL tries to clean up the move/load/store lowering a bit. After CL
695315 the register information for instructions are expected to be
correct for SIMD, but we still need to pick the right instruction during
ssa to asm lowering.

The code before this CL should be working correctly, but MOVSSconst and
MOVSDconst contains duplicated codes, this CL removes that.

This CL also rewrite move/load/storeByTypeAndReg to use only the width
and reg for all non-SIMD types, which is more consistent.

Change-Id: I76c14f3d0140bcbd4fbea0df275fee0202a3b7d9
Reviewed-on: https://go-review.googlesource.com/c/go/+/696175
Reviewed-by: David Chase <drchase@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
src/cmd/compile/internal/amd64/ssa.go