mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
[dev.simd] cmd/compile, simd: adjust Shift.* operations
This CL does: 1. Removes ShiftRightSignExtended, default signed vectors to shift arithmetic, and unsigned to shift logical. 2. Add the missing Shifts which were left out by YAML error in the generator. This CL is generated by CL 687595. Change-Id: I663115498adb91c82e89a8476e6748794e997cfa Reviewed-on: https://go-review.googlesource.com/c/go/+/687596 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: David Chase <drchase@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com>
This commit is contained in:
parent
4993a91ae1
commit
b69622b83e
9 changed files with 2021 additions and 1846 deletions
|
|
@ -273,15 +273,6 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSLLVQ128,
|
ssa.OpAMD64VPSLLVQ128,
|
||||||
ssa.OpAMD64VPSLLVQ256,
|
ssa.OpAMD64VPSLLVQ256,
|
||||||
ssa.OpAMD64VPSLLVQ512,
|
ssa.OpAMD64VPSLLVQ512,
|
||||||
ssa.OpAMD64VPSRLVW128,
|
|
||||||
ssa.OpAMD64VPSRLVW256,
|
|
||||||
ssa.OpAMD64VPSRLVW512,
|
|
||||||
ssa.OpAMD64VPSRLVD128,
|
|
||||||
ssa.OpAMD64VPSRLVD256,
|
|
||||||
ssa.OpAMD64VPSRLVD512,
|
|
||||||
ssa.OpAMD64VPSRLVQ128,
|
|
||||||
ssa.OpAMD64VPSRLVQ256,
|
|
||||||
ssa.OpAMD64VPSRLVQ512,
|
|
||||||
ssa.OpAMD64VPSRAVW128,
|
ssa.OpAMD64VPSRAVW128,
|
||||||
ssa.OpAMD64VPSRAVW256,
|
ssa.OpAMD64VPSRAVW256,
|
||||||
ssa.OpAMD64VPSRAVW512,
|
ssa.OpAMD64VPSRAVW512,
|
||||||
|
|
@ -291,6 +282,15 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSRAVQ128,
|
ssa.OpAMD64VPSRAVQ128,
|
||||||
ssa.OpAMD64VPSRAVQ256,
|
ssa.OpAMD64VPSRAVQ256,
|
||||||
ssa.OpAMD64VPSRAVQ512,
|
ssa.OpAMD64VPSRAVQ512,
|
||||||
|
ssa.OpAMD64VPSRLVW128,
|
||||||
|
ssa.OpAMD64VPSRLVW256,
|
||||||
|
ssa.OpAMD64VPSRLVW512,
|
||||||
|
ssa.OpAMD64VPSRLVD128,
|
||||||
|
ssa.OpAMD64VPSRLVD256,
|
||||||
|
ssa.OpAMD64VPSRLVD512,
|
||||||
|
ssa.OpAMD64VPSRLVQ128,
|
||||||
|
ssa.OpAMD64VPSRLVQ256,
|
||||||
|
ssa.OpAMD64VPSRLVQ512,
|
||||||
ssa.OpAMD64VPSIGNB128,
|
ssa.OpAMD64VPSIGNB128,
|
||||||
ssa.OpAMD64VPSIGNB256,
|
ssa.OpAMD64VPSIGNB256,
|
||||||
ssa.OpAMD64VPSIGNW128,
|
ssa.OpAMD64VPSIGNW128,
|
||||||
|
|
@ -504,15 +504,6 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSLLVQMasked128,
|
ssa.OpAMD64VPSLLVQMasked128,
|
||||||
ssa.OpAMD64VPSLLVQMasked256,
|
ssa.OpAMD64VPSLLVQMasked256,
|
||||||
ssa.OpAMD64VPSLLVQMasked512,
|
ssa.OpAMD64VPSLLVQMasked512,
|
||||||
ssa.OpAMD64VPSRLVWMasked128,
|
|
||||||
ssa.OpAMD64VPSRLVWMasked256,
|
|
||||||
ssa.OpAMD64VPSRLVWMasked512,
|
|
||||||
ssa.OpAMD64VPSRLVDMasked128,
|
|
||||||
ssa.OpAMD64VPSRLVDMasked256,
|
|
||||||
ssa.OpAMD64VPSRLVDMasked512,
|
|
||||||
ssa.OpAMD64VPSRLVQMasked128,
|
|
||||||
ssa.OpAMD64VPSRLVQMasked256,
|
|
||||||
ssa.OpAMD64VPSRLVQMasked512,
|
|
||||||
ssa.OpAMD64VPSRAVWMasked128,
|
ssa.OpAMD64VPSRAVWMasked128,
|
||||||
ssa.OpAMD64VPSRAVWMasked256,
|
ssa.OpAMD64VPSRAVWMasked256,
|
||||||
ssa.OpAMD64VPSRAVWMasked512,
|
ssa.OpAMD64VPSRAVWMasked512,
|
||||||
|
|
@ -522,6 +513,15 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSRAVQMasked128,
|
ssa.OpAMD64VPSRAVQMasked128,
|
||||||
ssa.OpAMD64VPSRAVQMasked256,
|
ssa.OpAMD64VPSRAVQMasked256,
|
||||||
ssa.OpAMD64VPSRAVQMasked512,
|
ssa.OpAMD64VPSRAVQMasked512,
|
||||||
|
ssa.OpAMD64VPSRLVWMasked128,
|
||||||
|
ssa.OpAMD64VPSRLVWMasked256,
|
||||||
|
ssa.OpAMD64VPSRLVWMasked512,
|
||||||
|
ssa.OpAMD64VPSRLVDMasked128,
|
||||||
|
ssa.OpAMD64VPSRLVDMasked256,
|
||||||
|
ssa.OpAMD64VPSRLVDMasked512,
|
||||||
|
ssa.OpAMD64VPSRLVQMasked128,
|
||||||
|
ssa.OpAMD64VPSRLVQMasked256,
|
||||||
|
ssa.OpAMD64VPSRLVQMasked512,
|
||||||
ssa.OpAMD64VSUBPSMasked128,
|
ssa.OpAMD64VSUBPSMasked128,
|
||||||
ssa.OpAMD64VSUBPSMasked256,
|
ssa.OpAMD64VSUBPSMasked256,
|
||||||
ssa.OpAMD64VSUBPSMasked512,
|
ssa.OpAMD64VSUBPSMasked512,
|
||||||
|
|
@ -845,36 +845,60 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
|
|
||||||
case ssa.OpAMD64VPSLLW128,
|
case ssa.OpAMD64VPSLLW128,
|
||||||
ssa.OpAMD64VPSLLW256,
|
ssa.OpAMD64VPSLLW256,
|
||||||
|
ssa.OpAMD64VPSLLW512,
|
||||||
ssa.OpAMD64VPSLLD128,
|
ssa.OpAMD64VPSLLD128,
|
||||||
ssa.OpAMD64VPSLLD256,
|
ssa.OpAMD64VPSLLD256,
|
||||||
|
ssa.OpAMD64VPSLLD512,
|
||||||
ssa.OpAMD64VPSLLQ128,
|
ssa.OpAMD64VPSLLQ128,
|
||||||
ssa.OpAMD64VPSLLQ256,
|
ssa.OpAMD64VPSLLQ256,
|
||||||
ssa.OpAMD64VPSLLQ512,
|
ssa.OpAMD64VPSLLQ512,
|
||||||
ssa.OpAMD64VPSRLW128,
|
|
||||||
ssa.OpAMD64VPSRLW256,
|
|
||||||
ssa.OpAMD64VPSRLD128,
|
|
||||||
ssa.OpAMD64VPSRLD256,
|
|
||||||
ssa.OpAMD64VPSRLQ128,
|
|
||||||
ssa.OpAMD64VPSRLQ256,
|
|
||||||
ssa.OpAMD64VPSRLQ512,
|
|
||||||
ssa.OpAMD64VPSRAW128,
|
ssa.OpAMD64VPSRAW128,
|
||||||
ssa.OpAMD64VPSRAW256,
|
ssa.OpAMD64VPSRAW256,
|
||||||
|
ssa.OpAMD64VPSRAW512,
|
||||||
ssa.OpAMD64VPSRAD128,
|
ssa.OpAMD64VPSRAD128,
|
||||||
ssa.OpAMD64VPSRAD256,
|
ssa.OpAMD64VPSRAD256,
|
||||||
|
ssa.OpAMD64VPSRAD512,
|
||||||
ssa.OpAMD64VPSRAQ128,
|
ssa.OpAMD64VPSRAQ128,
|
||||||
ssa.OpAMD64VPSRAQ256,
|
ssa.OpAMD64VPSRAQ256,
|
||||||
ssa.OpAMD64VPSRAQ512:
|
ssa.OpAMD64VPSRAQ512,
|
||||||
|
ssa.OpAMD64VPSRLW128,
|
||||||
|
ssa.OpAMD64VPSRLW256,
|
||||||
|
ssa.OpAMD64VPSRLW512,
|
||||||
|
ssa.OpAMD64VPSRLD128,
|
||||||
|
ssa.OpAMD64VPSRLD256,
|
||||||
|
ssa.OpAMD64VPSRLD512,
|
||||||
|
ssa.OpAMD64VPSRLQ128,
|
||||||
|
ssa.OpAMD64VPSRLQ256,
|
||||||
|
ssa.OpAMD64VPSRLQ512:
|
||||||
p = simdVfpv(s, v)
|
p = simdVfpv(s, v)
|
||||||
|
|
||||||
case ssa.OpAMD64VPSLLQMasked128,
|
case ssa.OpAMD64VPSLLWMasked128,
|
||||||
|
ssa.OpAMD64VPSLLWMasked256,
|
||||||
|
ssa.OpAMD64VPSLLWMasked512,
|
||||||
|
ssa.OpAMD64VPSLLDMasked128,
|
||||||
|
ssa.OpAMD64VPSLLDMasked256,
|
||||||
|
ssa.OpAMD64VPSLLDMasked512,
|
||||||
|
ssa.OpAMD64VPSLLQMasked128,
|
||||||
ssa.OpAMD64VPSLLQMasked256,
|
ssa.OpAMD64VPSLLQMasked256,
|
||||||
ssa.OpAMD64VPSLLQMasked512,
|
ssa.OpAMD64VPSLLQMasked512,
|
||||||
ssa.OpAMD64VPSRLQMasked128,
|
ssa.OpAMD64VPSRAWMasked128,
|
||||||
ssa.OpAMD64VPSRLQMasked256,
|
ssa.OpAMD64VPSRAWMasked256,
|
||||||
ssa.OpAMD64VPSRLQMasked512,
|
ssa.OpAMD64VPSRAWMasked512,
|
||||||
|
ssa.OpAMD64VPSRADMasked128,
|
||||||
|
ssa.OpAMD64VPSRADMasked256,
|
||||||
|
ssa.OpAMD64VPSRADMasked512,
|
||||||
ssa.OpAMD64VPSRAQMasked128,
|
ssa.OpAMD64VPSRAQMasked128,
|
||||||
ssa.OpAMD64VPSRAQMasked256,
|
ssa.OpAMD64VPSRAQMasked256,
|
||||||
ssa.OpAMD64VPSRAQMasked512:
|
ssa.OpAMD64VPSRAQMasked512,
|
||||||
|
ssa.OpAMD64VPSRLWMasked128,
|
||||||
|
ssa.OpAMD64VPSRLWMasked256,
|
||||||
|
ssa.OpAMD64VPSRLWMasked512,
|
||||||
|
ssa.OpAMD64VPSRLDMasked128,
|
||||||
|
ssa.OpAMD64VPSRLDMasked256,
|
||||||
|
ssa.OpAMD64VPSRLDMasked512,
|
||||||
|
ssa.OpAMD64VPSRLQMasked128,
|
||||||
|
ssa.OpAMD64VPSRLQMasked256,
|
||||||
|
ssa.OpAMD64VPSRLQMasked512:
|
||||||
p = simdVfpkv(s, v)
|
p = simdVfpkv(s, v)
|
||||||
|
|
||||||
case ssa.OpAMD64VPINSRB128,
|
case ssa.OpAMD64VPINSRB128,
|
||||||
|
|
@ -1198,6 +1222,12 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSHLDQMasked128,
|
ssa.OpAMD64VPSHLDQMasked128,
|
||||||
ssa.OpAMD64VPSHLDQMasked256,
|
ssa.OpAMD64VPSHLDQMasked256,
|
||||||
ssa.OpAMD64VPSHLDQMasked512,
|
ssa.OpAMD64VPSHLDQMasked512,
|
||||||
|
ssa.OpAMD64VPSLLWMasked128,
|
||||||
|
ssa.OpAMD64VPSLLWMasked256,
|
||||||
|
ssa.OpAMD64VPSLLWMasked512,
|
||||||
|
ssa.OpAMD64VPSLLDMasked128,
|
||||||
|
ssa.OpAMD64VPSLLDMasked256,
|
||||||
|
ssa.OpAMD64VPSLLDMasked512,
|
||||||
ssa.OpAMD64VPSLLQMasked128,
|
ssa.OpAMD64VPSLLQMasked128,
|
||||||
ssa.OpAMD64VPSLLQMasked256,
|
ssa.OpAMD64VPSLLQMasked256,
|
||||||
ssa.OpAMD64VPSLLQMasked512,
|
ssa.OpAMD64VPSLLQMasked512,
|
||||||
|
|
@ -1210,12 +1240,24 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSHRDQMasked128,
|
ssa.OpAMD64VPSHRDQMasked128,
|
||||||
ssa.OpAMD64VPSHRDQMasked256,
|
ssa.OpAMD64VPSHRDQMasked256,
|
||||||
ssa.OpAMD64VPSHRDQMasked512,
|
ssa.OpAMD64VPSHRDQMasked512,
|
||||||
ssa.OpAMD64VPSRLQMasked128,
|
ssa.OpAMD64VPSRAWMasked128,
|
||||||
ssa.OpAMD64VPSRLQMasked256,
|
ssa.OpAMD64VPSRAWMasked256,
|
||||||
ssa.OpAMD64VPSRLQMasked512,
|
ssa.OpAMD64VPSRAWMasked512,
|
||||||
|
ssa.OpAMD64VPSRADMasked128,
|
||||||
|
ssa.OpAMD64VPSRADMasked256,
|
||||||
|
ssa.OpAMD64VPSRADMasked512,
|
||||||
ssa.OpAMD64VPSRAQMasked128,
|
ssa.OpAMD64VPSRAQMasked128,
|
||||||
ssa.OpAMD64VPSRAQMasked256,
|
ssa.OpAMD64VPSRAQMasked256,
|
||||||
ssa.OpAMD64VPSRAQMasked512,
|
ssa.OpAMD64VPSRAQMasked512,
|
||||||
|
ssa.OpAMD64VPSRLWMasked128,
|
||||||
|
ssa.OpAMD64VPSRLWMasked256,
|
||||||
|
ssa.OpAMD64VPSRLWMasked512,
|
||||||
|
ssa.OpAMD64VPSRLDMasked128,
|
||||||
|
ssa.OpAMD64VPSRLDMasked256,
|
||||||
|
ssa.OpAMD64VPSRLDMasked512,
|
||||||
|
ssa.OpAMD64VPSRLQMasked128,
|
||||||
|
ssa.OpAMD64VPSRLQMasked256,
|
||||||
|
ssa.OpAMD64VPSRLQMasked512,
|
||||||
ssa.OpAMD64VPSHLDVWMasked128,
|
ssa.OpAMD64VPSHLDVWMasked128,
|
||||||
ssa.OpAMD64VPSHLDVWMasked256,
|
ssa.OpAMD64VPSHLDVWMasked256,
|
||||||
ssa.OpAMD64VPSHLDVWMasked512,
|
ssa.OpAMD64VPSHLDVWMasked512,
|
||||||
|
|
@ -1243,15 +1285,6 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSHRDVQMasked128,
|
ssa.OpAMD64VPSHRDVQMasked128,
|
||||||
ssa.OpAMD64VPSHRDVQMasked256,
|
ssa.OpAMD64VPSHRDVQMasked256,
|
||||||
ssa.OpAMD64VPSHRDVQMasked512,
|
ssa.OpAMD64VPSHRDVQMasked512,
|
||||||
ssa.OpAMD64VPSRLVWMasked128,
|
|
||||||
ssa.OpAMD64VPSRLVWMasked256,
|
|
||||||
ssa.OpAMD64VPSRLVWMasked512,
|
|
||||||
ssa.OpAMD64VPSRLVDMasked128,
|
|
||||||
ssa.OpAMD64VPSRLVDMasked256,
|
|
||||||
ssa.OpAMD64VPSRLVDMasked512,
|
|
||||||
ssa.OpAMD64VPSRLVQMasked128,
|
|
||||||
ssa.OpAMD64VPSRLVQMasked256,
|
|
||||||
ssa.OpAMD64VPSRLVQMasked512,
|
|
||||||
ssa.OpAMD64VPSRAVWMasked128,
|
ssa.OpAMD64VPSRAVWMasked128,
|
||||||
ssa.OpAMD64VPSRAVWMasked256,
|
ssa.OpAMD64VPSRAVWMasked256,
|
||||||
ssa.OpAMD64VPSRAVWMasked512,
|
ssa.OpAMD64VPSRAVWMasked512,
|
||||||
|
|
@ -1261,6 +1294,15 @@ func ssaGenSIMDValue(s *ssagen.State, v *ssa.Value) bool {
|
||||||
ssa.OpAMD64VPSRAVQMasked128,
|
ssa.OpAMD64VPSRAVQMasked128,
|
||||||
ssa.OpAMD64VPSRAVQMasked256,
|
ssa.OpAMD64VPSRAVQMasked256,
|
||||||
ssa.OpAMD64VPSRAVQMasked512,
|
ssa.OpAMD64VPSRAVQMasked512,
|
||||||
|
ssa.OpAMD64VPSRLVWMasked128,
|
||||||
|
ssa.OpAMD64VPSRLVWMasked256,
|
||||||
|
ssa.OpAMD64VPSRLVWMasked512,
|
||||||
|
ssa.OpAMD64VPSRLVDMasked128,
|
||||||
|
ssa.OpAMD64VPSRLVDMasked256,
|
||||||
|
ssa.OpAMD64VPSRLVDMasked512,
|
||||||
|
ssa.OpAMD64VPSRLVQMasked128,
|
||||||
|
ssa.OpAMD64VPSRLVQMasked256,
|
||||||
|
ssa.OpAMD64VPSRLVQMasked512,
|
||||||
ssa.OpAMD64VSQRTPSMasked128,
|
ssa.OpAMD64VSQRTPSMasked128,
|
||||||
ssa.OpAMD64VSQRTPSMasked256,
|
ssa.OpAMD64VSQRTPSMasked256,
|
||||||
ssa.OpAMD64VSQRTPSMasked512,
|
ssa.OpAMD64VSQRTPSMasked512,
|
||||||
|
|
|
||||||
|
|
@ -1239,15 +1239,19 @@
|
||||||
(SetElemUint64x2 ...) => (VPINSRQ128 ...)
|
(SetElemUint64x2 ...) => (VPINSRQ128 ...)
|
||||||
(ShiftAllLeftInt16x8 ...) => (VPSLLW128 ...)
|
(ShiftAllLeftInt16x8 ...) => (VPSLLW128 ...)
|
||||||
(ShiftAllLeftInt16x16 ...) => (VPSLLW256 ...)
|
(ShiftAllLeftInt16x16 ...) => (VPSLLW256 ...)
|
||||||
|
(ShiftAllLeftInt16x32 ...) => (VPSLLW512 ...)
|
||||||
(ShiftAllLeftInt32x4 ...) => (VPSLLD128 ...)
|
(ShiftAllLeftInt32x4 ...) => (VPSLLD128 ...)
|
||||||
(ShiftAllLeftInt32x8 ...) => (VPSLLD256 ...)
|
(ShiftAllLeftInt32x8 ...) => (VPSLLD256 ...)
|
||||||
|
(ShiftAllLeftInt32x16 ...) => (VPSLLD512 ...)
|
||||||
(ShiftAllLeftInt64x2 ...) => (VPSLLQ128 ...)
|
(ShiftAllLeftInt64x2 ...) => (VPSLLQ128 ...)
|
||||||
(ShiftAllLeftInt64x4 ...) => (VPSLLQ256 ...)
|
(ShiftAllLeftInt64x4 ...) => (VPSLLQ256 ...)
|
||||||
(ShiftAllLeftInt64x8 ...) => (VPSLLQ512 ...)
|
(ShiftAllLeftInt64x8 ...) => (VPSLLQ512 ...)
|
||||||
(ShiftAllLeftUint16x8 ...) => (VPSLLW128 ...)
|
(ShiftAllLeftUint16x8 ...) => (VPSLLW128 ...)
|
||||||
(ShiftAllLeftUint16x16 ...) => (VPSLLW256 ...)
|
(ShiftAllLeftUint16x16 ...) => (VPSLLW256 ...)
|
||||||
|
(ShiftAllLeftUint16x32 ...) => (VPSLLW512 ...)
|
||||||
(ShiftAllLeftUint32x4 ...) => (VPSLLD128 ...)
|
(ShiftAllLeftUint32x4 ...) => (VPSLLD128 ...)
|
||||||
(ShiftAllLeftUint32x8 ...) => (VPSLLD256 ...)
|
(ShiftAllLeftUint32x8 ...) => (VPSLLD256 ...)
|
||||||
|
(ShiftAllLeftUint32x16 ...) => (VPSLLD512 ...)
|
||||||
(ShiftAllLeftUint64x2 ...) => (VPSLLQ128 ...)
|
(ShiftAllLeftUint64x2 ...) => (VPSLLQ128 ...)
|
||||||
(ShiftAllLeftUint64x4 ...) => (VPSLLQ256 ...)
|
(ShiftAllLeftUint64x4 ...) => (VPSLLQ256 ...)
|
||||||
(ShiftAllLeftUint64x8 ...) => (VPSLLQ512 ...)
|
(ShiftAllLeftUint64x8 ...) => (VPSLLQ512 ...)
|
||||||
|
|
@ -1287,23 +1291,39 @@
|
||||||
(ShiftAllLeftAndFillUpperFromMaskedUint64x2 [a] x y mask) => (VPSHLDQMasked128 [a] x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftAllLeftAndFillUpperFromMaskedUint64x2 [a] x y mask) => (VPSHLDQMasked128 [a] x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftAndFillUpperFromMaskedUint64x4 [a] x y mask) => (VPSHLDQMasked256 [a] x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftAllLeftAndFillUpperFromMaskedUint64x4 [a] x y mask) => (VPSHLDQMasked256 [a] x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftAndFillUpperFromMaskedUint64x8 [a] x y mask) => (VPSHLDQMasked512 [a] x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftAllLeftAndFillUpperFromMaskedUint64x8 [a] x y mask) => (VPSHLDQMasked512 [a] x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedInt16x8 x y mask) => (VPSLLWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedInt16x16 x y mask) => (VPSLLWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedInt16x32 x y mask) => (VPSLLWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedInt32x4 x y mask) => (VPSLLDMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedInt32x8 x y mask) => (VPSLLDMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedInt32x16 x y mask) => (VPSLLDMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftMaskedInt64x2 x y mask) => (VPSLLQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftAllLeftMaskedInt64x2 x y mask) => (VPSLLQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftMaskedInt64x4 x y mask) => (VPSLLQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftAllLeftMaskedInt64x4 x y mask) => (VPSLLQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftMaskedInt64x8 x y mask) => (VPSLLQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftAllLeftMaskedInt64x8 x y mask) => (VPSLLQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedUint16x8 x y mask) => (VPSLLWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedUint16x16 x y mask) => (VPSLLWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedUint16x32 x y mask) => (VPSLLWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedUint32x4 x y mask) => (VPSLLDMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedUint32x8 x y mask) => (VPSLLDMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllLeftMaskedUint32x16 x y mask) => (VPSLLDMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftMaskedUint64x2 x y mask) => (VPSLLQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftAllLeftMaskedUint64x2 x y mask) => (VPSLLQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftMaskedUint64x4 x y mask) => (VPSLLQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftAllLeftMaskedUint64x4 x y mask) => (VPSLLQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftAllLeftMaskedUint64x8 x y mask) => (VPSLLQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftAllLeftMaskedUint64x8 x y mask) => (VPSLLQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightInt16x8 ...) => (VPSRLW128 ...)
|
(ShiftAllRightInt16x8 ...) => (VPSRAW128 ...)
|
||||||
(ShiftAllRightInt16x16 ...) => (VPSRLW256 ...)
|
(ShiftAllRightInt16x16 ...) => (VPSRAW256 ...)
|
||||||
(ShiftAllRightInt32x4 ...) => (VPSRLD128 ...)
|
(ShiftAllRightInt16x32 ...) => (VPSRAW512 ...)
|
||||||
(ShiftAllRightInt32x8 ...) => (VPSRLD256 ...)
|
(ShiftAllRightInt32x4 ...) => (VPSRAD128 ...)
|
||||||
(ShiftAllRightInt64x2 ...) => (VPSRLQ128 ...)
|
(ShiftAllRightInt32x8 ...) => (VPSRAD256 ...)
|
||||||
(ShiftAllRightInt64x4 ...) => (VPSRLQ256 ...)
|
(ShiftAllRightInt32x16 ...) => (VPSRAD512 ...)
|
||||||
(ShiftAllRightInt64x8 ...) => (VPSRLQ512 ...)
|
(ShiftAllRightInt64x2 ...) => (VPSRAQ128 ...)
|
||||||
|
(ShiftAllRightInt64x4 ...) => (VPSRAQ256 ...)
|
||||||
|
(ShiftAllRightInt64x8 ...) => (VPSRAQ512 ...)
|
||||||
(ShiftAllRightUint16x8 ...) => (VPSRLW128 ...)
|
(ShiftAllRightUint16x8 ...) => (VPSRLW128 ...)
|
||||||
(ShiftAllRightUint16x16 ...) => (VPSRLW256 ...)
|
(ShiftAllRightUint16x16 ...) => (VPSRLW256 ...)
|
||||||
|
(ShiftAllRightUint16x32 ...) => (VPSRLW512 ...)
|
||||||
(ShiftAllRightUint32x4 ...) => (VPSRLD128 ...)
|
(ShiftAllRightUint32x4 ...) => (VPSRLD128 ...)
|
||||||
(ShiftAllRightUint32x8 ...) => (VPSRLD256 ...)
|
(ShiftAllRightUint32x8 ...) => (VPSRLD256 ...)
|
||||||
|
(ShiftAllRightUint32x16 ...) => (VPSRLD512 ...)
|
||||||
(ShiftAllRightUint64x2 ...) => (VPSRLQ128 ...)
|
(ShiftAllRightUint64x2 ...) => (VPSRLQ128 ...)
|
||||||
(ShiftAllRightUint64x4 ...) => (VPSRLQ256 ...)
|
(ShiftAllRightUint64x4 ...) => (VPSRLQ256 ...)
|
||||||
(ShiftAllRightUint64x8 ...) => (VPSRLQ512 ...)
|
(ShiftAllRightUint64x8 ...) => (VPSRLQ512 ...)
|
||||||
|
|
@ -1343,22 +1363,24 @@
|
||||||
(ShiftAllRightAndFillUpperFromMaskedUint64x2 [a] x y mask) => (VPSHRDQMasked128 [a] x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftAllRightAndFillUpperFromMaskedUint64x2 [a] x y mask) => (VPSHRDQMasked128 [a] x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightAndFillUpperFromMaskedUint64x4 [a] x y mask) => (VPSHRDQMasked256 [a] x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftAllRightAndFillUpperFromMaskedUint64x4 [a] x y mask) => (VPSHRDQMasked256 [a] x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightAndFillUpperFromMaskedUint64x8 [a] x y mask) => (VPSHRDQMasked512 [a] x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftAllRightAndFillUpperFromMaskedUint64x8 [a] x y mask) => (VPSHRDQMasked512 [a] x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightMaskedInt64x2 x y mask) => (VPSRLQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftAllRightMaskedInt16x8 x y mask) => (VPSRAWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightMaskedInt64x4 x y mask) => (VPSRLQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftAllRightMaskedInt16x16 x y mask) => (VPSRAWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightMaskedInt64x8 x y mask) => (VPSRLQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftAllRightMaskedInt16x32 x y mask) => (VPSRAWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedInt32x4 x y mask) => (VPSRADMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedInt32x8 x y mask) => (VPSRADMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedInt32x16 x y mask) => (VPSRADMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedInt64x2 x y mask) => (VPSRAQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedInt64x4 x y mask) => (VPSRAQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedInt64x8 x y mask) => (VPSRAQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedUint16x8 x y mask) => (VPSRLWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedUint16x16 x y mask) => (VPSRLWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedUint16x32 x y mask) => (VPSRLWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedUint32x4 x y mask) => (VPSRLDMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedUint32x8 x y mask) => (VPSRLDMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
||||||
|
(ShiftAllRightMaskedUint32x16 x y mask) => (VPSRLDMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightMaskedUint64x2 x y mask) => (VPSRLQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftAllRightMaskedUint64x2 x y mask) => (VPSRLQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightMaskedUint64x4 x y mask) => (VPSRLQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftAllRightMaskedUint64x4 x y mask) => (VPSRLQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightMaskedUint64x8 x y mask) => (VPSRLQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftAllRightMaskedUint64x8 x y mask) => (VPSRLQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
(ShiftAllRightSignExtendedInt16x8 ...) => (VPSRAW128 ...)
|
|
||||||
(ShiftAllRightSignExtendedInt16x16 ...) => (VPSRAW256 ...)
|
|
||||||
(ShiftAllRightSignExtendedInt32x4 ...) => (VPSRAD128 ...)
|
|
||||||
(ShiftAllRightSignExtendedInt32x8 ...) => (VPSRAD256 ...)
|
|
||||||
(ShiftAllRightSignExtendedInt64x2 ...) => (VPSRAQ128 ...)
|
|
||||||
(ShiftAllRightSignExtendedInt64x4 ...) => (VPSRAQ256 ...)
|
|
||||||
(ShiftAllRightSignExtendedInt64x8 ...) => (VPSRAQ512 ...)
|
|
||||||
(ShiftAllRightSignExtendedMaskedInt64x2 x y mask) => (VPSRAQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
|
||||||
(ShiftAllRightSignExtendedMaskedInt64x4 x y mask) => (VPSRAQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
|
||||||
(ShiftAllRightSignExtendedMaskedInt64x8 x y mask) => (VPSRAQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
|
||||||
(ShiftLeftInt16x8 ...) => (VPSLLVW128 ...)
|
(ShiftLeftInt16x8 ...) => (VPSLLVW128 ...)
|
||||||
(ShiftLeftInt16x16 ...) => (VPSLLVW256 ...)
|
(ShiftLeftInt16x16 ...) => (VPSLLVW256 ...)
|
||||||
(ShiftLeftInt16x32 ...) => (VPSLLVW512 ...)
|
(ShiftLeftInt16x32 ...) => (VPSLLVW512 ...)
|
||||||
|
|
@ -1431,15 +1453,15 @@
|
||||||
(ShiftLeftMaskedUint64x2 x y mask) => (VPSLLVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftLeftMaskedUint64x2 x y mask) => (VPSLLVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftLeftMaskedUint64x4 x y mask) => (VPSLLVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftLeftMaskedUint64x4 x y mask) => (VPSLLVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftLeftMaskedUint64x8 x y mask) => (VPSLLVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftLeftMaskedUint64x8 x y mask) => (VPSLLVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
(ShiftRightInt16x8 ...) => (VPSRLVW128 ...)
|
(ShiftRightInt16x8 ...) => (VPSRAVW128 ...)
|
||||||
(ShiftRightInt16x16 ...) => (VPSRLVW256 ...)
|
(ShiftRightInt16x16 ...) => (VPSRAVW256 ...)
|
||||||
(ShiftRightInt16x32 ...) => (VPSRLVW512 ...)
|
(ShiftRightInt16x32 ...) => (VPSRAVW512 ...)
|
||||||
(ShiftRightInt32x4 ...) => (VPSRLVD128 ...)
|
(ShiftRightInt32x4 ...) => (VPSRAVD128 ...)
|
||||||
(ShiftRightInt32x8 ...) => (VPSRLVD256 ...)
|
(ShiftRightInt32x8 ...) => (VPSRAVD256 ...)
|
||||||
(ShiftRightInt32x16 ...) => (VPSRLVD512 ...)
|
(ShiftRightInt32x16 ...) => (VPSRAVD512 ...)
|
||||||
(ShiftRightInt64x2 ...) => (VPSRLVQ128 ...)
|
(ShiftRightInt64x2 ...) => (VPSRAVQ128 ...)
|
||||||
(ShiftRightInt64x4 ...) => (VPSRLVQ256 ...)
|
(ShiftRightInt64x4 ...) => (VPSRAVQ256 ...)
|
||||||
(ShiftRightInt64x8 ...) => (VPSRLVQ512 ...)
|
(ShiftRightInt64x8 ...) => (VPSRAVQ512 ...)
|
||||||
(ShiftRightUint16x8 ...) => (VPSRLVW128 ...)
|
(ShiftRightUint16x8 ...) => (VPSRLVW128 ...)
|
||||||
(ShiftRightUint16x16 ...) => (VPSRLVW256 ...)
|
(ShiftRightUint16x16 ...) => (VPSRLVW256 ...)
|
||||||
(ShiftRightUint16x32 ...) => (VPSRLVW512 ...)
|
(ShiftRightUint16x32 ...) => (VPSRLVW512 ...)
|
||||||
|
|
@ -1485,15 +1507,15 @@
|
||||||
(ShiftRightAndFillUpperFromMaskedUint64x2 x y z mask) => (VPSHRDVQMasked128 x y z (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftRightAndFillUpperFromMaskedUint64x2 x y z mask) => (VPSHRDVQMasked128 x y z (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftRightAndFillUpperFromMaskedUint64x4 x y z mask) => (VPSHRDVQMasked256 x y z (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftRightAndFillUpperFromMaskedUint64x4 x y z mask) => (VPSHRDVQMasked256 x y z (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftRightAndFillUpperFromMaskedUint64x8 x y z mask) => (VPSHRDVQMasked512 x y z (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftRightAndFillUpperFromMaskedUint64x8 x y z mask) => (VPSHRDVQMasked512 x y z (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt16x8 x y mask) => (VPSRLVWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt16x8 x y mask) => (VPSRAVWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt16x16 x y mask) => (VPSRLVWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt16x16 x y mask) => (VPSRAVWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt16x32 x y mask) => (VPSRLVWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt16x32 x y mask) => (VPSRAVWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt32x4 x y mask) => (VPSRLVDMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt32x4 x y mask) => (VPSRAVDMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt32x8 x y mask) => (VPSRLVDMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt32x8 x y mask) => (VPSRAVDMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt32x16 x y mask) => (VPSRLVDMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt32x16 x y mask) => (VPSRAVDMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt64x2 x y mask) => (VPSRLVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt64x2 x y mask) => (VPSRAVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt64x4 x y mask) => (VPSRLVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt64x4 x y mask) => (VPSRAVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedInt64x8 x y mask) => (VPSRLVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftRightMaskedInt64x8 x y mask) => (VPSRAVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedUint16x8 x y mask) => (VPSRLVWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
(ShiftRightMaskedUint16x8 x y mask) => (VPSRLVWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedUint16x16 x y mask) => (VPSRLVWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
(ShiftRightMaskedUint16x16 x y mask) => (VPSRLVWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedUint16x32 x y mask) => (VPSRLVWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
(ShiftRightMaskedUint16x32 x y mask) => (VPSRLVWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
||||||
|
|
@ -1503,42 +1525,6 @@
|
||||||
(ShiftRightMaskedUint64x2 x y mask) => (VPSRLVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
(ShiftRightMaskedUint64x2 x y mask) => (VPSRLVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedUint64x4 x y mask) => (VPSRLVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
(ShiftRightMaskedUint64x4 x y mask) => (VPSRLVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
||||||
(ShiftRightMaskedUint64x8 x y mask) => (VPSRLVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
(ShiftRightMaskedUint64x8 x y mask) => (VPSRLVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
||||||
(ShiftRightSignExtendedInt16x8 ...) => (VPSRAVW128 ...)
|
|
||||||
(ShiftRightSignExtendedInt16x16 ...) => (VPSRAVW256 ...)
|
|
||||||
(ShiftRightSignExtendedInt16x32 ...) => (VPSRAVW512 ...)
|
|
||||||
(ShiftRightSignExtendedInt32x4 ...) => (VPSRAVD128 ...)
|
|
||||||
(ShiftRightSignExtendedInt32x8 ...) => (VPSRAVD256 ...)
|
|
||||||
(ShiftRightSignExtendedInt32x16 ...) => (VPSRAVD512 ...)
|
|
||||||
(ShiftRightSignExtendedInt64x2 ...) => (VPSRAVQ128 ...)
|
|
||||||
(ShiftRightSignExtendedInt64x4 ...) => (VPSRAVQ256 ...)
|
|
||||||
(ShiftRightSignExtendedInt64x8 ...) => (VPSRAVQ512 ...)
|
|
||||||
(ShiftRightSignExtendedUint16x8 ...) => (VPSRAVW128 ...)
|
|
||||||
(ShiftRightSignExtendedUint16x16 ...) => (VPSRAVW256 ...)
|
|
||||||
(ShiftRightSignExtendedUint16x32 ...) => (VPSRAVW512 ...)
|
|
||||||
(ShiftRightSignExtendedUint32x4 ...) => (VPSRAVD128 ...)
|
|
||||||
(ShiftRightSignExtendedUint32x8 ...) => (VPSRAVD256 ...)
|
|
||||||
(ShiftRightSignExtendedUint32x16 ...) => (VPSRAVD512 ...)
|
|
||||||
(ShiftRightSignExtendedUint64x2 ...) => (VPSRAVQ128 ...)
|
|
||||||
(ShiftRightSignExtendedUint64x4 ...) => (VPSRAVQ256 ...)
|
|
||||||
(ShiftRightSignExtendedUint64x8 ...) => (VPSRAVQ512 ...)
|
|
||||||
(ShiftRightSignExtendedMaskedInt16x8 x y mask) => (VPSRAVWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt16x16 x y mask) => (VPSRAVWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt16x32 x y mask) => (VPSRAVWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt32x4 x y mask) => (VPSRAVDMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt32x8 x y mask) => (VPSRAVDMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt32x16 x y mask) => (VPSRAVDMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt64x2 x y mask) => (VPSRAVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt64x4 x y mask) => (VPSRAVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedInt64x8 x y mask) => (VPSRAVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint16x8 x y mask) => (VPSRAVWMasked128 x y (VPMOVVec16x8ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint16x16 x y mask) => (VPSRAVWMasked256 x y (VPMOVVec16x16ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint16x32 x y mask) => (VPSRAVWMasked512 x y (VPMOVVec16x32ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint32x4 x y mask) => (VPSRAVDMasked128 x y (VPMOVVec32x4ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint32x8 x y mask) => (VPSRAVDMasked256 x y (VPMOVVec32x8ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint32x16 x y mask) => (VPSRAVDMasked512 x y (VPMOVVec32x16ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint64x2 x y mask) => (VPSRAVQMasked128 x y (VPMOVVec64x2ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint64x4 x y mask) => (VPSRAVQMasked256 x y (VPMOVVec64x4ToM <types.TypeMask> mask))
|
|
||||||
(ShiftRightSignExtendedMaskedUint64x8 x y mask) => (VPSRAVQMasked512 x y (VPMOVVec64x8ToM <types.TypeMask> mask))
|
|
||||||
(SignInt8x16 ...) => (VPSIGNB128 ...)
|
(SignInt8x16 ...) => (VPSIGNB128 ...)
|
||||||
(SignInt8x32 ...) => (VPSIGNB256 ...)
|
(SignInt8x32 ...) => (VPSIGNB256 ...)
|
||||||
(SignInt16x8 ...) => (VPSIGNW128 ...)
|
(SignInt16x8 ...) => (VPSIGNW128 ...)
|
||||||
|
|
|
||||||
|
|
@ -198,17 +198,16 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPSUBSW256", argLength: 2, reg: v21, asm: "VPSUBSW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSUBSW256", argLength: 2, reg: v21, asm: "VPSUBSW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSUBSWMasked256", argLength: 3, reg: w2kw, asm: "VPSUBSW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSUBSWMasked256", argLength: 3, reg: w2kw, asm: "VPSUBSW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSLLW256", argLength: 2, reg: vfpv, asm: "VPSLLW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLW256", argLength: 2, reg: vfpv, asm: "VPSLLW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRLW256", argLength: 2, reg: vfpv, asm: "VPSRLW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLWMasked256", argLength: 3, reg: wfpkw, asm: "VPSLLW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRAW256", argLength: 2, reg: vfpv, asm: "VPSRAW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAW256", argLength: 2, reg: vfpv, asm: "VPSRAW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRAWMasked256", argLength: 3, reg: wfpkw, asm: "VPSRAW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSLLVW256", argLength: 2, reg: w21, asm: "VPSLLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLVW256", argLength: 2, reg: w21, asm: "VPSLLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSHLDVW256", argLength: 3, reg: w31, asm: "VPSHLDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHLDVW256", argLength: 3, reg: w31, asm: "VPSHLDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSHLDVWMasked256", argLength: 4, reg: w3kw, asm: "VPSHLDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHLDVWMasked256", argLength: 4, reg: w3kw, asm: "VPSHLDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSLLVWMasked256", argLength: 3, reg: w2kw, asm: "VPSLLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLVWMasked256", argLength: 3, reg: w2kw, asm: "VPSLLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRLVW256", argLength: 2, reg: w21, asm: "VPSRLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAVW256", argLength: 2, reg: w21, asm: "VPSRAVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSHRDVW256", argLength: 3, reg: w31, asm: "VPSHRDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHRDVW256", argLength: 3, reg: w31, asm: "VPSHRDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSHRDVWMasked256", argLength: 4, reg: w3kw, asm: "VPSHRDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHRDVWMasked256", argLength: 4, reg: w3kw, asm: "VPSHRDVW", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSRLVWMasked256", argLength: 3, reg: w2kw, asm: "VPSRLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRAVW256", argLength: 2, reg: w21, asm: "VPSRAVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRAVWMasked256", argLength: 3, reg: w2kw, asm: "VPSRAVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAVWMasked256", argLength: 3, reg: w2kw, asm: "VPSRAVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSIGNW256", argLength: 2, reg: v21, asm: "VPSIGNW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSIGNW256", argLength: 2, reg: v21, asm: "VPSIGNW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSUBW256", argLength: 2, reg: v21, asm: "VPSUBW", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSUBW256", argLength: 2, reg: v21, asm: "VPSUBW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
|
@ -233,15 +232,17 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPADDSWMasked512", argLength: 3, reg: w2kw, asm: "VPADDSW", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPADDSWMasked512", argLength: 3, reg: w2kw, asm: "VPADDSW", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBSW512", argLength: 2, reg: w21, asm: "VPSUBSW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBSW512", argLength: 2, reg: w21, asm: "VPSUBSW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBSWMasked512", argLength: 3, reg: w2kw, asm: "VPSUBSW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBSWMasked512", argLength: 3, reg: w2kw, asm: "VPSUBSW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSLLW512", argLength: 2, reg: wfpw, asm: "VPSLLW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSLLWMasked512", argLength: 3, reg: wfpkw, asm: "VPSLLW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRAW512", argLength: 2, reg: wfpw, asm: "VPSRAW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRAWMasked512", argLength: 3, reg: wfpkw, asm: "VPSRAW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSLLVW512", argLength: 2, reg: w21, asm: "VPSLLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLVW512", argLength: 2, reg: w21, asm: "VPSLLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSHLDVW512", argLength: 3, reg: w31, asm: "VPSHLDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHLDVW512", argLength: 3, reg: w31, asm: "VPSHLDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSHLDVWMasked512", argLength: 4, reg: w3kw, asm: "VPSHLDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHLDVWMasked512", argLength: 4, reg: w3kw, asm: "VPSHLDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSLLVWMasked512", argLength: 3, reg: w2kw, asm: "VPSLLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLVWMasked512", argLength: 3, reg: w2kw, asm: "VPSLLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSRLVW512", argLength: 2, reg: w21, asm: "VPSRLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAVW512", argLength: 2, reg: w21, asm: "VPSRAVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSHRDVW512", argLength: 3, reg: w31, asm: "VPSHRDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHRDVW512", argLength: 3, reg: w31, asm: "VPSHRDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSHRDVWMasked512", argLength: 4, reg: w3kw, asm: "VPSHRDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHRDVWMasked512", argLength: 4, reg: w3kw, asm: "VPSHRDVW", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSRLVWMasked512", argLength: 3, reg: w2kw, asm: "VPSRLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRAVW512", argLength: 2, reg: w21, asm: "VPSRAVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRAVWMasked512", argLength: 3, reg: w2kw, asm: "VPSRAVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAVWMasked512", argLength: 3, reg: w2kw, asm: "VPSRAVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBW512", argLength: 2, reg: w21, asm: "VPSUBW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBW512", argLength: 2, reg: w21, asm: "VPSUBW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBWMasked512", argLength: 3, reg: w2kw, asm: "VPSUBW", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBWMasked512", argLength: 3, reg: w2kw, asm: "VPSUBW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
|
@ -272,17 +273,16 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPSUBSW128", argLength: 2, reg: v21, asm: "VPSUBSW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSUBSW128", argLength: 2, reg: v21, asm: "VPSUBSW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSUBSWMasked128", argLength: 3, reg: w2kw, asm: "VPSUBSW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSUBSWMasked128", argLength: 3, reg: w2kw, asm: "VPSUBSW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSLLW128", argLength: 2, reg: vfpv, asm: "VPSLLW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLW128", argLength: 2, reg: vfpv, asm: "VPSLLW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRLW128", argLength: 2, reg: vfpv, asm: "VPSRLW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLWMasked128", argLength: 3, reg: wfpkw, asm: "VPSLLW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRAW128", argLength: 2, reg: vfpv, asm: "VPSRAW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAW128", argLength: 2, reg: vfpv, asm: "VPSRAW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRAWMasked128", argLength: 3, reg: wfpkw, asm: "VPSRAW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSLLVW128", argLength: 2, reg: w21, asm: "VPSLLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLVW128", argLength: 2, reg: w21, asm: "VPSLLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSHLDVW128", argLength: 3, reg: w31, asm: "VPSHLDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHLDVW128", argLength: 3, reg: w31, asm: "VPSHLDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSHLDVWMasked128", argLength: 4, reg: w3kw, asm: "VPSHLDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHLDVWMasked128", argLength: 4, reg: w3kw, asm: "VPSHLDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSLLVWMasked128", argLength: 3, reg: w2kw, asm: "VPSLLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLVWMasked128", argLength: 3, reg: w2kw, asm: "VPSLLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRLVW128", argLength: 2, reg: w21, asm: "VPSRLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAVW128", argLength: 2, reg: w21, asm: "VPSRAVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSHRDVW128", argLength: 3, reg: w31, asm: "VPSHRDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHRDVW128", argLength: 3, reg: w31, asm: "VPSHRDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSHRDVWMasked128", argLength: 4, reg: w3kw, asm: "VPSHRDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHRDVWMasked128", argLength: 4, reg: w3kw, asm: "VPSHRDVW", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSRLVWMasked128", argLength: 3, reg: w2kw, asm: "VPSRLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRAVW128", argLength: 2, reg: w21, asm: "VPSRAVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRAVWMasked128", argLength: 3, reg: w2kw, asm: "VPSRAVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAVWMasked128", argLength: 3, reg: w2kw, asm: "VPSRAVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSIGNW128", argLength: 2, reg: v21, asm: "VPSIGNW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSIGNW128", argLength: 2, reg: v21, asm: "VPSIGNW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSUBW128", argLength: 2, reg: v21, asm: "VPSUBW", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSUBW128", argLength: 2, reg: v21, asm: "VPSUBW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
|
@ -315,15 +315,17 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPDPWSSDSMasked512", argLength: 4, reg: w3kw, asm: "VPDPWSSDS", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPDPWSSDSMasked512", argLength: 4, reg: w3kw, asm: "VPDPWSSDS", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPDPBUSDS512", argLength: 3, reg: w31, asm: "VPDPBUSDS", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPDPBUSDS512", argLength: 3, reg: w31, asm: "VPDPBUSDS", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPDPBUSDSMasked512", argLength: 4, reg: w3kw, asm: "VPDPBUSDS", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPDPBUSDSMasked512", argLength: 4, reg: w3kw, asm: "VPDPBUSDS", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
|
{name: "VPSLLD512", argLength: 2, reg: wfpw, asm: "VPSLLD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSLLDMasked512", argLength: 3, reg: wfpkw, asm: "VPSLLD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRAD512", argLength: 2, reg: wfpw, asm: "VPSRAD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRADMasked512", argLength: 3, reg: wfpkw, asm: "VPSRAD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSLLVD512", argLength: 2, reg: w21, asm: "VPSLLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLVD512", argLength: 2, reg: w21, asm: "VPSLLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSHLDVD512", argLength: 3, reg: w31, asm: "VPSHLDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHLDVD512", argLength: 3, reg: w31, asm: "VPSHLDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSHLDVDMasked512", argLength: 4, reg: w3kw, asm: "VPSHLDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHLDVDMasked512", argLength: 4, reg: w3kw, asm: "VPSHLDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSLLVDMasked512", argLength: 3, reg: w2kw, asm: "VPSLLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLVDMasked512", argLength: 3, reg: w2kw, asm: "VPSLLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSRLVD512", argLength: 2, reg: w21, asm: "VPSRLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAVD512", argLength: 2, reg: w21, asm: "VPSRAVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSHRDVD512", argLength: 3, reg: w31, asm: "VPSHRDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHRDVD512", argLength: 3, reg: w31, asm: "VPSHRDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSHRDVDMasked512", argLength: 4, reg: w3kw, asm: "VPSHRDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHRDVDMasked512", argLength: 4, reg: w3kw, asm: "VPSHRDVD", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSRLVDMasked512", argLength: 3, reg: w2kw, asm: "VPSRLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRAVD512", argLength: 2, reg: w21, asm: "VPSRAVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRAVDMasked512", argLength: 3, reg: w2kw, asm: "VPSRAVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAVDMasked512", argLength: 3, reg: w2kw, asm: "VPSRAVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBD512", argLength: 2, reg: w21, asm: "VPSUBD", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBD512", argLength: 2, reg: w21, asm: "VPSUBD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBDMasked512", argLength: 3, reg: w2kw, asm: "VPSUBD", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBDMasked512", argLength: 3, reg: w2kw, asm: "VPSUBD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
|
@ -362,17 +364,16 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPDPBUSDS128", argLength: 3, reg: v31, asm: "VPDPBUSDS", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPDPBUSDS128", argLength: 3, reg: v31, asm: "VPDPBUSDS", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPDPBUSDSMasked128", argLength: 4, reg: w3kw, asm: "VPDPBUSDS", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPDPBUSDSMasked128", argLength: 4, reg: w3kw, asm: "VPDPBUSDS", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSLLD128", argLength: 2, reg: vfpv, asm: "VPSLLD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLD128", argLength: 2, reg: vfpv, asm: "VPSLLD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRLD128", argLength: 2, reg: vfpv, asm: "VPSRLD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLDMasked128", argLength: 3, reg: wfpkw, asm: "VPSLLD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRAD128", argLength: 2, reg: vfpv, asm: "VPSRAD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAD128", argLength: 2, reg: vfpv, asm: "VPSRAD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRADMasked128", argLength: 3, reg: wfpkw, asm: "VPSRAD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSLLVD128", argLength: 2, reg: v21, asm: "VPSLLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLVD128", argLength: 2, reg: v21, asm: "VPSLLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSHLDVD128", argLength: 3, reg: w31, asm: "VPSHLDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHLDVD128", argLength: 3, reg: w31, asm: "VPSHLDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSHLDVDMasked128", argLength: 4, reg: w3kw, asm: "VPSHLDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHLDVDMasked128", argLength: 4, reg: w3kw, asm: "VPSHLDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSLLVDMasked128", argLength: 3, reg: w2kw, asm: "VPSLLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLVDMasked128", argLength: 3, reg: w2kw, asm: "VPSLLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRLVD128", argLength: 2, reg: v21, asm: "VPSRLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAVD128", argLength: 2, reg: v21, asm: "VPSRAVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSHRDVD128", argLength: 3, reg: w31, asm: "VPSHRDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHRDVD128", argLength: 3, reg: w31, asm: "VPSHRDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSHRDVDMasked128", argLength: 4, reg: w3kw, asm: "VPSHRDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHRDVDMasked128", argLength: 4, reg: w3kw, asm: "VPSHRDVD", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSRLVDMasked128", argLength: 3, reg: w2kw, asm: "VPSRLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRAVD128", argLength: 2, reg: v21, asm: "VPSRAVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRAVDMasked128", argLength: 3, reg: w2kw, asm: "VPSRAVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAVDMasked128", argLength: 3, reg: w2kw, asm: "VPSRAVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSIGND128", argLength: 2, reg: v21, asm: "VPSIGND", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSIGND128", argLength: 2, reg: v21, asm: "VPSIGND", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSUBD128", argLength: 2, reg: v21, asm: "VPSUBD", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSUBD128", argLength: 2, reg: v21, asm: "VPSUBD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
|
@ -411,17 +412,16 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPDPBUSDS256", argLength: 3, reg: v31, asm: "VPDPBUSDS", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPDPBUSDS256", argLength: 3, reg: v31, asm: "VPDPBUSDS", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPDPBUSDSMasked256", argLength: 4, reg: w3kw, asm: "VPDPBUSDS", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPDPBUSDSMasked256", argLength: 4, reg: w3kw, asm: "VPDPBUSDS", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSLLD256", argLength: 2, reg: vfpv, asm: "VPSLLD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLD256", argLength: 2, reg: vfpv, asm: "VPSLLD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRLD256", argLength: 2, reg: vfpv, asm: "VPSRLD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLDMasked256", argLength: 3, reg: wfpkw, asm: "VPSLLD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRAD256", argLength: 2, reg: vfpv, asm: "VPSRAD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAD256", argLength: 2, reg: vfpv, asm: "VPSRAD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRADMasked256", argLength: 3, reg: wfpkw, asm: "VPSRAD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSLLVD256", argLength: 2, reg: v21, asm: "VPSLLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLVD256", argLength: 2, reg: v21, asm: "VPSLLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSHLDVD256", argLength: 3, reg: w31, asm: "VPSHLDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHLDVD256", argLength: 3, reg: w31, asm: "VPSHLDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSHLDVDMasked256", argLength: 4, reg: w3kw, asm: "VPSHLDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHLDVDMasked256", argLength: 4, reg: w3kw, asm: "VPSHLDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSLLVDMasked256", argLength: 3, reg: w2kw, asm: "VPSLLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLVDMasked256", argLength: 3, reg: w2kw, asm: "VPSLLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRLVD256", argLength: 2, reg: v21, asm: "VPSRLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAVD256", argLength: 2, reg: v21, asm: "VPSRAVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSHRDVD256", argLength: 3, reg: w31, asm: "VPSHRDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHRDVD256", argLength: 3, reg: w31, asm: "VPSHRDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSHRDVDMasked256", argLength: 4, reg: w3kw, asm: "VPSHRDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHRDVDMasked256", argLength: 4, reg: w3kw, asm: "VPSHRDVD", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSRLVDMasked256", argLength: 3, reg: w2kw, asm: "VPSRLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRAVD256", argLength: 2, reg: v21, asm: "VPSRAVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRAVDMasked256", argLength: 3, reg: w2kw, asm: "VPSRAVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAVDMasked256", argLength: 3, reg: w2kw, asm: "VPSRAVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSIGND256", argLength: 2, reg: v21, asm: "VPSIGND", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSIGND256", argLength: 2, reg: v21, asm: "VPSIGND", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSUBD256", argLength: 2, reg: v21, asm: "VPSUBD", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSUBD256", argLength: 2, reg: v21, asm: "VPSUBD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
|
@ -453,19 +453,15 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPRORVQMasked128", argLength: 3, reg: w2kw, asm: "VPRORVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPRORVQMasked128", argLength: 3, reg: w2kw, asm: "VPRORVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSLLQ128", argLength: 2, reg: vfpv, asm: "VPSLLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLQ128", argLength: 2, reg: vfpv, asm: "VPSLLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSLLQMasked128", argLength: 3, reg: wfpkw, asm: "VPSLLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLQMasked128", argLength: 3, reg: wfpkw, asm: "VPSLLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRLQ128", argLength: 2, reg: vfpv, asm: "VPSRLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRLQMasked128", argLength: 3, reg: wfpkw, asm: "VPSRLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRAQ128", argLength: 2, reg: wfpw, asm: "VPSRAQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAQ128", argLength: 2, reg: wfpw, asm: "VPSRAQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRAQMasked128", argLength: 3, reg: wfpkw, asm: "VPSRAQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAQMasked128", argLength: 3, reg: wfpkw, asm: "VPSRAQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSLLVQ128", argLength: 2, reg: v21, asm: "VPSLLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLVQ128", argLength: 2, reg: v21, asm: "VPSLLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSHLDVQ128", argLength: 3, reg: w31, asm: "VPSHLDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHLDVQ128", argLength: 3, reg: w31, asm: "VPSHLDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSHLDVQMasked128", argLength: 4, reg: w3kw, asm: "VPSHLDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHLDVQMasked128", argLength: 4, reg: w3kw, asm: "VPSHLDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSLLVQMasked128", argLength: 3, reg: w2kw, asm: "VPSLLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSLLVQMasked128", argLength: 3, reg: w2kw, asm: "VPSLLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSRLVQ128", argLength: 2, reg: v21, asm: "VPSRLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAVQ128", argLength: 2, reg: w21, asm: "VPSRAVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSHRDVQ128", argLength: 3, reg: w31, asm: "VPSHRDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHRDVQ128", argLength: 3, reg: w31, asm: "VPSHRDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSHRDVQMasked128", argLength: 4, reg: w3kw, asm: "VPSHRDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
{name: "VPSHRDVQMasked128", argLength: 4, reg: w3kw, asm: "VPSHRDVQ", commutative: false, typ: "Vec128", resultInArg0: true},
|
||||||
{name: "VPSRLVQMasked128", argLength: 3, reg: w2kw, asm: "VPSRLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRAVQ128", argLength: 2, reg: w21, asm: "VPSRAVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
|
||||||
{name: "VPSRAVQMasked128", argLength: 3, reg: w2kw, asm: "VPSRAVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSRAVQMasked128", argLength: 3, reg: w2kw, asm: "VPSRAVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSUBQ128", argLength: 2, reg: v21, asm: "VPSUBQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSUBQ128", argLength: 2, reg: v21, asm: "VPSUBQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPSUBQMasked128", argLength: 3, reg: w2kw, asm: "VPSUBQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VPSUBQMasked128", argLength: 3, reg: w2kw, asm: "VPSUBQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
|
@ -494,19 +490,15 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPRORVQMasked256", argLength: 3, reg: w2kw, asm: "VPRORVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPRORVQMasked256", argLength: 3, reg: w2kw, asm: "VPRORVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSLLQ256", argLength: 2, reg: vfpv, asm: "VPSLLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLQ256", argLength: 2, reg: vfpv, asm: "VPSLLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSLLQMasked256", argLength: 3, reg: wfpkw, asm: "VPSLLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLQMasked256", argLength: 3, reg: wfpkw, asm: "VPSLLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRLQ256", argLength: 2, reg: vfpv, asm: "VPSRLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRLQMasked256", argLength: 3, reg: wfpkw, asm: "VPSRLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRAQ256", argLength: 2, reg: wfpw, asm: "VPSRAQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAQ256", argLength: 2, reg: wfpw, asm: "VPSRAQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRAQMasked256", argLength: 3, reg: wfpkw, asm: "VPSRAQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAQMasked256", argLength: 3, reg: wfpkw, asm: "VPSRAQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSLLVQ256", argLength: 2, reg: v21, asm: "VPSLLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLVQ256", argLength: 2, reg: v21, asm: "VPSLLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSHLDVQ256", argLength: 3, reg: w31, asm: "VPSHLDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHLDVQ256", argLength: 3, reg: w31, asm: "VPSHLDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSHLDVQMasked256", argLength: 4, reg: w3kw, asm: "VPSHLDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHLDVQMasked256", argLength: 4, reg: w3kw, asm: "VPSHLDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSLLVQMasked256", argLength: 3, reg: w2kw, asm: "VPSLLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSLLVQMasked256", argLength: 3, reg: w2kw, asm: "VPSLLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSRLVQ256", argLength: 2, reg: v21, asm: "VPSRLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAVQ256", argLength: 2, reg: w21, asm: "VPSRAVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSHRDVQ256", argLength: 3, reg: w31, asm: "VPSHRDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHRDVQ256", argLength: 3, reg: w31, asm: "VPSHRDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSHRDVQMasked256", argLength: 4, reg: w3kw, asm: "VPSHRDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
{name: "VPSHRDVQMasked256", argLength: 4, reg: w3kw, asm: "VPSHRDVQ", commutative: false, typ: "Vec256", resultInArg0: true},
|
||||||
{name: "VPSRLVQMasked256", argLength: 3, reg: w2kw, asm: "VPSRLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRAVQ256", argLength: 2, reg: w21, asm: "VPSRAVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
|
||||||
{name: "VPSRAVQMasked256", argLength: 3, reg: w2kw, asm: "VPSRAVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSRAVQMasked256", argLength: 3, reg: w2kw, asm: "VPSRAVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSUBQ256", argLength: 2, reg: v21, asm: "VPSUBQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSUBQ256", argLength: 2, reg: v21, asm: "VPSUBQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPSUBQMasked256", argLength: 3, reg: w2kw, asm: "VPSUBQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
{name: "VPSUBQMasked256", argLength: 3, reg: w2kw, asm: "VPSUBQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
|
@ -537,19 +529,15 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPRORVQMasked512", argLength: 3, reg: w2kw, asm: "VPRORVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPRORVQMasked512", argLength: 3, reg: w2kw, asm: "VPRORVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSLLQ512", argLength: 2, reg: wfpw, asm: "VPSLLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLQ512", argLength: 2, reg: wfpw, asm: "VPSLLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSLLQMasked512", argLength: 3, reg: wfpkw, asm: "VPSLLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLQMasked512", argLength: 3, reg: wfpkw, asm: "VPSLLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSRLQ512", argLength: 2, reg: wfpw, asm: "VPSRLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRLQMasked512", argLength: 3, reg: wfpkw, asm: "VPSRLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRAQ512", argLength: 2, reg: wfpw, asm: "VPSRAQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAQ512", argLength: 2, reg: wfpw, asm: "VPSRAQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSRAQMasked512", argLength: 3, reg: wfpkw, asm: "VPSRAQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAQMasked512", argLength: 3, reg: wfpkw, asm: "VPSRAQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSLLVQ512", argLength: 2, reg: w21, asm: "VPSLLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLVQ512", argLength: 2, reg: w21, asm: "VPSLLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSHLDVQ512", argLength: 3, reg: w31, asm: "VPSHLDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHLDVQ512", argLength: 3, reg: w31, asm: "VPSHLDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSHLDVQMasked512", argLength: 4, reg: w3kw, asm: "VPSHLDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHLDVQMasked512", argLength: 4, reg: w3kw, asm: "VPSHLDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSLLVQMasked512", argLength: 3, reg: w2kw, asm: "VPSLLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSLLVQMasked512", argLength: 3, reg: w2kw, asm: "VPSLLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSRLVQ512", argLength: 2, reg: w21, asm: "VPSRLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAVQ512", argLength: 2, reg: w21, asm: "VPSRAVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSHRDVQ512", argLength: 3, reg: w31, asm: "VPSHRDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHRDVQ512", argLength: 3, reg: w31, asm: "VPSHRDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSHRDVQMasked512", argLength: 4, reg: w3kw, asm: "VPSHRDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
{name: "VPSHRDVQMasked512", argLength: 4, reg: w3kw, asm: "VPSHRDVQ", commutative: false, typ: "Vec512", resultInArg0: true},
|
||||||
{name: "VPSRLVQMasked512", argLength: 3, reg: w2kw, asm: "VPSRLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRAVQ512", argLength: 2, reg: w21, asm: "VPSRAVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
|
||||||
{name: "VPSRAVQMasked512", argLength: 3, reg: w2kw, asm: "VPSRAVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSRAVQMasked512", argLength: 3, reg: w2kw, asm: "VPSRAVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBQ512", argLength: 2, reg: w21, asm: "VPSUBQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBQ512", argLength: 2, reg: w21, asm: "VPSUBQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPSUBQMasked512", argLength: 3, reg: w2kw, asm: "VPSUBQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
{name: "VPSUBQMasked512", argLength: 3, reg: w2kw, asm: "VPSUBQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
|
@ -625,6 +613,10 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPMINUWMasked256", argLength: 3, reg: w2kw, asm: "VPMINUW", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMINUWMasked256", argLength: 3, reg: w2kw, asm: "VPMINUW", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMULHUW256", argLength: 2, reg: v21, asm: "VPMULHUW", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMULHUW256", argLength: 2, reg: v21, asm: "VPMULHUW", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMULHUWMasked256", argLength: 3, reg: w2kw, asm: "VPMULHUW", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMULHUWMasked256", argLength: 3, reg: w2kw, asm: "VPMULHUW", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLW256", argLength: 2, reg: vfpv, asm: "VPSRLW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLWMasked256", argLength: 3, reg: wfpkw, asm: "VPSRLW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLVW256", argLength: 2, reg: w21, asm: "VPSRLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLVWMasked256", argLength: 3, reg: w2kw, asm: "VPSRLVW", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPAVGW512", argLength: 2, reg: w21, asm: "VPAVGW", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPAVGW512", argLength: 2, reg: w21, asm: "VPAVGW", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPAVGWMasked512", argLength: 3, reg: w2kw, asm: "VPAVGW", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPAVGWMasked512", argLength: 3, reg: w2kw, asm: "VPAVGW", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMAXUW512", argLength: 2, reg: w21, asm: "VPMAXUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMAXUW512", argLength: 2, reg: w21, asm: "VPMAXUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
|
|
@ -633,6 +625,10 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPMINUWMasked512", argLength: 3, reg: w2kw, asm: "VPMINUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMINUWMasked512", argLength: 3, reg: w2kw, asm: "VPMINUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMULHUW512", argLength: 2, reg: w21, asm: "VPMULHUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMULHUW512", argLength: 2, reg: w21, asm: "VPMULHUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMULHUWMasked512", argLength: 3, reg: w2kw, asm: "VPMULHUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMULHUWMasked512", argLength: 3, reg: w2kw, asm: "VPMULHUW", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLW512", argLength: 2, reg: wfpw, asm: "VPSRLW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLWMasked512", argLength: 3, reg: wfpkw, asm: "VPSRLW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLVW512", argLength: 2, reg: w21, asm: "VPSRLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLVWMasked512", argLength: 3, reg: w2kw, asm: "VPSRLVW", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPAVGW128", argLength: 2, reg: v21, asm: "VPAVGW", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPAVGW128", argLength: 2, reg: v21, asm: "VPAVGW", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPAVGWMasked128", argLength: 3, reg: w2kw, asm: "VPAVGW", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPAVGWMasked128", argLength: 3, reg: w2kw, asm: "VPAVGW", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMAXUW128", argLength: 2, reg: v21, asm: "VPMAXUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMAXUW128", argLength: 2, reg: v21, asm: "VPMAXUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
|
|
@ -641,36 +637,64 @@ func simdAMD64Ops(v11, v21, v2k, vkv, v2kv, v2kk, v31, v3kv, vgpv, vgp, vfpv, vf
|
||||||
{name: "VPMINUWMasked128", argLength: 3, reg: w2kw, asm: "VPMINUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMINUWMasked128", argLength: 3, reg: w2kw, asm: "VPMINUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMULHUW128", argLength: 2, reg: v21, asm: "VPMULHUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMULHUW128", argLength: 2, reg: v21, asm: "VPMULHUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMULHUWMasked128", argLength: 3, reg: w2kw, asm: "VPMULHUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMULHUWMasked128", argLength: 3, reg: w2kw, asm: "VPMULHUW", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLW128", argLength: 2, reg: vfpv, asm: "VPSRLW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLWMasked128", argLength: 3, reg: wfpkw, asm: "VPSRLW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLVW128", argLength: 2, reg: w21, asm: "VPSRLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLVWMasked128", argLength: 3, reg: w2kw, asm: "VPSRLVW", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMAXUD512", argLength: 2, reg: w21, asm: "VPMAXUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMAXUD512", argLength: 2, reg: w21, asm: "VPMAXUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMAXUDMasked512", argLength: 3, reg: w2kw, asm: "VPMAXUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMAXUDMasked512", argLength: 3, reg: w2kw, asm: "VPMAXUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMINUD512", argLength: 2, reg: w21, asm: "VPMINUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMINUD512", argLength: 2, reg: w21, asm: "VPMINUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMINUDMasked512", argLength: 3, reg: w2kw, asm: "VPMINUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMINUDMasked512", argLength: 3, reg: w2kw, asm: "VPMINUD", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLD512", argLength: 2, reg: wfpw, asm: "VPSRLD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLDMasked512", argLength: 3, reg: wfpkw, asm: "VPSRLD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLVD512", argLength: 2, reg: w21, asm: "VPSRLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLVDMasked512", argLength: 3, reg: w2kw, asm: "VPSRLVD", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMAXUD128", argLength: 2, reg: v21, asm: "VPMAXUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMAXUD128", argLength: 2, reg: v21, asm: "VPMAXUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMAXUDMasked128", argLength: 3, reg: w2kw, asm: "VPMAXUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMAXUDMasked128", argLength: 3, reg: w2kw, asm: "VPMAXUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMINUD128", argLength: 2, reg: v21, asm: "VPMINUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMINUD128", argLength: 2, reg: v21, asm: "VPMINUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMINUDMasked128", argLength: 3, reg: w2kw, asm: "VPMINUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMINUDMasked128", argLength: 3, reg: w2kw, asm: "VPMINUD", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMULUDQ128", argLength: 2, reg: v21, asm: "VPMULUDQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMULUDQ128", argLength: 2, reg: v21, asm: "VPMULUDQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLD128", argLength: 2, reg: vfpv, asm: "VPSRLD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLDMasked128", argLength: 3, reg: wfpkw, asm: "VPSRLD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLVD128", argLength: 2, reg: v21, asm: "VPSRLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLVDMasked128", argLength: 3, reg: w2kw, asm: "VPSRLVD", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMAXUD256", argLength: 2, reg: v21, asm: "VPMAXUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMAXUD256", argLength: 2, reg: v21, asm: "VPMAXUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMAXUDMasked256", argLength: 3, reg: w2kw, asm: "VPMAXUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMAXUDMasked256", argLength: 3, reg: w2kw, asm: "VPMAXUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMINUD256", argLength: 2, reg: v21, asm: "VPMINUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMINUD256", argLength: 2, reg: v21, asm: "VPMINUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMINUDMasked256", argLength: 3, reg: w2kw, asm: "VPMINUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMINUDMasked256", argLength: 3, reg: w2kw, asm: "VPMINUD", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMULUDQ256", argLength: 2, reg: v21, asm: "VPMULUDQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMULUDQ256", argLength: 2, reg: v21, asm: "VPMULUDQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLD256", argLength: 2, reg: vfpv, asm: "VPSRLD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLDMasked256", argLength: 3, reg: wfpkw, asm: "VPSRLD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLVD256", argLength: 2, reg: v21, asm: "VPSRLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLVDMasked256", argLength: 3, reg: w2kw, asm: "VPSRLVD", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMAXUQ128", argLength: 2, reg: w21, asm: "VPMAXUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMAXUQ128", argLength: 2, reg: w21, asm: "VPMAXUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMAXUQMasked128", argLength: 3, reg: w2kw, asm: "VPMAXUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMAXUQMasked128", argLength: 3, reg: w2kw, asm: "VPMAXUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMINUQ128", argLength: 2, reg: w21, asm: "VPMINUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMINUQ128", argLength: 2, reg: w21, asm: "VPMINUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMINUQMasked128", argLength: 3, reg: w2kw, asm: "VPMINUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMINUQMasked128", argLength: 3, reg: w2kw, asm: "VPMINUQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMULUDQMasked128", argLength: 3, reg: w2kw, asm: "VPMULUDQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPMULUDQMasked128", argLength: 3, reg: w2kw, asm: "VPMULUDQ", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLQ128", argLength: 2, reg: vfpv, asm: "VPSRLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLQMasked128", argLength: 3, reg: wfpkw, asm: "VPSRLQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLVQ128", argLength: 2, reg: v21, asm: "VPSRLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
{name: "VPSRLVQMasked128", argLength: 3, reg: w2kw, asm: "VPSRLVQ", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPMAXUQ256", argLength: 2, reg: w21, asm: "VPMAXUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMAXUQ256", argLength: 2, reg: w21, asm: "VPMAXUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMAXUQMasked256", argLength: 3, reg: w2kw, asm: "VPMAXUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMAXUQMasked256", argLength: 3, reg: w2kw, asm: "VPMAXUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMINUQ256", argLength: 2, reg: w21, asm: "VPMINUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMINUQ256", argLength: 2, reg: w21, asm: "VPMINUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMINUQMasked256", argLength: 3, reg: w2kw, asm: "VPMINUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMINUQMasked256", argLength: 3, reg: w2kw, asm: "VPMINUQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMULUDQMasked256", argLength: 3, reg: w2kw, asm: "VPMULUDQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
{name: "VPMULUDQMasked256", argLength: 3, reg: w2kw, asm: "VPMULUDQ", commutative: true, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLQ256", argLength: 2, reg: vfpv, asm: "VPSRLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLQMasked256", argLength: 3, reg: wfpkw, asm: "VPSRLQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLVQ256", argLength: 2, reg: v21, asm: "VPSRLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
|
{name: "VPSRLVQMasked256", argLength: 3, reg: w2kw, asm: "VPSRLVQ", commutative: false, typ: "Vec256", resultInArg0: false},
|
||||||
{name: "VPMAXUQ512", argLength: 2, reg: w21, asm: "VPMAXUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMAXUQ512", argLength: 2, reg: w21, asm: "VPMAXUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMAXUQMasked512", argLength: 3, reg: w2kw, asm: "VPMAXUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMAXUQMasked512", argLength: 3, reg: w2kw, asm: "VPMAXUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMINUQ512", argLength: 2, reg: w21, asm: "VPMINUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMINUQ512", argLength: 2, reg: w21, asm: "VPMINUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMINUQMasked512", argLength: 3, reg: w2kw, asm: "VPMINUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMINUQMasked512", argLength: 3, reg: w2kw, asm: "VPMINUQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMULUDQ512", argLength: 2, reg: w21, asm: "VPMULUDQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMULUDQ512", argLength: 2, reg: w21, asm: "VPMULUDQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPMULUDQMasked512", argLength: 3, reg: w2kw, asm: "VPMULUDQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
{name: "VPMULUDQMasked512", argLength: 3, reg: w2kw, asm: "VPMULUDQ", commutative: true, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLQ512", argLength: 2, reg: wfpw, asm: "VPSRLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLQMasked512", argLength: 3, reg: wfpkw, asm: "VPSRLQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLVQ512", argLength: 2, reg: w21, asm: "VPSRLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
|
{name: "VPSRLVQMasked512", argLength: 3, reg: w2kw, asm: "VPSRLVQ", commutative: false, typ: "Vec512", resultInArg0: false},
|
||||||
{name: "VPAVGB128", argLength: 2, reg: v21, asm: "VPAVGB", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPAVGB128", argLength: 2, reg: v21, asm: "VPAVGB", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VPAVGBMasked128", argLength: 3, reg: w2kw, asm: "VPAVGB", commutative: true, typ: "Vec128", resultInArg0: false},
|
{name: "VPAVGBMasked128", argLength: 3, reg: w2kw, asm: "VPAVGB", commutative: true, typ: "Vec128", resultInArg0: false},
|
||||||
{name: "VGF2P8MULB128", argLength: 2, reg: w21, asm: "VGF2P8MULB", commutative: false, typ: "Vec128", resultInArg0: false},
|
{name: "VGF2P8MULB128", argLength: 2, reg: w21, asm: "VGF2P8MULB", commutative: false, typ: "Vec128", resultInArg0: false},
|
||||||
|
|
|
||||||
|
|
@ -312,8 +312,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedSubInt16x16", argLength: 2, commutative: false},
|
{name: "SaturatedSubInt16x16", argLength: 2, commutative: false},
|
||||||
{name: "SaturatedSubMaskedInt16x16", argLength: 3, commutative: false},
|
{name: "SaturatedSubMaskedInt16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllLeftInt16x16", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftInt16x16", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedInt16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightInt16x16", argLength: 2, commutative: false},
|
{name: "ShiftAllRightInt16x16", argLength: 2, commutative: false},
|
||||||
{name: "ShiftAllRightSignExtendedInt16x16", argLength: 2, commutative: false},
|
{name: "ShiftAllRightMaskedInt16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftInt16x16", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt16x16", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt16x16", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt16x16", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt16x16", argLength: 4, commutative: false},
|
||||||
|
|
@ -322,8 +323,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt16x16", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt16x16", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt16x16", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt16x16", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt16x16", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt16x16", argLength: 3, commutative: false},
|
|
||||||
{name: "SignInt16x16", argLength: 2, commutative: false},
|
{name: "SignInt16x16", argLength: 2, commutative: false},
|
||||||
{name: "SubInt16x16", argLength: 2, commutative: false},
|
{name: "SubInt16x16", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt16x16", argLength: 3, commutative: false},
|
{name: "SubMaskedInt16x16", argLength: 3, commutative: false},
|
||||||
|
|
@ -360,6 +359,10 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedAddMaskedInt16x32", argLength: 3, commutative: true},
|
{name: "SaturatedAddMaskedInt16x32", argLength: 3, commutative: true},
|
||||||
{name: "SaturatedSubInt16x32", argLength: 2, commutative: false},
|
{name: "SaturatedSubInt16x32", argLength: 2, commutative: false},
|
||||||
{name: "SaturatedSubMaskedInt16x32", argLength: 3, commutative: false},
|
{name: "SaturatedSubMaskedInt16x32", argLength: 3, commutative: false},
|
||||||
|
{name: "ShiftAllLeftInt16x32", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedInt16x32", argLength: 3, commutative: false},
|
||||||
|
{name: "ShiftAllRightInt16x32", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedInt16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftInt16x32", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt16x32", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt16x32", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt16x32", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt16x32", argLength: 4, commutative: false},
|
||||||
|
|
@ -368,8 +371,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt16x32", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt16x32", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt16x32", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt16x32", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt16x32", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt16x32", argLength: 3, commutative: false},
|
|
||||||
{name: "SubInt16x32", argLength: 2, commutative: false},
|
{name: "SubInt16x32", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt16x32", argLength: 3, commutative: false},
|
{name: "SubMaskedInt16x32", argLength: 3, commutative: false},
|
||||||
{name: "AbsoluteInt16x8", argLength: 1, commutative: false},
|
{name: "AbsoluteInt16x8", argLength: 1, commutative: false},
|
||||||
|
|
@ -412,8 +413,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedSubInt16x8", argLength: 2, commutative: false},
|
{name: "SaturatedSubInt16x8", argLength: 2, commutative: false},
|
||||||
{name: "SaturatedSubMaskedInt16x8", argLength: 3, commutative: false},
|
{name: "SaturatedSubMaskedInt16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllLeftInt16x8", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftInt16x8", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedInt16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightInt16x8", argLength: 2, commutative: false},
|
{name: "ShiftAllRightInt16x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftAllRightSignExtendedInt16x8", argLength: 2, commutative: false},
|
{name: "ShiftAllRightMaskedInt16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftInt16x8", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt16x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt16x8", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt16x8", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt16x8", argLength: 4, commutative: false},
|
||||||
|
|
@ -422,8 +424,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt16x8", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt16x8", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt16x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt16x8", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt16x8", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt16x8", argLength: 3, commutative: false},
|
|
||||||
{name: "SignInt16x8", argLength: 2, commutative: false},
|
{name: "SignInt16x8", argLength: 2, commutative: false},
|
||||||
{name: "SubInt16x8", argLength: 2, commutative: false},
|
{name: "SubInt16x8", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt16x8", argLength: 3, commutative: false},
|
{name: "SubMaskedInt16x8", argLength: 3, commutative: false},
|
||||||
|
|
@ -468,6 +468,10 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedPairDotProdAccumulateMaskedInt32x16", argLength: 4, commutative: false},
|
{name: "SaturatedPairDotProdAccumulateMaskedInt32x16", argLength: 4, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateInt32x16", argLength: 3, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateInt32x16", argLength: 3, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedInt32x16", argLength: 4, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedInt32x16", argLength: 4, commutative: false},
|
||||||
|
{name: "ShiftAllLeftInt32x16", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedInt32x16", argLength: 3, commutative: false},
|
||||||
|
{name: "ShiftAllRightInt32x16", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedInt32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftInt32x16", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt32x16", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt32x16", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt32x16", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt32x16", argLength: 4, commutative: false},
|
||||||
|
|
@ -476,8 +480,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt32x16", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt32x16", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt32x16", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt32x16", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt32x16", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt32x16", argLength: 3, commutative: false},
|
|
||||||
{name: "SubInt32x16", argLength: 2, commutative: false},
|
{name: "SubInt32x16", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt32x16", argLength: 3, commutative: false},
|
{name: "SubMaskedInt32x16", argLength: 3, commutative: false},
|
||||||
{name: "UnsignedSignedQuadDotProdAccumulateInt32x16", argLength: 3, commutative: false},
|
{name: "UnsignedSignedQuadDotProdAccumulateInt32x16", argLength: 3, commutative: false},
|
||||||
|
|
@ -528,8 +530,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateInt32x4", argLength: 3, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateInt32x4", argLength: 3, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedInt32x4", argLength: 4, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedInt32x4", argLength: 4, commutative: false},
|
||||||
{name: "ShiftAllLeftInt32x4", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftInt32x4", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedInt32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightInt32x4", argLength: 2, commutative: false},
|
{name: "ShiftAllRightInt32x4", argLength: 2, commutative: false},
|
||||||
{name: "ShiftAllRightSignExtendedInt32x4", argLength: 2, commutative: false},
|
{name: "ShiftAllRightMaskedInt32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftInt32x4", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt32x4", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt32x4", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt32x4", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt32x4", argLength: 4, commutative: false},
|
||||||
|
|
@ -538,8 +541,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt32x4", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt32x4", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt32x4", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt32x4", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt32x4", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt32x4", argLength: 3, commutative: false},
|
|
||||||
{name: "SignInt32x4", argLength: 2, commutative: false},
|
{name: "SignInt32x4", argLength: 2, commutative: false},
|
||||||
{name: "SubInt32x4", argLength: 2, commutative: false},
|
{name: "SubInt32x4", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt32x4", argLength: 3, commutative: false},
|
{name: "SubMaskedInt32x4", argLength: 3, commutative: false},
|
||||||
|
|
@ -591,8 +592,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateInt32x8", argLength: 3, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateInt32x8", argLength: 3, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedInt32x8", argLength: 4, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedInt32x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftAllLeftInt32x8", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftInt32x8", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedInt32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightInt32x8", argLength: 2, commutative: false},
|
{name: "ShiftAllRightInt32x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftAllRightSignExtendedInt32x8", argLength: 2, commutative: false},
|
{name: "ShiftAllRightMaskedInt32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftInt32x8", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt32x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt32x8", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt32x8", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt32x8", argLength: 4, commutative: false},
|
||||||
|
|
@ -601,8 +603,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt32x8", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt32x8", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt32x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt32x8", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt32x8", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt32x8", argLength: 3, commutative: false},
|
|
||||||
{name: "SignInt32x8", argLength: 2, commutative: false},
|
{name: "SignInt32x8", argLength: 2, commutative: false},
|
||||||
{name: "SubInt32x8", argLength: 2, commutative: false},
|
{name: "SubInt32x8", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt32x8", argLength: 3, commutative: false},
|
{name: "SubMaskedInt32x8", argLength: 3, commutative: false},
|
||||||
|
|
@ -650,8 +650,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftAllLeftMaskedInt64x2", argLength: 3, commutative: false},
|
{name: "ShiftAllLeftMaskedInt64x2", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightInt64x2", argLength: 2, commutative: false},
|
{name: "ShiftAllRightInt64x2", argLength: 2, commutative: false},
|
||||||
{name: "ShiftAllRightMaskedInt64x2", argLength: 3, commutative: false},
|
{name: "ShiftAllRightMaskedInt64x2", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightSignExtendedInt64x2", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftAllRightSignExtendedMaskedInt64x2", argLength: 3, commutative: false},
|
|
||||||
{name: "ShiftLeftInt64x2", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt64x2", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt64x2", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt64x2", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt64x2", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt64x2", argLength: 4, commutative: false},
|
||||||
|
|
@ -660,8 +658,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt64x2", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt64x2", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt64x2", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt64x2", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt64x2", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt64x2", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt64x2", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt64x2", argLength: 3, commutative: false},
|
|
||||||
{name: "SubInt64x2", argLength: 2, commutative: false},
|
{name: "SubInt64x2", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt64x2", argLength: 3, commutative: false},
|
{name: "SubMaskedInt64x2", argLength: 3, commutative: false},
|
||||||
{name: "XorInt64x2", argLength: 2, commutative: true},
|
{name: "XorInt64x2", argLength: 2, commutative: true},
|
||||||
|
|
@ -706,8 +702,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftAllLeftMaskedInt64x4", argLength: 3, commutative: false},
|
{name: "ShiftAllLeftMaskedInt64x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightInt64x4", argLength: 2, commutative: false},
|
{name: "ShiftAllRightInt64x4", argLength: 2, commutative: false},
|
||||||
{name: "ShiftAllRightMaskedInt64x4", argLength: 3, commutative: false},
|
{name: "ShiftAllRightMaskedInt64x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightSignExtendedInt64x4", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftAllRightSignExtendedMaskedInt64x4", argLength: 3, commutative: false},
|
|
||||||
{name: "ShiftLeftInt64x4", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt64x4", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt64x4", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt64x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt64x4", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt64x4", argLength: 4, commutative: false},
|
||||||
|
|
@ -716,8 +710,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt64x4", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt64x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt64x4", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt64x4", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt64x4", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt64x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt64x4", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt64x4", argLength: 3, commutative: false},
|
|
||||||
{name: "SubInt64x4", argLength: 2, commutative: false},
|
{name: "SubInt64x4", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt64x4", argLength: 3, commutative: false},
|
{name: "SubMaskedInt64x4", argLength: 3, commutative: false},
|
||||||
{name: "XorInt64x4", argLength: 2, commutative: true},
|
{name: "XorInt64x4", argLength: 2, commutative: true},
|
||||||
|
|
@ -762,8 +754,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftAllLeftMaskedInt64x8", argLength: 3, commutative: false},
|
{name: "ShiftAllLeftMaskedInt64x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightInt64x8", argLength: 2, commutative: false},
|
{name: "ShiftAllRightInt64x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftAllRightMaskedInt64x8", argLength: 3, commutative: false},
|
{name: "ShiftAllRightMaskedInt64x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightSignExtendedInt64x8", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftAllRightSignExtendedMaskedInt64x8", argLength: 3, commutative: false},
|
|
||||||
{name: "ShiftLeftInt64x8", argLength: 2, commutative: false},
|
{name: "ShiftLeftInt64x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromInt64x8", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromInt64x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedInt64x8", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedInt64x8", argLength: 4, commutative: false},
|
||||||
|
|
@ -772,8 +762,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromInt64x8", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromInt64x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedInt64x8", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedInt64x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedInt64x8", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedInt64x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedInt64x8", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedInt64x8", argLength: 3, commutative: false},
|
|
||||||
{name: "SubInt64x8", argLength: 2, commutative: false},
|
{name: "SubInt64x8", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedInt64x8", argLength: 3, commutative: false},
|
{name: "SubMaskedInt64x8", argLength: 3, commutative: false},
|
||||||
{name: "XorInt64x8", argLength: 2, commutative: true},
|
{name: "XorInt64x8", argLength: 2, commutative: true},
|
||||||
|
|
@ -906,7 +894,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedSubUint16x16", argLength: 2, commutative: false},
|
{name: "SaturatedSubUint16x16", argLength: 2, commutative: false},
|
||||||
{name: "SaturatedSubMaskedUint16x16", argLength: 3, commutative: false},
|
{name: "SaturatedSubMaskedUint16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllLeftUint16x16", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftUint16x16", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedUint16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightUint16x16", argLength: 2, commutative: false},
|
{name: "ShiftAllRightUint16x16", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedUint16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftUint16x16", argLength: 2, commutative: false},
|
{name: "ShiftLeftUint16x16", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromUint16x16", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromUint16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedUint16x16", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedUint16x16", argLength: 4, commutative: false},
|
||||||
|
|
@ -915,8 +905,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint16x16", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint16x16", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint16x16", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint16x16", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint16x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint16x16", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint16x16", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint16x16", argLength: 2, commutative: false},
|
{name: "SubUint16x16", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint16x16", argLength: 3, commutative: false},
|
{name: "SubMaskedUint16x16", argLength: 3, commutative: false},
|
||||||
{name: "XorUint16x16", argLength: 2, commutative: true},
|
{name: "XorUint16x16", argLength: 2, commutative: true},
|
||||||
|
|
@ -948,6 +936,10 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedAddMaskedUint16x32", argLength: 3, commutative: true},
|
{name: "SaturatedAddMaskedUint16x32", argLength: 3, commutative: true},
|
||||||
{name: "SaturatedSubUint16x32", argLength: 2, commutative: false},
|
{name: "SaturatedSubUint16x32", argLength: 2, commutative: false},
|
||||||
{name: "SaturatedSubMaskedUint16x32", argLength: 3, commutative: false},
|
{name: "SaturatedSubMaskedUint16x32", argLength: 3, commutative: false},
|
||||||
|
{name: "ShiftAllLeftUint16x32", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedUint16x32", argLength: 3, commutative: false},
|
||||||
|
{name: "ShiftAllRightUint16x32", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedUint16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftUint16x32", argLength: 2, commutative: false},
|
{name: "ShiftLeftUint16x32", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromUint16x32", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromUint16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedUint16x32", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedUint16x32", argLength: 4, commutative: false},
|
||||||
|
|
@ -956,8 +948,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint16x32", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint16x32", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint16x32", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint16x32", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint16x32", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint16x32", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint16x32", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint16x32", argLength: 2, commutative: false},
|
{name: "SubUint16x32", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint16x32", argLength: 3, commutative: false},
|
{name: "SubMaskedUint16x32", argLength: 3, commutative: false},
|
||||||
{name: "AddUint16x8", argLength: 2, commutative: true},
|
{name: "AddUint16x8", argLength: 2, commutative: true},
|
||||||
|
|
@ -994,7 +984,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedSubUint16x8", argLength: 2, commutative: false},
|
{name: "SaturatedSubUint16x8", argLength: 2, commutative: false},
|
||||||
{name: "SaturatedSubMaskedUint16x8", argLength: 3, commutative: false},
|
{name: "SaturatedSubMaskedUint16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllLeftUint16x8", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftUint16x8", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedUint16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightUint16x8", argLength: 2, commutative: false},
|
{name: "ShiftAllRightUint16x8", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedUint16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftUint16x8", argLength: 2, commutative: false},
|
{name: "ShiftLeftUint16x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromUint16x8", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromUint16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedUint16x8", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedUint16x8", argLength: 4, commutative: false},
|
||||||
|
|
@ -1003,8 +995,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint16x8", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint16x8", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint16x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint16x8", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint16x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint16x8", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint16x8", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint16x8", argLength: 2, commutative: false},
|
{name: "SubUint16x8", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint16x8", argLength: 3, commutative: false},
|
{name: "SubMaskedUint16x8", argLength: 3, commutative: false},
|
||||||
{name: "XorUint16x8", argLength: 2, commutative: true},
|
{name: "XorUint16x8", argLength: 2, commutative: true},
|
||||||
|
|
@ -1040,6 +1030,10 @@ func simdGenericOps() []opData {
|
||||||
{name: "RotateRightMaskedUint32x16", argLength: 3, commutative: false},
|
{name: "RotateRightMaskedUint32x16", argLength: 3, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateUint32x16", argLength: 3, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateUint32x16", argLength: 3, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedUint32x16", argLength: 4, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedUint32x16", argLength: 4, commutative: false},
|
||||||
|
{name: "ShiftAllLeftUint32x16", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedUint32x16", argLength: 3, commutative: false},
|
||||||
|
{name: "ShiftAllRightUint32x16", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedUint32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftUint32x16", argLength: 2, commutative: false},
|
{name: "ShiftLeftUint32x16", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromUint32x16", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromUint32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedUint32x16", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedUint32x16", argLength: 4, commutative: false},
|
||||||
|
|
@ -1048,8 +1042,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint32x16", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint32x16", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint32x16", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint32x16", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint32x16", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint32x16", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint32x16", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint32x16", argLength: 2, commutative: false},
|
{name: "SubUint32x16", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint32x16", argLength: 3, commutative: false},
|
{name: "SubMaskedUint32x16", argLength: 3, commutative: false},
|
||||||
{name: "UnsignedSignedQuadDotProdAccumulateUint32x16", argLength: 3, commutative: false},
|
{name: "UnsignedSignedQuadDotProdAccumulateUint32x16", argLength: 3, commutative: false},
|
||||||
|
|
@ -1092,7 +1084,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateUint32x4", argLength: 3, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateUint32x4", argLength: 3, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedUint32x4", argLength: 4, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedUint32x4", argLength: 4, commutative: false},
|
||||||
{name: "ShiftAllLeftUint32x4", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftUint32x4", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedUint32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightUint32x4", argLength: 2, commutative: false},
|
{name: "ShiftAllRightUint32x4", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedUint32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftUint32x4", argLength: 2, commutative: false},
|
{name: "ShiftLeftUint32x4", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromUint32x4", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromUint32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedUint32x4", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedUint32x4", argLength: 4, commutative: false},
|
||||||
|
|
@ -1101,8 +1095,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint32x4", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint32x4", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint32x4", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint32x4", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint32x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint32x4", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint32x4", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint32x4", argLength: 2, commutative: false},
|
{name: "SubUint32x4", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint32x4", argLength: 3, commutative: false},
|
{name: "SubMaskedUint32x4", argLength: 3, commutative: false},
|
||||||
{name: "UnsignedSignedQuadDotProdAccumulateUint32x4", argLength: 3, commutative: false},
|
{name: "UnsignedSignedQuadDotProdAccumulateUint32x4", argLength: 3, commutative: false},
|
||||||
|
|
@ -1145,7 +1137,9 @@ func simdGenericOps() []opData {
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateUint32x8", argLength: 3, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateUint32x8", argLength: 3, commutative: false},
|
||||||
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedUint32x8", argLength: 4, commutative: false},
|
{name: "SaturatedUnsignedSignedQuadDotProdAccumulateMaskedUint32x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftAllLeftUint32x8", argLength: 2, commutative: false},
|
{name: "ShiftAllLeftUint32x8", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllLeftMaskedUint32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftAllRightUint32x8", argLength: 2, commutative: false},
|
{name: "ShiftAllRightUint32x8", argLength: 2, commutative: false},
|
||||||
|
{name: "ShiftAllRightMaskedUint32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftUint32x8", argLength: 2, commutative: false},
|
{name: "ShiftLeftUint32x8", argLength: 2, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromUint32x8", argLength: 3, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromUint32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftLeftAndFillUpperFromMaskedUint32x8", argLength: 4, commutative: false},
|
{name: "ShiftLeftAndFillUpperFromMaskedUint32x8", argLength: 4, commutative: false},
|
||||||
|
|
@ -1154,8 +1148,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint32x8", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint32x8", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint32x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint32x8", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint32x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint32x8", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint32x8", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint32x8", argLength: 2, commutative: false},
|
{name: "SubUint32x8", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint32x8", argLength: 3, commutative: false},
|
{name: "SubMaskedUint32x8", argLength: 3, commutative: false},
|
||||||
{name: "UnsignedSignedQuadDotProdAccumulateUint32x8", argLength: 3, commutative: false},
|
{name: "UnsignedSignedQuadDotProdAccumulateUint32x8", argLength: 3, commutative: false},
|
||||||
|
|
@ -1206,8 +1198,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint64x2", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint64x2", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint64x2", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint64x2", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint64x2", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint64x2", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint64x2", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint64x2", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint64x2", argLength: 2, commutative: false},
|
{name: "SubUint64x2", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint64x2", argLength: 3, commutative: false},
|
{name: "SubMaskedUint64x2", argLength: 3, commutative: false},
|
||||||
{name: "XorUint64x2", argLength: 2, commutative: true},
|
{name: "XorUint64x2", argLength: 2, commutative: true},
|
||||||
|
|
@ -1256,8 +1246,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint64x4", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint64x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint64x4", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint64x4", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint64x4", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint64x4", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint64x4", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint64x4", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint64x4", argLength: 2, commutative: false},
|
{name: "SubUint64x4", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint64x4", argLength: 3, commutative: false},
|
{name: "SubMaskedUint64x4", argLength: 3, commutative: false},
|
||||||
{name: "XorUint64x4", argLength: 2, commutative: true},
|
{name: "XorUint64x4", argLength: 2, commutative: true},
|
||||||
|
|
@ -1306,8 +1294,6 @@ func simdGenericOps() []opData {
|
||||||
{name: "ShiftRightAndFillUpperFromUint64x8", argLength: 3, commutative: false},
|
{name: "ShiftRightAndFillUpperFromUint64x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightAndFillUpperFromMaskedUint64x8", argLength: 4, commutative: false},
|
{name: "ShiftRightAndFillUpperFromMaskedUint64x8", argLength: 4, commutative: false},
|
||||||
{name: "ShiftRightMaskedUint64x8", argLength: 3, commutative: false},
|
{name: "ShiftRightMaskedUint64x8", argLength: 3, commutative: false},
|
||||||
{name: "ShiftRightSignExtendedUint64x8", argLength: 2, commutative: false},
|
|
||||||
{name: "ShiftRightSignExtendedMaskedUint64x8", argLength: 3, commutative: false},
|
|
||||||
{name: "SubUint64x8", argLength: 2, commutative: false},
|
{name: "SubUint64x8", argLength: 2, commutative: false},
|
||||||
{name: "SubMaskedUint64x8", argLength: 3, commutative: false},
|
{name: "SubMaskedUint64x8", argLength: 3, commutative: false},
|
||||||
{name: "XorUint64x8", argLength: 2, commutative: true},
|
{name: "XorUint64x8", argLength: 2, commutative: true},
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -1250,15 +1250,19 @@ func simdIntrinsics(addF func(pkg, fn string, b intrinsicBuilder, archFamilies .
|
||||||
addF(simdPackage, "Uint64x2.SetElem", opLen2Imm8(ssa.OpSetElemUint64x2, types.TypeVec128, 0), sys.AMD64)
|
addF(simdPackage, "Uint64x2.SetElem", opLen2Imm8(ssa.OpSetElemUint64x2, types.TypeVec128, 0), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt16x8, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int16x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt16x8, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x16.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt16x16, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int16x16.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x32.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt16x32, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int32x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt32x4, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int32x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt32x4, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int32x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt32x8, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int32x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x16.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x2.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int64x2.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int64x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Int64x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftInt64x8, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint16x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint16x8, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint16x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint16x8, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint16x16.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint16x16, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint16x16.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x32.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint16x32, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint32x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint32x4, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint32x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint32x4, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint32x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint32x8, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint32x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x16.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x2.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint64x2.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint64x4.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Uint64x8.ShiftAllLeft", opLen2(ssa.OpShiftAllLeftUint64x8, types.TypeVec512), sys.AMD64)
|
||||||
|
|
@ -1298,23 +1302,39 @@ func simdIntrinsics(addF func(pkg, fn string, b intrinsicBuilder, archFamilies .
|
||||||
addF(simdPackage, "Uint64x2.ShiftAllLeftAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllLeftAndFillUpperFromMaskedUint64x2, types.TypeVec128, 0), sys.AMD64)
|
addF(simdPackage, "Uint64x2.ShiftAllLeftAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllLeftAndFillUpperFromMaskedUint64x2, types.TypeVec128, 0), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x4.ShiftAllLeftAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllLeftAndFillUpperFromMaskedUint64x4, types.TypeVec256, 0), sys.AMD64)
|
addF(simdPackage, "Uint64x4.ShiftAllLeftAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllLeftAndFillUpperFromMaskedUint64x4, types.TypeVec256, 0), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x8.ShiftAllLeftAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllLeftAndFillUpperFromMaskedUint64x8, types.TypeVec512, 0), sys.AMD64)
|
addF(simdPackage, "Uint64x8.ShiftAllLeftAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllLeftAndFillUpperFromMaskedUint64x8, types.TypeVec512, 0), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt16x8, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x16.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x32.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt16x32, types.TypeVec512), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x4.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt32x4, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x16.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x2.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int64x2.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x4.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int64x4.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Int64x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedInt64x8, types.TypeVec512), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint16x8, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x16.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x32.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint16x32, types.TypeVec512), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x4.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint32x4, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x16.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x2.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint64x2.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x4.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint64x4.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Uint64x8.ShiftAllLeftMasked", opLen3(ssa.OpShiftAllLeftMaskedUint64x8, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt16x8, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int16x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt16x8, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x16.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt16x16, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int16x16.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x32.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt16x32, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int32x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt32x4, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int32x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt32x4, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int32x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt32x8, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int32x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x16.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x2.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int64x2.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int64x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Int64x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightInt64x8, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint16x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint16x8, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint16x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint16x8, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint16x16.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint16x16, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint16x16.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x32.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint16x32, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint32x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint32x4, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint32x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint32x4, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint32x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint32x8, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint32x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x16.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x2.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint64x2.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint64x4.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Uint64x8.ShiftAllRight", opLen2(ssa.OpShiftAllRightUint64x8, types.TypeVec512), sys.AMD64)
|
||||||
|
|
@ -1354,22 +1374,24 @@ func simdIntrinsics(addF func(pkg, fn string, b intrinsicBuilder, archFamilies .
|
||||||
addF(simdPackage, "Uint64x2.ShiftAllRightAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllRightAndFillUpperFromMaskedUint64x2, types.TypeVec128, 0), sys.AMD64)
|
addF(simdPackage, "Uint64x2.ShiftAllRightAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllRightAndFillUpperFromMaskedUint64x2, types.TypeVec128, 0), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x4.ShiftAllRightAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllRightAndFillUpperFromMaskedUint64x4, types.TypeVec256, 0), sys.AMD64)
|
addF(simdPackage, "Uint64x4.ShiftAllRightAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllRightAndFillUpperFromMaskedUint64x4, types.TypeVec256, 0), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x8.ShiftAllRightAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllRightAndFillUpperFromMaskedUint64x8, types.TypeVec512, 0), sys.AMD64)
|
addF(simdPackage, "Uint64x8.ShiftAllRightAndFillUpperFromMasked", opLen3Imm8(ssa.OpShiftAllRightAndFillUpperFromMaskedUint64x8, types.TypeVec512, 0), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt16x8, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x16.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int16x32.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt16x32, types.TypeVec512), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x4.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt32x4, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Int32x16.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x2.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int64x2.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x4.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int64x4.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Int64x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Int64x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedInt64x8, types.TypeVec512), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint16x8, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x16.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint16x16, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint16x32.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint16x32, types.TypeVec512), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x4.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint32x4, types.TypeVec128), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint32x8, types.TypeVec256), sys.AMD64)
|
||||||
|
addF(simdPackage, "Uint32x16.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint32x16, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x2.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint64x2.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x4.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint64x4.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Uint64x8.ShiftAllRightMasked", opLen3(ssa.OpShiftAllRightMaskedUint64x8, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x8.ShiftAllRightSignExtended", opLen2(ssa.OpShiftAllRightSignExtendedInt16x8, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int16x16.ShiftAllRightSignExtended", opLen2(ssa.OpShiftAllRightSignExtendedInt16x16, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x4.ShiftAllRightSignExtended", opLen2(ssa.OpShiftAllRightSignExtendedInt32x4, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x8.ShiftAllRightSignExtended", opLen2(ssa.OpShiftAllRightSignExtendedInt32x8, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x2.ShiftAllRightSignExtended", opLen2(ssa.OpShiftAllRightSignExtendedInt64x2, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x4.ShiftAllRightSignExtended", opLen2(ssa.OpShiftAllRightSignExtendedInt64x4, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x8.ShiftAllRightSignExtended", opLen2(ssa.OpShiftAllRightSignExtendedInt64x8, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x2.ShiftAllRightSignExtendedMasked", opLen3(ssa.OpShiftAllRightSignExtendedMaskedInt64x2, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x4.ShiftAllRightSignExtendedMasked", opLen3(ssa.OpShiftAllRightSignExtendedMaskedInt64x4, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x8.ShiftAllRightSignExtendedMasked", opLen3(ssa.OpShiftAllRightSignExtendedMaskedInt64x8, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int16x8.ShiftLeft", opLen2(ssa.OpShiftLeftInt16x8, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int16x8.ShiftLeft", opLen2(ssa.OpShiftLeftInt16x8, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x16.ShiftLeft", opLen2(ssa.OpShiftLeftInt16x16, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int16x16.ShiftLeft", opLen2(ssa.OpShiftLeftInt16x16, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x32.ShiftLeft", opLen2(ssa.OpShiftLeftInt16x32, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Int16x32.ShiftLeft", opLen2(ssa.OpShiftLeftInt16x32, types.TypeVec512), sys.AMD64)
|
||||||
|
|
@ -1514,42 +1536,6 @@ func simdIntrinsics(addF func(pkg, fn string, b intrinsicBuilder, archFamilies .
|
||||||
addF(simdPackage, "Uint64x2.ShiftRightMasked", opLen3(ssa.OpShiftRightMaskedUint64x2, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Uint64x2.ShiftRightMasked", opLen3(ssa.OpShiftRightMaskedUint64x2, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x4.ShiftRightMasked", opLen3(ssa.OpShiftRightMaskedUint64x4, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Uint64x4.ShiftRightMasked", opLen3(ssa.OpShiftRightMaskedUint64x4, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Uint64x8.ShiftRightMasked", opLen3(ssa.OpShiftRightMaskedUint64x8, types.TypeVec512), sys.AMD64)
|
addF(simdPackage, "Uint64x8.ShiftRightMasked", opLen3(ssa.OpShiftRightMaskedUint64x8, types.TypeVec512), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x8.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt16x8, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int16x16.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt16x16, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int16x32.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt16x32, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x4.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt32x4, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x8.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt32x8, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x16.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt32x16, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x2.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt64x2, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x4.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt64x4, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x8.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedInt64x8, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint16x8.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint16x8, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint16x16.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint16x16, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint16x32.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint16x32, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint32x4.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint32x4, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint32x8.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint32x8, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint32x16.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint32x16, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint64x2.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint64x2, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint64x4.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint64x4, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint64x8.ShiftRightSignExtended", opLen2(ssa.OpShiftRightSignExtendedUint64x8, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int16x8.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt16x8, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int16x16.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt16x16, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int16x32.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt16x32, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x4.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt32x4, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x8.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt32x8, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int32x16.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt32x16, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x2.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt64x2, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x4.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt64x4, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int64x8.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedInt64x8, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint16x8.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint16x8, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint16x16.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint16x16, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint16x32.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint16x32, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint32x4.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint32x4, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint32x8.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint32x8, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint32x16.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint32x16, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint64x2.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint64x2, types.TypeVec128), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint64x4.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint64x4, types.TypeVec256), sys.AMD64)
|
|
||||||
addF(simdPackage, "Uint64x8.ShiftRightSignExtendedMasked", opLen3(ssa.OpShiftRightSignExtendedMaskedUint64x8, types.TypeVec512), sys.AMD64)
|
|
||||||
addF(simdPackage, "Int8x16.Sign", opLen2(ssa.OpSignInt8x16, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int8x16.Sign", opLen2(ssa.OpSignInt8x16, types.TypeVec128), sys.AMD64)
|
||||||
addF(simdPackage, "Int8x32.Sign", opLen2(ssa.OpSignInt8x32, types.TypeVec256), sys.AMD64)
|
addF(simdPackage, "Int8x32.Sign", opLen2(ssa.OpSignInt8x32, types.TypeVec256), sys.AMD64)
|
||||||
addF(simdPackage, "Int16x8.Sign", opLen2(ssa.OpSignInt16x8, types.TypeVec128), sys.AMD64)
|
addF(simdPackage, "Int16x8.Sign", opLen2(ssa.OpSignInt16x8, types.TypeVec128), sys.AMD64)
|
||||||
|
|
|
||||||
|
|
@ -6883,6 +6883,11 @@ func (x Int16x8) ShiftAllLeft(y uint64) Int16x8
|
||||||
// Asm: VPSLLW, CPU Feature: AVX2
|
// Asm: VPSLLW, CPU Feature: AVX2
|
||||||
func (x Int16x16) ShiftAllLeft(y uint64) Int16x16
|
func (x Int16x16) ShiftAllLeft(y uint64) Int16x16
|
||||||
|
|
||||||
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x32) ShiftAllLeft(y uint64) Int16x32
|
||||||
|
|
||||||
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSLLD, CPU Feature: AVX
|
// Asm: VPSLLD, CPU Feature: AVX
|
||||||
|
|
@ -6893,6 +6898,11 @@ func (x Int32x4) ShiftAllLeft(y uint64) Int32x4
|
||||||
// Asm: VPSLLD, CPU Feature: AVX2
|
// Asm: VPSLLD, CPU Feature: AVX2
|
||||||
func (x Int32x8) ShiftAllLeft(y uint64) Int32x8
|
func (x Int32x8) ShiftAllLeft(y uint64) Int32x8
|
||||||
|
|
||||||
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x16) ShiftAllLeft(y uint64) Int32x16
|
||||||
|
|
||||||
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSLLQ, CPU Feature: AVX
|
// Asm: VPSLLQ, CPU Feature: AVX
|
||||||
|
|
@ -6918,6 +6928,11 @@ func (x Uint16x8) ShiftAllLeft(y uint64) Uint16x8
|
||||||
// Asm: VPSLLW, CPU Feature: AVX2
|
// Asm: VPSLLW, CPU Feature: AVX2
|
||||||
func (x Uint16x16) ShiftAllLeft(y uint64) Uint16x16
|
func (x Uint16x16) ShiftAllLeft(y uint64) Uint16x16
|
||||||
|
|
||||||
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint16x32) ShiftAllLeft(y uint64) Uint16x32
|
||||||
|
|
||||||
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSLLD, CPU Feature: AVX
|
// Asm: VPSLLD, CPU Feature: AVX
|
||||||
|
|
@ -6928,6 +6943,11 @@ func (x Uint32x4) ShiftAllLeft(y uint64) Uint32x4
|
||||||
// Asm: VPSLLD, CPU Feature: AVX2
|
// Asm: VPSLLD, CPU Feature: AVX2
|
||||||
func (x Uint32x8) ShiftAllLeft(y uint64) Uint32x8
|
func (x Uint32x8) ShiftAllLeft(y uint64) Uint32x8
|
||||||
|
|
||||||
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x16) ShiftAllLeft(y uint64) Uint32x16
|
||||||
|
|
||||||
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
// ShiftAllLeft shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSLLQ, CPU Feature: AVX
|
// Asm: VPSLLQ, CPU Feature: AVX
|
||||||
|
|
@ -7237,6 +7257,36 @@ func (x Uint64x8) ShiftAllLeftAndFillUpperFromMasked(shift uint8, y Uint64x8, z
|
||||||
|
|
||||||
/* ShiftAllLeftMasked */
|
/* ShiftAllLeftMasked */
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x8) ShiftAllLeftMasked(y uint64, z Mask16x8) Int16x8
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x16) ShiftAllLeftMasked(y uint64, z Mask16x16) Int16x16
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x32) ShiftAllLeftMasked(y uint64, z Mask16x32) Int16x32
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x4) ShiftAllLeftMasked(y uint64, z Mask32x4) Int32x4
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x8) ShiftAllLeftMasked(y uint64, z Mask32x8) Int32x8
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x16) ShiftAllLeftMasked(y uint64, z Mask32x16) Int32x16
|
||||||
|
|
||||||
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSLLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSLLQ, CPU Feature: AVX512EVEX
|
||||||
|
|
@ -7252,6 +7302,36 @@ func (x Int64x4) ShiftAllLeftMasked(y uint64, z Mask64x4) Int64x4
|
||||||
// Asm: VPSLLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSLLQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x8) ShiftAllLeftMasked(y uint64, z Mask64x8) Int64x8
|
func (x Int64x8) ShiftAllLeftMasked(y uint64, z Mask64x8) Int64x8
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint16x8) ShiftAllLeftMasked(y uint64, z Mask16x8) Uint16x8
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint16x16) ShiftAllLeftMasked(y uint64, z Mask16x16) Uint16x16
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint16x32) ShiftAllLeftMasked(y uint64, z Mask16x32) Uint16x32
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x4) ShiftAllLeftMasked(y uint64, z Mask32x4) Uint32x4
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x8) ShiftAllLeftMasked(y uint64, z Mask32x8) Uint32x8
|
||||||
|
|
||||||
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSLLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x16) ShiftAllLeftMasked(y uint64, z Mask32x16) Uint32x16
|
||||||
|
|
||||||
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
// ShiftAllLeftMasked shifts each element to the left by the specified number of bits. Emptied lower bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSLLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSLLQ, CPU Feature: AVX512EVEX
|
||||||
|
|
@ -7269,39 +7349,49 @@ func (x Uint64x8) ShiftAllLeftMasked(y uint64, z Mask64x8) Uint64x8
|
||||||
|
|
||||||
/* ShiftAllRight */
|
/* ShiftAllRight */
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLW, CPU Feature: AVX
|
// Asm: VPSRAW, CPU Feature: AVX
|
||||||
func (x Int16x8) ShiftAllRight(y uint64) Int16x8
|
func (x Int16x8) ShiftAllRight(y uint64) Int16x8
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLW, CPU Feature: AVX2
|
// Asm: VPSRAW, CPU Feature: AVX2
|
||||||
func (x Int16x16) ShiftAllRight(y uint64) Int16x16
|
func (x Int16x16) ShiftAllRight(y uint64) Int16x16
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLD, CPU Feature: AVX
|
// Asm: VPSRAW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x32) ShiftAllRight(y uint64) Int16x32
|
||||||
|
|
||||||
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAD, CPU Feature: AVX
|
||||||
func (x Int32x4) ShiftAllRight(y uint64) Int32x4
|
func (x Int32x4) ShiftAllRight(y uint64) Int32x4
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLD, CPU Feature: AVX2
|
// Asm: VPSRAD, CPU Feature: AVX2
|
||||||
func (x Int32x8) ShiftAllRight(y uint64) Int32x8
|
func (x Int32x8) ShiftAllRight(y uint64) Int32x8
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX
|
// Asm: VPSRAD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x16) ShiftAllRight(y uint64) Int32x16
|
||||||
|
|
||||||
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x2) ShiftAllRight(y uint64) Int64x2
|
func (x Int64x2) ShiftAllRight(y uint64) Int64x2
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX2
|
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x4) ShiftAllRight(y uint64) Int64x4
|
func (x Int64x4) ShiftAllRight(y uint64) Int64x4
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x8) ShiftAllRight(y uint64) Int64x8
|
func (x Int64x8) ShiftAllRight(y uint64) Int64x8
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
|
@ -7314,6 +7404,11 @@ func (x Uint16x8) ShiftAllRight(y uint64) Uint16x8
|
||||||
// Asm: VPSRLW, CPU Feature: AVX2
|
// Asm: VPSRLW, CPU Feature: AVX2
|
||||||
func (x Uint16x16) ShiftAllRight(y uint64) Uint16x16
|
func (x Uint16x16) ShiftAllRight(y uint64) Uint16x16
|
||||||
|
|
||||||
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSRLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint16x32) ShiftAllRight(y uint64) Uint16x32
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLD, CPU Feature: AVX
|
// Asm: VPSRLD, CPU Feature: AVX
|
||||||
|
|
@ -7324,6 +7419,11 @@ func (x Uint32x4) ShiftAllRight(y uint64) Uint32x4
|
||||||
// Asm: VPSRLD, CPU Feature: AVX2
|
// Asm: VPSRLD, CPU Feature: AVX2
|
||||||
func (x Uint32x8) ShiftAllRight(y uint64) Uint32x8
|
func (x Uint32x8) ShiftAllRight(y uint64) Uint32x8
|
||||||
|
|
||||||
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSRLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x16) ShiftAllRight(y uint64) Uint32x16
|
||||||
|
|
||||||
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRight shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX
|
// Asm: VPSRLQ, CPU Feature: AVX
|
||||||
|
|
@ -7633,20 +7733,80 @@ func (x Uint64x8) ShiftAllRightAndFillUpperFromMasked(shift uint8, y Uint64x8, z
|
||||||
|
|
||||||
/* ShiftAllRightMasked */
|
/* ShiftAllRightMasked */
|
||||||
|
|
||||||
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRAW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x8) ShiftAllRightMasked(y uint64, z Mask16x8) Int16x8
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x16) ShiftAllRightMasked(y uint64, z Mask16x16) Int16x16
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int16x32) ShiftAllRightMasked(y uint64, z Mask16x32) Int16x32
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x4) ShiftAllRightMasked(y uint64, z Mask32x4) Int32x4
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x8) ShiftAllRightMasked(y uint64, z Mask32x8) Int32x8
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int32x16) ShiftAllRightMasked(y uint64, z Mask32x16) Int32x16
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x2) ShiftAllRightMasked(y uint64, z Mask64x2) Int64x2
|
func (x Int64x2) ShiftAllRightMasked(y uint64, z Mask64x2) Int64x2
|
||||||
|
|
||||||
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x4) ShiftAllRightMasked(y uint64, z Mask64x4) Int64x4
|
func (x Int64x4) ShiftAllRightMasked(y uint64, z Mask64x4) Int64x4
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
||||||
|
//
|
||||||
|
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
||||||
|
func (x Int64x8) ShiftAllRightMasked(y uint64, z Mask64x8) Int64x8
|
||||||
|
|
||||||
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRLW, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x8) ShiftAllRightMasked(y uint64, z Mask64x8) Int64x8
|
func (x Uint16x8) ShiftAllRightMasked(y uint64, z Mask16x8) Uint16x8
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSRLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint16x16) ShiftAllRightMasked(y uint64, z Mask16x16) Uint16x16
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSRLW, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint16x32) ShiftAllRightMasked(y uint64, z Mask16x32) Uint16x32
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSRLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x4) ShiftAllRightMasked(y uint64, z Mask32x4) Uint32x4
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSRLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x8) ShiftAllRightMasked(y uint64, z Mask32x8) Uint32x8
|
||||||
|
|
||||||
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
|
//
|
||||||
|
// Asm: VPSRLD, CPU Feature: AVX512EVEX
|
||||||
|
func (x Uint32x16) ShiftAllRightMasked(y uint64, z Mask32x16) Uint32x16
|
||||||
|
|
||||||
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
// ShiftAllRightMasked shifts each element to the right by the specified number of bits. Emptied upper bits are zeroed.
|
||||||
//
|
//
|
||||||
|
|
@ -7663,60 +7823,6 @@ func (x Uint64x4) ShiftAllRightMasked(y uint64, z Mask64x4) Uint64x4
|
||||||
// Asm: VPSRLQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRLQ, CPU Feature: AVX512EVEX
|
||||||
func (x Uint64x8) ShiftAllRightMasked(y uint64, z Mask64x8) Uint64x8
|
func (x Uint64x8) ShiftAllRightMasked(y uint64, z Mask64x8) Uint64x8
|
||||||
|
|
||||||
/* ShiftAllRightSignExtended */
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtended shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAW, CPU Feature: AVX
|
|
||||||
func (x Int16x8) ShiftAllRightSignExtended(y uint64) Int16x8
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtended shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAW, CPU Feature: AVX2
|
|
||||||
func (x Int16x16) ShiftAllRightSignExtended(y uint64) Int16x16
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtended shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAD, CPU Feature: AVX
|
|
||||||
func (x Int32x4) ShiftAllRightSignExtended(y uint64) Int32x4
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtended shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAD, CPU Feature: AVX2
|
|
||||||
func (x Int32x8) ShiftAllRightSignExtended(y uint64) Int32x8
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtended shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x2) ShiftAllRightSignExtended(y uint64) Int64x2
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtended shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x4) ShiftAllRightSignExtended(y uint64) Int64x4
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtended shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x8) ShiftAllRightSignExtended(y uint64) Int64x8
|
|
||||||
|
|
||||||
/* ShiftAllRightSignExtendedMasked */
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtendedMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x2) ShiftAllRightSignExtendedMasked(y uint64, z Mask64x2) Int64x2
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtendedMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x4) ShiftAllRightSignExtendedMasked(y uint64, z Mask64x4) Int64x4
|
|
||||||
|
|
||||||
// ShiftAllRightSignExtendedMasked shifts each element to the right by the specified number of bits. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x8) ShiftAllRightSignExtendedMasked(y uint64, z Mask64x8) Int64x8
|
|
||||||
|
|
||||||
/* ShiftLeft */
|
/* ShiftLeft */
|
||||||
|
|
||||||
// ShiftLeft shifts each element in x to the left by the number of bits specified in y's corresponding elements. Emptied lower bits are zeroed.
|
// ShiftLeft shifts each element in x to the left by the number of bits specified in y's corresponding elements. Emptied lower bits are zeroed.
|
||||||
|
|
@ -8123,49 +8229,49 @@ func (x Uint64x8) ShiftLeftMasked(y Uint64x8, z Mask64x8) Uint64x8
|
||||||
|
|
||||||
/* ShiftRight */
|
/* ShiftRight */
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVW, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
||||||
func (x Int16x8) ShiftRight(y Int16x8) Int16x8
|
func (x Int16x8) ShiftRight(y Int16x8) Int16x8
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVW, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
||||||
func (x Int16x16) ShiftRight(y Int16x16) Int16x16
|
func (x Int16x16) ShiftRight(y Int16x16) Int16x16
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVW, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
||||||
func (x Int16x32) ShiftRight(y Int16x32) Int16x32
|
func (x Int16x32) ShiftRight(y Int16x32) Int16x32
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVD, CPU Feature: AVX2
|
// Asm: VPSRAVD, CPU Feature: AVX2
|
||||||
func (x Int32x4) ShiftRight(y Int32x4) Int32x4
|
func (x Int32x4) ShiftRight(y Int32x4) Int32x4
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVD, CPU Feature: AVX2
|
// Asm: VPSRAVD, CPU Feature: AVX2
|
||||||
func (x Int32x8) ShiftRight(y Int32x8) Int32x8
|
func (x Int32x8) ShiftRight(y Int32x8) Int32x8
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVD, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
||||||
func (x Int32x16) ShiftRight(y Int32x16) Int32x16
|
func (x Int32x16) ShiftRight(y Int32x16) Int32x16
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVQ, CPU Feature: AVX2
|
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x2) ShiftRight(y Int64x2) Int64x2
|
func (x Int64x2) ShiftRight(y Int64x2) Int64x2
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVQ, CPU Feature: AVX2
|
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x4) ShiftRight(y Int64x4) Int64x4
|
func (x Int64x4) ShiftRight(y Int64x4) Int64x4
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x8) ShiftRight(y Int64x8) Int64x8
|
func (x Int64x8) ShiftRight(y Int64x8) Int64x8
|
||||||
|
|
||||||
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRight shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
||||||
|
|
@ -8435,49 +8541,49 @@ func (x Uint64x8) ShiftRightAndFillUpperFromMasked(y Uint64x8, z Uint64x8, u Mas
|
||||||
|
|
||||||
/* ShiftRightMasked */
|
/* ShiftRightMasked */
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVW, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
||||||
func (x Int16x8) ShiftRightMasked(y Int16x8, z Mask16x8) Int16x8
|
func (x Int16x8) ShiftRightMasked(y Int16x8, z Mask16x8) Int16x8
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVW, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
||||||
func (x Int16x16) ShiftRightMasked(y Int16x16, z Mask16x16) Int16x16
|
func (x Int16x16) ShiftRightMasked(y Int16x16, z Mask16x16) Int16x16
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVW, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
||||||
func (x Int16x32) ShiftRightMasked(y Int16x32, z Mask16x32) Int16x32
|
func (x Int16x32) ShiftRightMasked(y Int16x32, z Mask16x32) Int16x32
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVD, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
||||||
func (x Int32x4) ShiftRightMasked(y Int32x4, z Mask32x4) Int32x4
|
func (x Int32x4) ShiftRightMasked(y Int32x4, z Mask32x4) Int32x4
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVD, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
||||||
func (x Int32x8) ShiftRightMasked(y Int32x8, z Mask32x8) Int32x8
|
func (x Int32x8) ShiftRightMasked(y Int32x8, z Mask32x8) Int32x8
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVD, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
||||||
func (x Int32x16) ShiftRightMasked(y Int32x16, z Mask32x16) Int32x16
|
func (x Int32x16) ShiftRightMasked(y Int32x16, z Mask32x16) Int32x16
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x2) ShiftRightMasked(y Int64x2, z Mask64x2) Int64x2
|
func (x Int64x2) ShiftRightMasked(y Int64x2, z Mask64x2) Int64x2
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x4) ShiftRightMasked(y Int64x4, z Mask64x4) Int64x4
|
func (x Int64x4) ShiftRightMasked(y Int64x4, z Mask64x4) Int64x4
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
||||||
//
|
//
|
||||||
// Asm: VPSRLVQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
||||||
func (x Int64x8) ShiftRightMasked(y Int64x8, z Mask64x8) Int64x8
|
func (x Int64x8) ShiftRightMasked(y Int64x8, z Mask64x8) Int64x8
|
||||||
|
|
||||||
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
// ShiftRightMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are zeroed.
|
||||||
|
|
@ -8525,190 +8631,6 @@ func (x Uint64x4) ShiftRightMasked(y Uint64x4, z Mask64x4) Uint64x4
|
||||||
// Asm: VPSRLVQ, CPU Feature: AVX512EVEX
|
// Asm: VPSRLVQ, CPU Feature: AVX512EVEX
|
||||||
func (x Uint64x8) ShiftRightMasked(y Uint64x8, z Mask64x8) Uint64x8
|
func (x Uint64x8) ShiftRightMasked(y Uint64x8, z Mask64x8) Uint64x8
|
||||||
|
|
||||||
/* ShiftRightSignExtended */
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int16x8) ShiftRightSignExtended(y Int16x8) Int16x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int16x16) ShiftRightSignExtended(y Int16x16) Int16x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int16x32) ShiftRightSignExtended(y Int16x32) Int16x32
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX2
|
|
||||||
func (x Int32x4) ShiftRightSignExtended(y Int32x4) Int32x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX2
|
|
||||||
func (x Int32x8) ShiftRightSignExtended(y Int32x8) Int32x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int32x16) ShiftRightSignExtended(y Int32x16) Int32x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x2) ShiftRightSignExtended(y Int64x2) Int64x2
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x4) ShiftRightSignExtended(y Int64x4) Int64x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x8) ShiftRightSignExtended(y Int64x8) Int64x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint16x8) ShiftRightSignExtended(y Uint16x8) Uint16x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint16x16) ShiftRightSignExtended(y Uint16x16) Uint16x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint16x32) ShiftRightSignExtended(y Uint16x32) Uint16x32
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX2
|
|
||||||
func (x Uint32x4) ShiftRightSignExtended(y Uint32x4) Uint32x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX2
|
|
||||||
func (x Uint32x8) ShiftRightSignExtended(y Uint32x8) Uint32x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint32x16) ShiftRightSignExtended(y Uint32x16) Uint32x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint64x2) ShiftRightSignExtended(y Uint64x2) Uint64x2
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint64x4) ShiftRightSignExtended(y Uint64x4) Uint64x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtended shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint64x8) ShiftRightSignExtended(y Uint64x8) Uint64x8
|
|
||||||
|
|
||||||
/* ShiftRightSignExtendedMasked */
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int16x8) ShiftRightSignExtendedMasked(y Int16x8, z Mask16x8) Int16x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int16x16) ShiftRightSignExtendedMasked(y Int16x16, z Mask16x16) Int16x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int16x32) ShiftRightSignExtendedMasked(y Int16x32, z Mask16x32) Int16x32
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int32x4) ShiftRightSignExtendedMasked(y Int32x4, z Mask32x4) Int32x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int32x8) ShiftRightSignExtendedMasked(y Int32x8, z Mask32x8) Int32x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int32x16) ShiftRightSignExtendedMasked(y Int32x16, z Mask32x16) Int32x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x2) ShiftRightSignExtendedMasked(y Int64x2, z Mask64x2) Int64x2
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x4) ShiftRightSignExtendedMasked(y Int64x4, z Mask64x4) Int64x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Int64x8) ShiftRightSignExtendedMasked(y Int64x8, z Mask64x8) Int64x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint16x8) ShiftRightSignExtendedMasked(y Uint16x8, z Mask16x8) Uint16x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint16x16) ShiftRightSignExtendedMasked(y Uint16x16, z Mask16x16) Uint16x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVW, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint16x32) ShiftRightSignExtendedMasked(y Uint16x32, z Mask16x32) Uint16x32
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint32x4) ShiftRightSignExtendedMasked(y Uint32x4, z Mask32x4) Uint32x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint32x8) ShiftRightSignExtendedMasked(y Uint32x8, z Mask32x8) Uint32x8
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVD, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint32x16) ShiftRightSignExtendedMasked(y Uint32x16, z Mask32x16) Uint32x16
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint64x2) ShiftRightSignExtendedMasked(y Uint64x2, z Mask64x2) Uint64x2
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint64x4) ShiftRightSignExtendedMasked(y Uint64x4, z Mask64x4) Uint64x4
|
|
||||||
|
|
||||||
// ShiftRightSignExtendedMasked shifts each element in x to the right by the number of bits specified in y's corresponding elements. Emptied upper bits are filled with the sign bit.
|
|
||||||
//
|
|
||||||
// Asm: VPSRAVQ, CPU Feature: AVX512EVEX
|
|
||||||
func (x Uint64x8) ShiftRightSignExtendedMasked(y Uint64x8, z Mask64x8) Uint64x8
|
|
||||||
|
|
||||||
/* Sign */
|
/* Sign */
|
||||||
|
|
||||||
// Sign returns the product of the first operand with -1, 0, or 1,
|
// Sign returns the product of the first operand with -1, 0, or 1,
|
||||||
|
|
|
||||||
|
|
@ -2055,8 +2055,6 @@ func testInt16x8Binary(t *testing.T, v0 []int16, v1 []int16, want []int16, which
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sign":
|
case "Sign":
|
||||||
gotv = vec0.Sign(vec1)
|
gotv = vec0.Sign(vec1)
|
||||||
case "Sub":
|
case "Sub":
|
||||||
|
|
@ -2101,8 +2099,6 @@ func testInt16x8BinaryMasked(t *testing.T, v0 []int16, v1 []int16, v2 []int16, w
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x8())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x8())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x8())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x8())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask16x8())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask16x8())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask16x8())
|
||||||
|
|
||||||
|
|
@ -2356,8 +2352,6 @@ func testInt16x16Binary(t *testing.T, v0 []int16, v1 []int16, want []int16, whic
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sign":
|
case "Sign":
|
||||||
gotv = vec0.Sign(vec1)
|
gotv = vec0.Sign(vec1)
|
||||||
case "Sub":
|
case "Sub":
|
||||||
|
|
@ -2402,8 +2396,6 @@ func testInt16x16BinaryMasked(t *testing.T, v0 []int16, v1 []int16, v2 []int16,
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x16())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x16())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x16())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x16())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask16x16())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask16x16())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask16x16())
|
||||||
|
|
||||||
|
|
@ -2643,8 +2635,6 @@ func testInt16x32Binary(t *testing.T, v0 []int16, v1 []int16, want []int16, whic
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
|
|
||||||
|
|
@ -2685,8 +2675,6 @@ func testInt16x32BinaryMasked(t *testing.T, v0 []int16, v1 []int16, v2 []int16,
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x32())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x32())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x32())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x32())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask16x32())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask16x32())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask16x32())
|
||||||
|
|
||||||
|
|
@ -2934,8 +2922,6 @@ func testInt32x4Binary(t *testing.T, v0 []int32, v1 []int32, want []int32, which
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sign":
|
case "Sign":
|
||||||
gotv = vec0.Sign(vec1)
|
gotv = vec0.Sign(vec1)
|
||||||
case "Sub":
|
case "Sub":
|
||||||
|
|
@ -2984,8 +2970,6 @@ func testInt32x4BinaryMasked(t *testing.T, v0 []int32, v1 []int32, v2 []int32, w
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x4())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x4())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x4())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x4())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask32x4())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask32x4())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask32x4())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -3311,8 +3295,6 @@ func testInt32x8Binary(t *testing.T, v0 []int32, v1 []int32, want []int32, which
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sign":
|
case "Sign":
|
||||||
gotv = vec0.Sign(vec1)
|
gotv = vec0.Sign(vec1)
|
||||||
case "Sub":
|
case "Sub":
|
||||||
|
|
@ -3361,8 +3343,6 @@ func testInt32x8BinaryMasked(t *testing.T, v0 []int32, v1 []int32, v2 []int32, w
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x8())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x8())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x8())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x8())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask32x8())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask32x8())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask32x8())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -3684,8 +3664,6 @@ func testInt32x16Binary(t *testing.T, v0 []int32, v1 []int32, want []int32, whic
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -3732,8 +3710,6 @@ func testInt32x16BinaryMasked(t *testing.T, v0 []int32, v1 []int32, v2 []int32,
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x16())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x16())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x16())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x16())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask32x16())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask32x16())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask32x16())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -4036,8 +4012,6 @@ func testInt64x2Binary(t *testing.T, v0 []int64, v1 []int64, want []int64, which
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -4086,8 +4060,6 @@ func testInt64x2BinaryMasked(t *testing.T, v0 []int64, v1 []int64, v2 []int64, w
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x2())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x2())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x2())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x2())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask64x2())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask64x2())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask64x2())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -4292,8 +4264,6 @@ func testInt64x4Binary(t *testing.T, v0 []int64, v1 []int64, want []int64, which
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -4342,8 +4312,6 @@ func testInt64x4BinaryMasked(t *testing.T, v0 []int64, v1 []int64, v2 []int64, w
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x4())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x4())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x4())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x4())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask64x4())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask64x4())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask64x4())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -4548,8 +4516,6 @@ func testInt64x8Binary(t *testing.T, v0 []int64, v1 []int64, want []int64, which
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -4598,8 +4564,6 @@ func testInt64x8BinaryMasked(t *testing.T, v0 []int64, v1 []int64, v2 []int64, w
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x8())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x8())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x8())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x8())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask64x8())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask64x8())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask64x8())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -5478,8 +5442,6 @@ func testUint16x8Binary(t *testing.T, v0 []uint16, v1 []uint16, want []uint16, w
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -5522,8 +5484,6 @@ func testUint16x8BinaryMasked(t *testing.T, v0 []uint16, v1 []uint16, v2 []int16
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x8())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x8())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x8())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x8())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask16x8())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask16x8())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask16x8())
|
||||||
|
|
||||||
|
|
@ -5726,8 +5686,6 @@ func testUint16x16Binary(t *testing.T, v0 []uint16, v1 []uint16, want []uint16,
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -5770,8 +5728,6 @@ func testUint16x16BinaryMasked(t *testing.T, v0 []uint16, v1 []uint16, v2 []int1
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x16())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x16())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x16())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x16())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask16x16())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask16x16())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask16x16())
|
||||||
|
|
||||||
|
|
@ -5964,8 +5920,6 @@ func testUint16x32Binary(t *testing.T, v0 []uint16, v1 []uint16, want []uint16,
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
|
|
||||||
|
|
@ -6006,8 +5960,6 @@ func testUint16x32BinaryMasked(t *testing.T, v0 []uint16, v1 []uint16, v2 []int1
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x32())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask16x32())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x32())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask16x32())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask16x32())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask16x32())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask16x32())
|
||||||
|
|
||||||
|
|
@ -6206,8 +6158,6 @@ func testUint32x4Binary(t *testing.T, v0 []uint32, v1 []uint32, want []uint32, w
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -6252,8 +6202,6 @@ func testUint32x4BinaryMasked(t *testing.T, v0 []uint32, v1 []uint32, v2 []int32
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x4())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x4())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x4())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x4())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask32x4())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask32x4())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask32x4())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -6524,8 +6472,6 @@ func testUint32x8Binary(t *testing.T, v0 []uint32, v1 []uint32, want []uint32, w
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -6570,8 +6516,6 @@ func testUint32x8BinaryMasked(t *testing.T, v0 []uint32, v1 []uint32, v2 []int32
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x8())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x8())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x8())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x8())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask32x8())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask32x8())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask32x8())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -6838,8 +6782,6 @@ func testUint32x16Binary(t *testing.T, v0 []uint32, v1 []uint32, want []uint32,
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -6884,8 +6826,6 @@ func testUint32x16BinaryMasked(t *testing.T, v0 []uint32, v1 []uint32, v2 []int3
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x16())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask32x16())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x16())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask32x16())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask32x16())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask32x16())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask32x16())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -7133,8 +7073,6 @@ func testUint64x2Binary(t *testing.T, v0 []uint64, v1 []uint64, want []uint64, w
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -7181,8 +7119,6 @@ func testUint64x2BinaryMasked(t *testing.T, v0 []uint64, v1 []uint64, v2 []int64
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x2())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x2())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x2())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x2())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask64x2())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask64x2())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask64x2())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -7381,8 +7317,6 @@ func testUint64x4Binary(t *testing.T, v0 []uint64, v1 []uint64, want []uint64, w
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -7429,8 +7363,6 @@ func testUint64x4BinaryMasked(t *testing.T, v0 []uint64, v1 []uint64, v2 []int64
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x4())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x4())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x4())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x4())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask64x4())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask64x4())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask64x4())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -7629,8 +7561,6 @@ func testUint64x8Binary(t *testing.T, v0 []uint64, v1 []uint64, want []uint64, w
|
||||||
gotv = vec0.ShiftLeft(vec1)
|
gotv = vec0.ShiftLeft(vec1)
|
||||||
case "ShiftRight":
|
case "ShiftRight":
|
||||||
gotv = vec0.ShiftRight(vec1)
|
gotv = vec0.ShiftRight(vec1)
|
||||||
case "ShiftRightSignExtended":
|
|
||||||
gotv = vec0.ShiftRightSignExtended(vec1)
|
|
||||||
case "Sub":
|
case "Sub":
|
||||||
gotv = vec0.Sub(vec1)
|
gotv = vec0.Sub(vec1)
|
||||||
case "Xor":
|
case "Xor":
|
||||||
|
|
@ -7677,8 +7607,6 @@ func testUint64x8BinaryMasked(t *testing.T, v0 []uint64, v1 []uint64, v2 []int64
|
||||||
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x8())
|
gotv = vec0.ShiftLeftMasked(vec1, vec2.AsMask64x8())
|
||||||
case "ShiftRightMasked":
|
case "ShiftRightMasked":
|
||||||
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x8())
|
gotv = vec0.ShiftRightMasked(vec1, vec2.AsMask64x8())
|
||||||
case "ShiftRightSignExtendedMasked":
|
|
||||||
gotv = vec0.ShiftRightSignExtendedMasked(vec1, vec2.AsMask64x8())
|
|
||||||
case "SubMasked":
|
case "SubMasked":
|
||||||
gotv = vec0.SubMasked(vec1, vec2.AsMask64x8())
|
gotv = vec0.SubMasked(vec1, vec2.AsMask64x8())
|
||||||
case "XorMasked":
|
case "XorMasked":
|
||||||
|
|
@ -7884,7 +7812,5 @@ func testUint64x8UnaryMasked(t *testing.T, v0 []uint64, v1 []int64, want []uint6
|
||||||
// ShiftAllRightAndFillUpperFrom
|
// ShiftAllRightAndFillUpperFrom
|
||||||
// ShiftAllRightAndFillUpperFromMasked
|
// ShiftAllRightAndFillUpperFromMasked
|
||||||
// ShiftAllRightMasked
|
// ShiftAllRightMasked
|
||||||
// ShiftAllRightSignExtended
|
|
||||||
// ShiftAllRightSignExtendedMasked
|
|
||||||
// TruncWithPrecision
|
// TruncWithPrecision
|
||||||
// TruncWithPrecisionMasked
|
// TruncWithPrecisionMasked
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue