[dev.simd] cmd/compile, simd: complete truncating u?int conversions.

Downsizing conversions' truncating version complete. Saturation ver not
done.

Change-Id: I710976c2b5329e2882763d60fcef2a827213df09
Reviewed-on: https://go-review.googlesource.com/c/go/+/697975
Reviewed-by: David Chase <drchase@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This commit is contained in:
Junyang Shao 2025-08-21 04:33:46 +00:00
parent f4c41d9922
commit 7fdb1da6b0
11 changed files with 1055 additions and 4 deletions

View file

@ -41,8 +41,15 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPBROADCASTW512,
ssa.OpAMD64VPBROADCASTD512,
ssa.OpAMD64VPBROADCASTQ512,
ssa.OpAMD64VPMOVWB128,
ssa.OpAMD64VPMOVWB256,
ssa.OpAMD64VPMOVDB128,
ssa.OpAMD64VPMOVQB128,
ssa.OpAMD64VPMOVSXBW256,
ssa.OpAMD64VPMOVSXBW512,
ssa.OpAMD64VPMOVDW128,
ssa.OpAMD64VPMOVDW256,
ssa.OpAMD64VPMOVQW128,
ssa.OpAMD64VPMOVSXBW128,
ssa.OpAMD64VCVTTPS2DQ128,
ssa.OpAMD64VCVTTPS2DQ256,
@ -50,6 +57,8 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPMOVSXBD512,
ssa.OpAMD64VPMOVSXWD256,
ssa.OpAMD64VPMOVSXWD512,
ssa.OpAMD64VPMOVQD128,
ssa.OpAMD64VPMOVQD256,
ssa.OpAMD64VPMOVSXBD128,
ssa.OpAMD64VPMOVSXWD128,
ssa.OpAMD64VPMOVSXBD256,
@ -715,8 +724,15 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPCOMPRESSQMasked128,
ssa.OpAMD64VPCOMPRESSQMasked256,
ssa.OpAMD64VPCOMPRESSQMasked512,
ssa.OpAMD64VPMOVWBMasked128,
ssa.OpAMD64VPMOVWBMasked256,
ssa.OpAMD64VPMOVDBMasked128,
ssa.OpAMD64VPMOVQBMasked128,
ssa.OpAMD64VPMOVSXBWMasked256,
ssa.OpAMD64VPMOVSXBWMasked512,
ssa.OpAMD64VPMOVDWMasked128,
ssa.OpAMD64VPMOVDWMasked256,
ssa.OpAMD64VPMOVQWMasked128,
ssa.OpAMD64VPMOVSXBWMasked128,
ssa.OpAMD64VCVTTPS2DQMasked128,
ssa.OpAMD64VCVTTPS2DQMasked256,
@ -724,6 +740,8 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPMOVSXBDMasked512,
ssa.OpAMD64VPMOVSXWDMasked256,
ssa.OpAMD64VPMOVSXWDMasked512,
ssa.OpAMD64VPMOVQDMasked128,
ssa.OpAMD64VPMOVQDMasked256,
ssa.OpAMD64VPMOVSXBDMasked128,
ssa.OpAMD64VPMOVSXWDMasked128,
ssa.OpAMD64VPMOVSXBDMasked256,
@ -1367,8 +1385,15 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPCOMPRESSQMasked128,
ssa.OpAMD64VPCOMPRESSQMasked256,
ssa.OpAMD64VPCOMPRESSQMasked512,
ssa.OpAMD64VPMOVWBMasked128,
ssa.OpAMD64VPMOVWBMasked256,
ssa.OpAMD64VPMOVDBMasked128,
ssa.OpAMD64VPMOVQBMasked128,
ssa.OpAMD64VPMOVSXBWMasked256,
ssa.OpAMD64VPMOVSXBWMasked512,
ssa.OpAMD64VPMOVDWMasked128,
ssa.OpAMD64VPMOVDWMasked256,
ssa.OpAMD64VPMOVQWMasked128,
ssa.OpAMD64VPMOVSXBWMasked128,
ssa.OpAMD64VCVTTPS2DQMasked128,
ssa.OpAMD64VCVTTPS2DQMasked256,
@ -1376,6 +1401,8 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
ssa.OpAMD64VPMOVSXBDMasked512,
ssa.OpAMD64VPMOVSXWDMasked256,
ssa.OpAMD64VPMOVSXWDMasked512,
ssa.OpAMD64VPMOVQDMasked128,
ssa.OpAMD64VPMOVQDMasked256,
ssa.OpAMD64VPMOVSXBDMasked128,
ssa.OpAMD64VPMOVSXWDMasked128,
ssa.OpAMD64VPMOVSXBDMasked256,