aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/rewriteAMD64.go
diff options
context:
space:
mode:
authorJunyang Shao <shaojunyang@google.com>2025-11-04 20:33:52 +0000
committerJunyang Shao <shaojunyang@google.com>2025-11-10 09:53:20 -0800
commit972732b245399097e1e59aa2e35c47ef5efbf394 (patch)
tree74f0faf2b2c6d2cc7eeff8f8a012340c1abb2183 /src/cmd/compile/internal/ssa/rewriteAMD64.go
parentbf77323efa55a4fbe86a3e19c84d12533f5f10af (diff)
downloadgo-972732b245399097e1e59aa2e35c47ef5efbf394.tar.xz
[dev.simd] simd, cmd/compile: remove move from API
These should really be machine ops only. Change-Id: Idcc611719eff068153d88c5162dd2e0883e5e0ca Reviewed-on: https://go-review.googlesource.com/c/go/+/717821 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Diffstat (limited to 'src/cmd/compile/internal/ssa/rewriteAMD64.go')
-rw-r--r--src/cmd/compile/internal/ssa/rewriteAMD64.go180
1 files changed, 0 insertions, 180 deletions
diff --git a/src/cmd/compile/internal/ssa/rewriteAMD64.go b/src/cmd/compile/internal/ssa/rewriteAMD64.go
index 83f8e0dc2e..610086b88f 100644
--- a/src/cmd/compile/internal/ssa/rewriteAMD64.go
+++ b/src/cmd/compile/internal/ssa/rewriteAMD64.go
@@ -6095,26 +6095,6 @@ func rewriteValueAMD64(v *Value) bool {
case OpconcatSelectedConstantUint64x2:
v.Op = OpAMD64VSHUFPD128
return true
- case OpmoveMaskedFloat32x16:
- return rewriteValueAMD64_OpmoveMaskedFloat32x16(v)
- case OpmoveMaskedFloat64x8:
- return rewriteValueAMD64_OpmoveMaskedFloat64x8(v)
- case OpmoveMaskedInt16x32:
- return rewriteValueAMD64_OpmoveMaskedInt16x32(v)
- case OpmoveMaskedInt32x16:
- return rewriteValueAMD64_OpmoveMaskedInt32x16(v)
- case OpmoveMaskedInt64x8:
- return rewriteValueAMD64_OpmoveMaskedInt64x8(v)
- case OpmoveMaskedInt8x64:
- return rewriteValueAMD64_OpmoveMaskedInt8x64(v)
- case OpmoveMaskedUint16x32:
- return rewriteValueAMD64_OpmoveMaskedUint16x32(v)
- case OpmoveMaskedUint32x16:
- return rewriteValueAMD64_OpmoveMaskedUint32x16(v)
- case OpmoveMaskedUint64x8:
- return rewriteValueAMD64_OpmoveMaskedUint64x8(v)
- case OpmoveMaskedUint8x64:
- return rewriteValueAMD64_OpmoveMaskedUint8x64(v)
case OpternInt32x16:
v.Op = OpAMD64VPTERNLOGD512
return true
@@ -60638,166 +60618,6 @@ func rewriteValueAMD64_OpblendMaskedInt8x64(v *Value) bool {
return true
}
}
-func rewriteValueAMD64_OpmoveMaskedFloat32x16(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedFloat32x16 x mask)
- // result: (VMOVUPSMasked512 x (VPMOVVec32x16ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVUPSMasked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec32x16ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedFloat64x8(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedFloat64x8 x mask)
- // result: (VMOVUPDMasked512 x (VPMOVVec64x8ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVUPDMasked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec64x8ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedInt16x32(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedInt16x32 x mask)
- // result: (VMOVDQU16Masked512 x (VPMOVVec16x32ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU16Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec16x32ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedInt32x16(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedInt32x16 x mask)
- // result: (VMOVDQU32Masked512 x (VPMOVVec32x16ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU32Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec32x16ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedInt64x8(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedInt64x8 x mask)
- // result: (VMOVDQU64Masked512 x (VPMOVVec64x8ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU64Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec64x8ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedInt8x64(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedInt8x64 x mask)
- // result: (VMOVDQU8Masked512 x (VPMOVVec8x64ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU8Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec8x64ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedUint16x32(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedUint16x32 x mask)
- // result: (VMOVDQU16Masked512 x (VPMOVVec16x32ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU16Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec16x32ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedUint32x16(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedUint32x16 x mask)
- // result: (VMOVDQU32Masked512 x (VPMOVVec32x16ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU32Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec32x16ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedUint64x8(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedUint64x8 x mask)
- // result: (VMOVDQU64Masked512 x (VPMOVVec64x8ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU64Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec64x8ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
-func rewriteValueAMD64_OpmoveMaskedUint8x64(v *Value) bool {
- v_1 := v.Args[1]
- v_0 := v.Args[0]
- b := v.Block
- // match: (moveMaskedUint8x64 x mask)
- // result: (VMOVDQU8Masked512 x (VPMOVVec8x64ToM <types.TypeMask> mask))
- for {
- x := v_0
- mask := v_1
- v.reset(OpAMD64VMOVDQU8Masked512)
- v0 := b.NewValue0(v.Pos, OpAMD64VPMOVVec8x64ToM, types.TypeMask)
- v0.AddArg(mask)
- v.AddArg2(x, v0)
- return true
- }
-}
func rewriteBlockAMD64(b *Block) bool {
typ := &b.Func.Config.Types
switch b.Kind {