[dev.simd] cmd/compile: add round simd ops

This CL is generated by CL 678195.

Change-Id: Ica600229a4e9623fa45f3b5aa370cdd6d9c31686
Reviewed-on: https://go-review.googlesource.com/c/go/+/681295
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: David Chase <drchase@google.com>
This commit is contained in:
Junyang Shao 2025-06-12 16:21:35 +00:00
parent 5289e0f24e
commit 34a9cdef87
8 changed files with 6904 additions and 0 deletions

View file

@ -74,6 +74,10 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPADDD512,
ssa.OpAMD64VPADDQ512,
ssa.OpAMD64VPADDB512,
ssa.OpAMD64VADDSUBPS128,
ssa.OpAMD64VADDSUBPS256,
ssa.OpAMD64VADDSUBPD128,
ssa.OpAMD64VADDSUBPD256,
ssa.OpAMD64VANDPS128,
ssa.OpAMD64VANDPS256,
ssa.OpAMD64VANDPD128,
@ -564,6 +568,38 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VSQRTPDMasked512:
p = simdFp1k1fp1(s, v)
case ssa.OpAMD64VROUNDPS128,
ssa.OpAMD64VROUNDPS256,
ssa.OpAMD64VROUNDPD128,
ssa.OpAMD64VROUNDPD256,
ssa.OpAMD64VRNDSCALEPS512,
ssa.OpAMD64VRNDSCALEPS128,
ssa.OpAMD64VRNDSCALEPS256,
ssa.OpAMD64VRNDSCALEPD128,
ssa.OpAMD64VRNDSCALEPD256,
ssa.OpAMD64VRNDSCALEPD512,
ssa.OpAMD64VREDUCEPS512,
ssa.OpAMD64VREDUCEPS128,
ssa.OpAMD64VREDUCEPS256,
ssa.OpAMD64VREDUCEPD128,
ssa.OpAMD64VREDUCEPD256,
ssa.OpAMD64VREDUCEPD512:
p = simdFp11Imm8(s, v)
case ssa.OpAMD64VRNDSCALEPSMasked512,
ssa.OpAMD64VRNDSCALEPSMasked128,
ssa.OpAMD64VRNDSCALEPSMasked256,
ssa.OpAMD64VRNDSCALEPDMasked128,
ssa.OpAMD64VRNDSCALEPDMasked256,
ssa.OpAMD64VRNDSCALEPDMasked512,
ssa.OpAMD64VREDUCEPSMasked512,
ssa.OpAMD64VREDUCEPSMasked128,
ssa.OpAMD64VREDUCEPSMasked256,
ssa.OpAMD64VREDUCEPDMasked128,
ssa.OpAMD64VREDUCEPDMasked256,
ssa.OpAMD64VREDUCEPDMasked512:
p = simdFp1k1fp1Imm8(s, v)
case ssa.OpAMD64VCMPPS128,
ssa.OpAMD64VCMPPS256,
ssa.OpAMD64VCMPPD128,
@ -709,6 +745,18 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPAVGBMasked128,
ssa.OpAMD64VPAVGBMasked256,
ssa.OpAMD64VPAVGBMasked512,
ssa.OpAMD64VRNDSCALEPSMasked512,
ssa.OpAMD64VRNDSCALEPSMasked128,
ssa.OpAMD64VRNDSCALEPSMasked256,
ssa.OpAMD64VRNDSCALEPDMasked128,
ssa.OpAMD64VRNDSCALEPDMasked256,
ssa.OpAMD64VRNDSCALEPDMasked512,
ssa.OpAMD64VREDUCEPSMasked512,
ssa.OpAMD64VREDUCEPSMasked128,
ssa.OpAMD64VREDUCEPSMasked256,
ssa.OpAMD64VREDUCEPDMasked128,
ssa.OpAMD64VREDUCEPDMasked256,
ssa.OpAMD64VREDUCEPDMasked512,
ssa.OpAMD64VDIVPSMasked512,
ssa.OpAMD64VDIVPSMasked128,
ssa.OpAMD64VDIVPSMasked256,