]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: add fma intrinsic for arm
authorsmasher164 <aindurti@gmail.com>
Mon, 15 Oct 2018 07:14:57 +0000 (03:14 -0400)
committerKeith Randall <khr@golang.org>
Mon, 21 Oct 2019 17:42:47 +0000 (17:42 +0000)
commit58b031949b26efa92a80f39cf68a189b9c0ff07f
treedc73caed45bab6d1fea6485e368c06f6f0aa130a
parent06ac26279cb93140bb2b03bcef9a3300c166cade
cmd/compile: add fma intrinsic for arm

This change introduces an arm intrinsic that generates the FMULAD
instruction for the fused-multiply-add operation on systems that
support it. System support is detected via cpu.ARM.HasVFPv4. A rewrite
rule translates the generic intrinsic to FMULAD.

Updates #25819.

Change-Id: I8459e5dd1cdbdca35f88a78dbeb7d387f1e20efa
Reviewed-on: https://go-review.googlesource.com/c/go/+/142117
Run-TryBot: Keith Randall <khr@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
12 files changed:
src/cmd/compile/internal/arm/ssa.go
src/cmd/compile/internal/gc/builtin.go
src/cmd/compile/internal/gc/builtin/runtime.go
src/cmd/compile/internal/gc/go.go
src/cmd/compile/internal/gc/ssa.go
src/cmd/compile/internal/ssa/gen/ARM.rules
src/cmd/compile/internal/ssa/gen/ARMOps.go
src/cmd/compile/internal/ssa/opGen.go
src/cmd/compile/internal/ssa/rewriteARM.go
src/runtime/cpuflags.go
src/runtime/proc.go
test/codegen/math.go