]> Cypherpunks.ru repositories - gostls13.git/commit
cmd/compile: split Muluhilo op on ARM64
authorCherry Mui <cherryyz@google.com>
Mon, 22 Aug 2022 21:00:17 +0000 (17:00 -0400)
committerCherry Mui <cherryyz@google.com>
Mon, 22 Aug 2022 21:29:31 +0000 (21:29 +0000)
commit8bf9e014736064de436c411a95467b583f430dea
tree27bc8c1f18d0b9f11999afb8354c068ea7559af9
parent48da729e8468b630ee003ac51cbaac595d53bec8
cmd/compile: split Muluhilo op on ARM64

On ARM64 we use two separate instructions to compute the hi and lo
results of a 64x64->128 multiplication. Lower to two separate ops
so if only one result is needed we can deadcode the other.

Fixes #54607.

Change-Id: Ib023e77eb2b2b0bcf467b45471cb8a294bce6f90
Reviewed-on: https://go-review.googlesource.com/c/go/+/425101
Reviewed-by: Keith Randall <khr@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
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/opGen.go
src/cmd/compile/internal/ssa/rewriteARM64.go
test/codegen/mathbits.go