mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
[dev.simd] cmd/compile: add fp3fp1 regsiter shape
This is to accomodate dot product instructions. Change-Id: I88b21f848d7a51ad036bb3555c30f12b72571b2b Reviewed-on: https://go-review.googlesource.com/c/go/+/680235 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Junyang Shao <shaojunyang@google.com>
This commit is contained in:
parent
2eaa5a0703
commit
6bc3505773
2 changed files with 3 additions and 2 deletions
|
|
@ -188,6 +188,7 @@ func init() {
|
||||||
fp1m1fp1 = regInfo{inputs: []regMask{fp, mask}, outputs: fponly}
|
fp1m1fp1 = regInfo{inputs: []regMask{fp, mask}, outputs: fponly}
|
||||||
fp2m1fp1 = regInfo{inputs: []regMask{fp, fp, mask}, outputs: fponly}
|
fp2m1fp1 = regInfo{inputs: []regMask{fp, fp, mask}, outputs: fponly}
|
||||||
fp2m1m1 = regInfo{inputs: []regMask{fp, fp, mask}, outputs: maskonly}
|
fp2m1m1 = regInfo{inputs: []regMask{fp, fp, mask}, outputs: maskonly}
|
||||||
|
fp3fp1 = regInfo{inputs: []regMask{fp, fp, fp}, outputs: fponly}
|
||||||
|
|
||||||
prefreg = regInfo{inputs: []regMask{gpspsbg}}
|
prefreg = regInfo{inputs: []regMask{gpspsbg}}
|
||||||
)
|
)
|
||||||
|
|
@ -1298,7 +1299,7 @@ func init() {
|
||||||
pkg: "cmd/internal/obj/x86",
|
pkg: "cmd/internal/obj/x86",
|
||||||
genfile: "../../amd64/ssa.go",
|
genfile: "../../amd64/ssa.go",
|
||||||
genSIMDfile: "../../amd64/simdssa.go",
|
genSIMDfile: "../../amd64/simdssa.go",
|
||||||
ops: append(AMD64ops, simdAMD64Ops(fp11, fp21, fp2m1, fp1m1fp1, fp2m1fp1, fp2m1m1)...), // AMD64ops,
|
ops: append(AMD64ops, simdAMD64Ops(fp11, fp21, fp2m1, fp1m1fp1, fp2m1fp1, fp2m1m1, fp3fp1)...), // AMD64ops,
|
||||||
blocks: AMD64blocks,
|
blocks: AMD64blocks,
|
||||||
regnames: regNamesAMD64,
|
regnames: regNamesAMD64,
|
||||||
ParamIntRegNames: "AX BX CX DI SI R8 R9 R10 R11",
|
ParamIntRegNames: "AX BX CX DI SI R8 R9 R10 R11",
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
// Code generated by x/arch/internal/simdgen using 'go run . -xedPath $XED_PATH -o godefs -goroot $GOROOT go.yaml types.yaml categories.yaml'; DO NOT EDIT.
|
// Code generated by x/arch/internal/simdgen using 'go run . -xedPath $XED_PATH -o godefs -goroot $GOROOT go.yaml types.yaml categories.yaml'; DO NOT EDIT.
|
||||||
package main
|
package main
|
||||||
|
|
||||||
func simdAMD64Ops(fp1fp1, fp2fp1, fp2m1, fp1m1fp1, fp2m1fp1, fp2m1m1 regInfo) []opData {
|
func simdAMD64Ops(fp1fp1, fp2fp1, fp2m1, fp1m1fp1, fp2m1fp1, fp2m1m1, fp3fp1 regInfo) []opData {
|
||||||
return []opData{
|
return []opData{
|
||||||
{name: "VADDPS512", argLength: 2, reg: fp2fp1, asm: "VADDPS", commutative: true, typ: "Vec512"},
|
{name: "VADDPS512", argLength: 2, reg: fp2fp1, asm: "VADDPS", commutative: true, typ: "Vec512"},
|
||||||
{name: "VANDPS512", argLength: 2, reg: fp2fp1, asm: "VANDPS", commutative: true, typ: "Vec512"},
|
{name: "VANDPS512", argLength: 2, reg: fp2fp1, asm: "VANDPS", commutative: true, typ: "Vec512"},
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue