diff options
| author | Junyang Shao <shaojunyang@google.com> | 2025-11-04 20:33:52 +0000 |
|---|---|---|
| committer | Junyang Shao <shaojunyang@google.com> | 2025-11-10 09:53:20 -0800 |
| commit | 972732b245399097e1e59aa2e35c47ef5efbf394 (patch) | |
| tree | 74f0faf2b2c6d2cc7eeff8f8a012340c1abb2183 /src/cmd/compile/internal/ssa/rewriteAMD64.go | |
| parent | bf77323efa55a4fbe86a3e19c84d12533f5f10af (diff) | |
| download | go-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.go | 180 |
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 { |
