Source file src/cmd/compile/internal/ssagen/simdWasmintrinsics.go

     1  // Code generated by 'wasmgen'; DO NOT EDIT.
     2  
     3  package ssagen
     4  
     5  import (
     6  	"cmd/compile/internal/ir"
     7  	"cmd/compile/internal/ssa"
     8  	"cmd/compile/internal/ssa/ssaop"
     9  	"cmd/compile/internal/types"
    10  	"cmd/internal/sys"
    11  )
    12  
    13  func initWasmSIMD() {
    14  	makeSimdOp1 := func(op ssaop.Op) func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    15  		return func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    16  			return s.newValue1(op, types.TypeVec128, args[0])
    17  		}
    18  	}
    19  	makeSimdOp2 := func(op ssaop.Op) func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    20  		return func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    21  			return s.newValue2(op, types.TypeVec128, args[0], args[1])
    22  		}
    23  	}
    24  	makeSimdOp3 := func(op ssaop.Op) func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    25  		return func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    26  			return s.newValue3(op, types.TypeVec128, args[0], args[1], args[2])
    27  		}
    28  	}
    29  
    30  	// "As" is a type pun, just return the bits
    31  	makeAsOp := func() func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    32  		return func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    33  			return args[0]
    34  		}
    35  	}
    36  
    37  	// converting to a mask is an not-equals comparison with zero, zero obtained by x XOR x.
    38  	makeToMask := func(op, xor ssaop.Op) func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    39  		return func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    40  			return s.newValue2(op, types.TypeVec128, args[0], s.newValue2(xor, n.Type(), args[0], args[0]))
    41  		}
    42  	}
    43  
    44  	makeSimdOp1Imm8 := func(op ssaop.Op, immLimit uint64) func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    45  		return func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    46  			t := n.Type()
    47  			if args[1].Op == ssaop.OpConst8 && uint64(args[1].AuxInt) < immLimit {
    48  				return s.newValue1I(op, t, args[1].AuxInt, args[0])
    49  			}
    50  			return immJumpTableN(s, args[1], n, immLimit, func(sNew *state, idx int) {
    51  				// Encode as int8 due to requirement of AuxInt, check its comment for details.
    52  				s.vars[n] = sNew.newValue1I(op, t, int64(int8(idx)), args[0])
    53  			})
    54  		}
    55  	}
    56  
    57  	makeSimdOp2Imm8 := func(op ssaop.Op, immLimit uint64) func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    58  		return func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value {
    59  			t := types.TypeVec128
    60  			if args[1].Op == ssaop.OpConst8 && uint64(args[1].AuxInt) < immLimit {
    61  				return s.newValue2I(op, t, args[1].AuxInt, args[0], args[2])
    62  			}
    63  			return immJumpTableN(s, args[1], n, immLimit, func(sNew *state, idx int) {
    64  				// Encode as int8 due to requirement of AuxInt, check its comment for details.
    65  				s.vars[n] = sNew.newValue2I(op, t, int64(int8(idx)), args[0], args[2])
    66  			})
    67  		}
    68  	}
    69  
    70  	addWasmSIMD := func(pkg, fn string, builder func(s *state, n *ir.CallExpr, args []*ssa.Value) *ssa.Value) {
    71  		intrinsics.add(sys.ArchWasm, pkg, fn, builder)
    72  	}
    73  
    74  	addWasmSIMD("simd/archsimd", "Int8x16.Abs", makeSimdOp1(ssaop.OpAbsInt8x16))
    75  	addWasmSIMD("simd/archsimd", "Int16x8.Abs", makeSimdOp1(ssaop.OpAbsInt16x8))
    76  	addWasmSIMD("simd/archsimd", "Int32x4.Abs", makeSimdOp1(ssaop.OpAbsInt32x4))
    77  	addWasmSIMD("simd/archsimd", "Float32x4.Abs", makeSimdOp1(ssaop.OpAbsFloat32x4))
    78  	addWasmSIMD("simd/archsimd", "Int64x2.Abs", makeSimdOp1(ssaop.OpAbsInt64x2))
    79  	addWasmSIMD("simd/archsimd", "Float64x2.Abs", makeSimdOp1(ssaop.OpAbsFloat64x2))
    80  	addWasmSIMD("simd/archsimd", "Int8x16.Add", makeSimdOp2(ssaop.OpAddInt8x16))
    81  	addWasmSIMD("simd/archsimd", "Uint8x16.Add", makeSimdOp2(ssaop.OpAddInt8x16))
    82  	addWasmSIMD("simd/archsimd", "Int16x8.Add", makeSimdOp2(ssaop.OpAddInt16x8))
    83  	addWasmSIMD("simd/archsimd", "Uint16x8.Add", makeSimdOp2(ssaop.OpAddInt16x8))
    84  	addWasmSIMD("simd/archsimd", "Int32x4.Add", makeSimdOp2(ssaop.OpAddInt32x4))
    85  	addWasmSIMD("simd/archsimd", "Uint32x4.Add", makeSimdOp2(ssaop.OpAddInt32x4))
    86  	addWasmSIMD("simd/archsimd", "Float32x4.Add", makeSimdOp2(ssaop.OpAddFloat32x4))
    87  	addWasmSIMD("simd/archsimd", "Int64x2.Add", makeSimdOp2(ssaop.OpAddInt64x2))
    88  	addWasmSIMD("simd/archsimd", "Uint64x2.Add", makeSimdOp2(ssaop.OpAddInt64x2))
    89  	addWasmSIMD("simd/archsimd", "Float64x2.Add", makeSimdOp2(ssaop.OpAddFloat64x2))
    90  	addWasmSIMD("simd/archsimd", "Int8x16.AddSaturated", makeSimdOp2(ssaop.OpAddSaturatedInt8x16))
    91  	addWasmSIMD("simd/archsimd", "Uint8x16.AddSaturated", makeSimdOp2(ssaop.OpAddSaturatedUint8x16))
    92  	addWasmSIMD("simd/archsimd", "Int16x8.AddSaturated", makeSimdOp2(ssaop.OpAddSaturatedInt16x8))
    93  	addWasmSIMD("simd/archsimd", "Uint16x8.AddSaturated", makeSimdOp2(ssaop.OpAddSaturatedUint16x8))
    94  	addWasmSIMD("simd/archsimd", "Int8x16.And", makeSimdOp2(ssaop.OpAndInt8x16))
    95  	addWasmSIMD("simd/archsimd", "Uint8x16.And", makeSimdOp2(ssaop.OpAndUint8x16))
    96  	addWasmSIMD("simd/archsimd", "Mask8x16.And", makeSimdOp2(ssaop.OpAndInt8x16))
    97  	addWasmSIMD("simd/archsimd", "Int16x8.And", makeSimdOp2(ssaop.OpAndInt16x8))
    98  	addWasmSIMD("simd/archsimd", "Uint16x8.And", makeSimdOp2(ssaop.OpAndUint16x8))
    99  	addWasmSIMD("simd/archsimd", "Mask16x8.And", makeSimdOp2(ssaop.OpAndInt16x8))
   100  	addWasmSIMD("simd/archsimd", "Int32x4.And", makeSimdOp2(ssaop.OpAndInt32x4))
   101  	addWasmSIMD("simd/archsimd", "Uint32x4.And", makeSimdOp2(ssaop.OpAndUint32x4))
   102  	addWasmSIMD("simd/archsimd", "Mask32x4.And", makeSimdOp2(ssaop.OpAndInt32x4))
   103  	addWasmSIMD("simd/archsimd", "Int64x2.And", makeSimdOp2(ssaop.OpAndInt64x2))
   104  	addWasmSIMD("simd/archsimd", "Uint64x2.And", makeSimdOp2(ssaop.OpAndUint64x2))
   105  	addWasmSIMD("simd/archsimd", "Mask64x2.And", makeSimdOp2(ssaop.OpAndInt64x2))
   106  	addWasmSIMD("simd/archsimd", "Int8x16.AndNot", makeSimdOp2(ssaop.OpAndNotInt8x16))
   107  	addWasmSIMD("simd/archsimd", "Uint8x16.AndNot", makeSimdOp2(ssaop.OpAndNotUint8x16))
   108  	addWasmSIMD("simd/archsimd", "Mask8x16.AndNot", makeSimdOp2(ssaop.OpAndNotInt8x16))
   109  	addWasmSIMD("simd/archsimd", "Int16x8.AndNot", makeSimdOp2(ssaop.OpAndNotInt16x8))
   110  	addWasmSIMD("simd/archsimd", "Uint16x8.AndNot", makeSimdOp2(ssaop.OpAndNotUint16x8))
   111  	addWasmSIMD("simd/archsimd", "Mask16x8.AndNot", makeSimdOp2(ssaop.OpAndNotInt16x8))
   112  	addWasmSIMD("simd/archsimd", "Int32x4.AndNot", makeSimdOp2(ssaop.OpAndNotInt32x4))
   113  	addWasmSIMD("simd/archsimd", "Uint32x4.AndNot", makeSimdOp2(ssaop.OpAndNotUint32x4))
   114  	addWasmSIMD("simd/archsimd", "Mask32x4.AndNot", makeSimdOp2(ssaop.OpAndNotInt32x4))
   115  	addWasmSIMD("simd/archsimd", "Int64x2.AndNot", makeSimdOp2(ssaop.OpAndNotInt64x2))
   116  	addWasmSIMD("simd/archsimd", "Uint64x2.AndNot", makeSimdOp2(ssaop.OpAndNotUint64x2))
   117  	addWasmSIMD("simd/archsimd", "Mask64x2.AndNot", makeSimdOp2(ssaop.OpAndNotInt64x2))
   118  	addWasmSIMD("simd/archsimd", "Uint8x16.Average", makeSimdOp2(ssaop.OpAverageUint8x16))
   119  	addWasmSIMD("simd/archsimd", "Uint16x8.Average", makeSimdOp2(ssaop.OpAverageUint16x8))
   120  	addWasmSIMD("simd/archsimd", "Int8x16.BitSelect", makeSimdOp3(ssaop.OpBitSelectInt8x16))
   121  	addWasmSIMD("simd/archsimd", "Uint8x16.BitSelect", makeSimdOp3(ssaop.OpBitSelectUint8x16))
   122  	addWasmSIMD("simd/archsimd", "Int16x8.BitSelect", makeSimdOp3(ssaop.OpBitSelectInt16x8))
   123  	addWasmSIMD("simd/archsimd", "Uint16x8.BitSelect", makeSimdOp3(ssaop.OpBitSelectUint16x8))
   124  	addWasmSIMD("simd/archsimd", "Int32x4.BitSelect", makeSimdOp3(ssaop.OpBitSelectInt32x4))
   125  	addWasmSIMD("simd/archsimd", "Uint32x4.BitSelect", makeSimdOp3(ssaop.OpBitSelectUint32x4))
   126  	addWasmSIMD("simd/archsimd", "Int64x2.BitSelect", makeSimdOp3(ssaop.OpBitSelectInt64x2))
   127  	addWasmSIMD("simd/archsimd", "Uint64x2.BitSelect", makeSimdOp3(ssaop.OpBitSelectUint64x2))
   128  	addWasmSIMD("simd/archsimd", "Float32x4.Ceil", makeSimdOp1(ssaop.OpCeilFloat32x4))
   129  	addWasmSIMD("simd/archsimd", "Float64x2.Ceil", makeSimdOp1(ssaop.OpCeilFloat64x2))
   130  	addWasmSIMD("simd/archsimd", "Int32x4.ConvertLo2ToFloat64", makeSimdOp1(ssaop.OpConvertLo2ToFloat64Int32x4))
   131  	addWasmSIMD("simd/archsimd", "Uint32x4.ConvertLo2ToFloat64", makeSimdOp1(ssaop.OpConvertLo2ToFloat64Uint32x4))
   132  	addWasmSIMD("simd/archsimd", "Int32x4.ConvertToFloat32", makeSimdOp1(ssaop.OpConvertToFloat32Int32x4))
   133  	addWasmSIMD("simd/archsimd", "Uint32x4.ConvertToFloat32", makeSimdOp1(ssaop.OpConvertToFloat32Uint32x4))
   134  	addWasmSIMD("simd/archsimd", "Float32x4.ConvertToInt32", makeSimdOp1(ssaop.OpConvertToInt32Float32x4))
   135  	addWasmSIMD("simd/archsimd", "Float32x4.ConvertToUint32", makeSimdOp1(ssaop.OpConvertToUint32Float32x4))
   136  	addWasmSIMD("simd/archsimd", "Float32x4.Div", makeSimdOp2(ssaop.OpDivFloat32x4))
   137  	addWasmSIMD("simd/archsimd", "Float64x2.Div", makeSimdOp2(ssaop.OpDivFloat64x2))
   138  	addWasmSIMD("simd/archsimd", "Int8x16.Equal", makeSimdOp2(ssaop.OpEqualInt8x16))
   139  	addWasmSIMD("simd/archsimd", "Uint8x16.Equal", makeSimdOp2(ssaop.OpEqualUint8x16))
   140  	addWasmSIMD("simd/archsimd", "Int16x8.Equal", makeSimdOp2(ssaop.OpEqualInt16x8))
   141  	addWasmSIMD("simd/archsimd", "Uint16x8.Equal", makeSimdOp2(ssaop.OpEqualUint16x8))
   142  	addWasmSIMD("simd/archsimd", "Int32x4.Equal", makeSimdOp2(ssaop.OpEqualInt32x4))
   143  	addWasmSIMD("simd/archsimd", "Uint32x4.Equal", makeSimdOp2(ssaop.OpEqualUint32x4))
   144  	addWasmSIMD("simd/archsimd", "Float32x4.Equal", makeSimdOp2(ssaop.OpEqualFloat32x4))
   145  	addWasmSIMD("simd/archsimd", "Int64x2.Equal", makeSimdOp2(ssaop.OpEqualInt64x2))
   146  	addWasmSIMD("simd/archsimd", "Uint64x2.Equal", makeSimdOp2(ssaop.OpEqualUint64x2))
   147  	addWasmSIMD("simd/archsimd", "Float64x2.Equal", makeSimdOp2(ssaop.OpEqualFloat64x2))
   148  	addWasmSIMD("simd/archsimd", "Int32x4.ExtendHi2ToInt64", makeSimdOp1(ssaop.OpExtendHi2ToInt64Int32x4))
   149  	addWasmSIMD("simd/archsimd", "Uint32x4.ExtendHi2ToUint64", makeSimdOp1(ssaop.OpExtendHi2ToUint64Uint32x4))
   150  	addWasmSIMD("simd/archsimd", "Int16x8.ExtendHi4ToInt32", makeSimdOp1(ssaop.OpExtendHi4ToInt32Int16x8))
   151  	addWasmSIMD("simd/archsimd", "Uint16x8.ExtendHi4ToUint32", makeSimdOp1(ssaop.OpExtendHi4ToUint32Uint16x8))
   152  	addWasmSIMD("simd/archsimd", "Int8x16.ExtendHi8ToInt16", makeSimdOp1(ssaop.OpExtendHi8ToInt16Int8x16))
   153  	addWasmSIMD("simd/archsimd", "Uint8x16.ExtendHi8ToUint16", makeSimdOp1(ssaop.OpExtendHi8ToUint16Uint8x16))
   154  	addWasmSIMD("simd/archsimd", "Int32x4.ExtendLo2ToInt64", makeSimdOp1(ssaop.OpExtendLo2ToInt64Int32x4))
   155  	addWasmSIMD("simd/archsimd", "Uint32x4.ExtendLo2ToUint64", makeSimdOp1(ssaop.OpExtendLo2ToUint64Uint32x4))
   156  	addWasmSIMD("simd/archsimd", "Int16x8.ExtendLo4ToInt32", makeSimdOp1(ssaop.OpExtendLo4ToInt32Int16x8))
   157  	addWasmSIMD("simd/archsimd", "Uint16x8.ExtendLo4ToUint32", makeSimdOp1(ssaop.OpExtendLo4ToUint32Uint16x8))
   158  	addWasmSIMD("simd/archsimd", "Int8x16.ExtendLo8ToInt16", makeSimdOp1(ssaop.OpExtendLo8ToInt16Int8x16))
   159  	addWasmSIMD("simd/archsimd", "Uint8x16.ExtendLo8ToUint16", makeSimdOp1(ssaop.OpExtendLo8ToUint16Uint8x16))
   160  	addWasmSIMD("simd/archsimd", "Float32x4.Floor", makeSimdOp1(ssaop.OpFloorFloat32x4))
   161  	addWasmSIMD("simd/archsimd", "Float64x2.Floor", makeSimdOp1(ssaop.OpFloorFloat64x2))
   162  	addWasmSIMD("simd/archsimd", "Int8x16.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemInt8x16, 16))
   163  	addWasmSIMD("simd/archsimd", "Uint8x16.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemUint8x16, 16))
   164  	addWasmSIMD("simd/archsimd", "Int16x8.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemInt16x8, 8))
   165  	addWasmSIMD("simd/archsimd", "Uint16x8.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemUint16x8, 8))
   166  	addWasmSIMD("simd/archsimd", "Int32x4.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemInt32x4, 4))
   167  	addWasmSIMD("simd/archsimd", "Uint32x4.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemUint32x4, 4))
   168  	addWasmSIMD("simd/archsimd", "Float32x4.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemFloat32x4, 4))
   169  	addWasmSIMD("simd/archsimd", "Int64x2.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemInt64x2, 2))
   170  	addWasmSIMD("simd/archsimd", "Uint64x2.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemUint64x2, 2))
   171  	addWasmSIMD("simd/archsimd", "Float64x2.GetElem", makeSimdOp1Imm8(ssaop.OpGetElemFloat64x2, 2))
   172  	addWasmSIMD("simd/archsimd", "Int8x16.Greater", makeSimdOp2(ssaop.OpGreaterInt8x16))
   173  	addWasmSIMD("simd/archsimd", "Uint8x16.Greater", makeSimdOp2(ssaop.OpGreaterUint8x16))
   174  	addWasmSIMD("simd/archsimd", "Int16x8.Greater", makeSimdOp2(ssaop.OpGreaterInt16x8))
   175  	addWasmSIMD("simd/archsimd", "Uint16x8.Greater", makeSimdOp2(ssaop.OpGreaterUint16x8))
   176  	addWasmSIMD("simd/archsimd", "Int32x4.Greater", makeSimdOp2(ssaop.OpGreaterInt32x4))
   177  	addWasmSIMD("simd/archsimd", "Uint32x4.Greater", makeSimdOp2(ssaop.OpGreaterUint32x4))
   178  	addWasmSIMD("simd/archsimd", "Float32x4.Greater", makeSimdOp2(ssaop.OpGreaterFloat32x4))
   179  	addWasmSIMD("simd/archsimd", "Int64x2.Greater", makeSimdOp2(ssaop.OpGreaterInt64x2))
   180  	addWasmSIMD("simd/archsimd", "Float64x2.Greater", makeSimdOp2(ssaop.OpGreaterFloat64x2))
   181  	addWasmSIMD("simd/archsimd", "Int8x16.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualInt8x16))
   182  	addWasmSIMD("simd/archsimd", "Uint8x16.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualUint8x16))
   183  	addWasmSIMD("simd/archsimd", "Int16x8.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualInt16x8))
   184  	addWasmSIMD("simd/archsimd", "Uint16x8.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualUint16x8))
   185  	addWasmSIMD("simd/archsimd", "Int32x4.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualInt32x4))
   186  	addWasmSIMD("simd/archsimd", "Uint32x4.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualUint32x4))
   187  	addWasmSIMD("simd/archsimd", "Float32x4.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualFloat32x4))
   188  	addWasmSIMD("simd/archsimd", "Int64x2.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualInt64x2))
   189  	addWasmSIMD("simd/archsimd", "Float64x2.GreaterEqual", makeSimdOp2(ssaop.OpGreaterEqualFloat64x2))
   190  	addWasmSIMD("simd/archsimd", "Int8x16.Less", makeSimdOp2(ssaop.OpLessInt8x16))
   191  	addWasmSIMD("simd/archsimd", "Uint8x16.Less", makeSimdOp2(ssaop.OpLessUint8x16))
   192  	addWasmSIMD("simd/archsimd", "Int16x8.Less", makeSimdOp2(ssaop.OpLessInt16x8))
   193  	addWasmSIMD("simd/archsimd", "Uint16x8.Less", makeSimdOp2(ssaop.OpLessUint16x8))
   194  	addWasmSIMD("simd/archsimd", "Int32x4.Less", makeSimdOp2(ssaop.OpLessInt32x4))
   195  	addWasmSIMD("simd/archsimd", "Uint32x4.Less", makeSimdOp2(ssaop.OpLessUint32x4))
   196  	addWasmSIMD("simd/archsimd", "Float32x4.Less", makeSimdOp2(ssaop.OpLessFloat32x4))
   197  	addWasmSIMD("simd/archsimd", "Int64x2.Less", makeSimdOp2(ssaop.OpLessInt64x2))
   198  	addWasmSIMD("simd/archsimd", "Float64x2.Less", makeSimdOp2(ssaop.OpLessFloat64x2))
   199  	addWasmSIMD("simd/archsimd", "Int8x16.LessEqual", makeSimdOp2(ssaop.OpLessEqualInt8x16))
   200  	addWasmSIMD("simd/archsimd", "Uint8x16.LessEqual", makeSimdOp2(ssaop.OpLessEqualUint8x16))
   201  	addWasmSIMD("simd/archsimd", "Int16x8.LessEqual", makeSimdOp2(ssaop.OpLessEqualInt16x8))
   202  	addWasmSIMD("simd/archsimd", "Uint16x8.LessEqual", makeSimdOp2(ssaop.OpLessEqualUint16x8))
   203  	addWasmSIMD("simd/archsimd", "Int32x4.LessEqual", makeSimdOp2(ssaop.OpLessEqualInt32x4))
   204  	addWasmSIMD("simd/archsimd", "Uint32x4.LessEqual", makeSimdOp2(ssaop.OpLessEqualUint32x4))
   205  	addWasmSIMD("simd/archsimd", "Float32x4.LessEqual", makeSimdOp2(ssaop.OpLessEqualFloat32x4))
   206  	addWasmSIMD("simd/archsimd", "Int64x2.LessEqual", makeSimdOp2(ssaop.OpLessEqualInt64x2))
   207  	addWasmSIMD("simd/archsimd", "Float64x2.LessEqual", makeSimdOp2(ssaop.OpLessEqualFloat64x2))
   208  	addWasmSIMD("simd/archsimd", "Int8x16.LookupOrZero", makeSimdOp2(ssaop.OpLookupOrZeroInt8x16))
   209  	addWasmSIMD("simd/archsimd", "Int8x16.Max", makeSimdOp2(ssaop.OpMaxInt8x16))
   210  	addWasmSIMD("simd/archsimd", "Uint8x16.Max", makeSimdOp2(ssaop.OpMaxUint8x16))
   211  	addWasmSIMD("simd/archsimd", "Int16x8.Max", makeSimdOp2(ssaop.OpMaxInt16x8))
   212  	addWasmSIMD("simd/archsimd", "Uint16x8.Max", makeSimdOp2(ssaop.OpMaxUint16x8))
   213  	addWasmSIMD("simd/archsimd", "Int32x4.Max", makeSimdOp2(ssaop.OpMaxInt32x4))
   214  	addWasmSIMD("simd/archsimd", "Uint32x4.Max", makeSimdOp2(ssaop.OpMaxUint32x4))
   215  	addWasmSIMD("simd/archsimd", "Float32x4.Max", makeSimdOp2(ssaop.OpMaxFloat32x4))
   216  	addWasmSIMD("simd/archsimd", "Float64x2.Max", makeSimdOp2(ssaop.OpMaxFloat64x2))
   217  	addWasmSIMD("simd/archsimd", "Int8x16.Min", makeSimdOp2(ssaop.OpMinInt8x16))
   218  	addWasmSIMD("simd/archsimd", "Uint8x16.Min", makeSimdOp2(ssaop.OpMinUint8x16))
   219  	addWasmSIMD("simd/archsimd", "Int16x8.Min", makeSimdOp2(ssaop.OpMinInt16x8))
   220  	addWasmSIMD("simd/archsimd", "Uint16x8.Min", makeSimdOp2(ssaop.OpMinUint16x8))
   221  	addWasmSIMD("simd/archsimd", "Int32x4.Min", makeSimdOp2(ssaop.OpMinInt32x4))
   222  	addWasmSIMD("simd/archsimd", "Uint32x4.Min", makeSimdOp2(ssaop.OpMinUint32x4))
   223  	addWasmSIMD("simd/archsimd", "Float32x4.Min", makeSimdOp2(ssaop.OpMinFloat32x4))
   224  	addWasmSIMD("simd/archsimd", "Float64x2.Min", makeSimdOp2(ssaop.OpMinFloat64x2))
   225  	addWasmSIMD("simd/archsimd", "Int16x8.Mul", makeSimdOp2(ssaop.OpMulInt16x8))
   226  	addWasmSIMD("simd/archsimd", "Uint16x8.Mul", makeSimdOp2(ssaop.OpMulUint16x8))
   227  	addWasmSIMD("simd/archsimd", "Int32x4.Mul", makeSimdOp2(ssaop.OpMulInt32x4))
   228  	addWasmSIMD("simd/archsimd", "Uint32x4.Mul", makeSimdOp2(ssaop.OpMulUint32x4))
   229  	addWasmSIMD("simd/archsimd", "Float32x4.Mul", makeSimdOp2(ssaop.OpMulFloat32x4))
   230  	addWasmSIMD("simd/archsimd", "Int64x2.Mul", makeSimdOp2(ssaop.OpMulInt64x2))
   231  	addWasmSIMD("simd/archsimd", "Uint64x2.Mul", makeSimdOp2(ssaop.OpMulUint64x2))
   232  	addWasmSIMD("simd/archsimd", "Float64x2.Mul", makeSimdOp2(ssaop.OpMulFloat64x2))
   233  	addWasmSIMD("simd/archsimd", "Int8x16.MulWidenHi", makeSimdOp2(ssaop.OpMulWidenHiInt8x16))
   234  	addWasmSIMD("simd/archsimd", "Uint8x16.MulWidenHi", makeSimdOp2(ssaop.OpMulWidenHiUint8x16))
   235  	addWasmSIMD("simd/archsimd", "Int16x8.MulWidenHi", makeSimdOp2(ssaop.OpMulWidenHiInt16x8))
   236  	addWasmSIMD("simd/archsimd", "Uint16x8.MulWidenHi", makeSimdOp2(ssaop.OpMulWidenHiUint16x8))
   237  	addWasmSIMD("simd/archsimd", "Int32x4.MulWidenHi", makeSimdOp2(ssaop.OpMulWidenHiInt32x4))
   238  	addWasmSIMD("simd/archsimd", "Uint32x4.MulWidenHi", makeSimdOp2(ssaop.OpMulWidenHiUint32x4))
   239  	addWasmSIMD("simd/archsimd", "Int8x16.MulWidenLo", makeSimdOp2(ssaop.OpMulWidenLoInt8x16))
   240  	addWasmSIMD("simd/archsimd", "Uint8x16.MulWidenLo", makeSimdOp2(ssaop.OpMulWidenLoUint8x16))
   241  	addWasmSIMD("simd/archsimd", "Int16x8.MulWidenLo", makeSimdOp2(ssaop.OpMulWidenLoInt16x8))
   242  	addWasmSIMD("simd/archsimd", "Uint16x8.MulWidenLo", makeSimdOp2(ssaop.OpMulWidenLoUint16x8))
   243  	addWasmSIMD("simd/archsimd", "Int32x4.MulWidenLo", makeSimdOp2(ssaop.OpMulWidenLoInt32x4))
   244  	addWasmSIMD("simd/archsimd", "Uint32x4.MulWidenLo", makeSimdOp2(ssaop.OpMulWidenLoUint32x4))
   245  	addWasmSIMD("simd/archsimd", "Int8x16.Neg", makeSimdOp1(ssaop.OpNegInt8x16))
   246  	addWasmSIMD("simd/archsimd", "Int16x8.Neg", makeSimdOp1(ssaop.OpNegInt16x8))
   247  	addWasmSIMD("simd/archsimd", "Int32x4.Neg", makeSimdOp1(ssaop.OpNegInt32x4))
   248  	addWasmSIMD("simd/archsimd", "Float32x4.Neg", makeSimdOp1(ssaop.OpNegFloat32x4))
   249  	addWasmSIMD("simd/archsimd", "Int64x2.Neg", makeSimdOp1(ssaop.OpNegInt64x2))
   250  	addWasmSIMD("simd/archsimd", "Float64x2.Neg", makeSimdOp1(ssaop.OpNegFloat64x2))
   251  	addWasmSIMD("simd/archsimd", "Int8x16.Not", makeSimdOp1(ssaop.OpNotInt8x16))
   252  	addWasmSIMD("simd/archsimd", "Uint8x16.Not", makeSimdOp1(ssaop.OpNotUint8x16))
   253  	addWasmSIMD("simd/archsimd", "Int16x8.Not", makeSimdOp1(ssaop.OpNotInt16x8))
   254  	addWasmSIMD("simd/archsimd", "Uint16x8.Not", makeSimdOp1(ssaop.OpNotUint16x8))
   255  	addWasmSIMD("simd/archsimd", "Int32x4.Not", makeSimdOp1(ssaop.OpNotInt32x4))
   256  	addWasmSIMD("simd/archsimd", "Uint32x4.Not", makeSimdOp1(ssaop.OpNotUint32x4))
   257  	addWasmSIMD("simd/archsimd", "Int64x2.Not", makeSimdOp1(ssaop.OpNotInt64x2))
   258  	addWasmSIMD("simd/archsimd", "Uint64x2.Not", makeSimdOp1(ssaop.OpNotUint64x2))
   259  	addWasmSIMD("simd/archsimd", "Int8x16.NotEqual", makeSimdOp2(ssaop.OpNotEqualInt8x16))
   260  	addWasmSIMD("simd/archsimd", "Uint8x16.NotEqual", makeSimdOp2(ssaop.OpNotEqualUint8x16))
   261  	addWasmSIMD("simd/archsimd", "Int16x8.NotEqual", makeSimdOp2(ssaop.OpNotEqualInt16x8))
   262  	addWasmSIMD("simd/archsimd", "Uint16x8.NotEqual", makeSimdOp2(ssaop.OpNotEqualUint16x8))
   263  	addWasmSIMD("simd/archsimd", "Int32x4.NotEqual", makeSimdOp2(ssaop.OpNotEqualInt32x4))
   264  	addWasmSIMD("simd/archsimd", "Uint32x4.NotEqual", makeSimdOp2(ssaop.OpNotEqualUint32x4))
   265  	addWasmSIMD("simd/archsimd", "Float32x4.NotEqual", makeSimdOp2(ssaop.OpNotEqualFloat32x4))
   266  	addWasmSIMD("simd/archsimd", "Int64x2.NotEqual", makeSimdOp2(ssaop.OpNotEqualInt64x2))
   267  	addWasmSIMD("simd/archsimd", "Uint64x2.NotEqual", makeSimdOp2(ssaop.OpNotEqualUint64x2))
   268  	addWasmSIMD("simd/archsimd", "Float64x2.NotEqual", makeSimdOp2(ssaop.OpNotEqualFloat64x2))
   269  	addWasmSIMD("simd/archsimd", "Int8x16.OnesCount", makeSimdOp1(ssaop.OpOnesCountInt8x16))
   270  	addWasmSIMD("simd/archsimd", "Int8x16.Or", makeSimdOp2(ssaop.OpOrInt8x16))
   271  	addWasmSIMD("simd/archsimd", "Uint8x16.Or", makeSimdOp2(ssaop.OpOrUint8x16))
   272  	addWasmSIMD("simd/archsimd", "Mask8x16.Or", makeSimdOp2(ssaop.OpOrInt8x16))
   273  	addWasmSIMD("simd/archsimd", "Int16x8.Or", makeSimdOp2(ssaop.OpOrInt16x8))
   274  	addWasmSIMD("simd/archsimd", "Uint16x8.Or", makeSimdOp2(ssaop.OpOrUint16x8))
   275  	addWasmSIMD("simd/archsimd", "Mask16x8.Or", makeSimdOp2(ssaop.OpOrInt16x8))
   276  	addWasmSIMD("simd/archsimd", "Int32x4.Or", makeSimdOp2(ssaop.OpOrInt32x4))
   277  	addWasmSIMD("simd/archsimd", "Uint32x4.Or", makeSimdOp2(ssaop.OpOrUint32x4))
   278  	addWasmSIMD("simd/archsimd", "Mask32x4.Or", makeSimdOp2(ssaop.OpOrInt32x4))
   279  	addWasmSIMD("simd/archsimd", "Int64x2.Or", makeSimdOp2(ssaop.OpOrInt64x2))
   280  	addWasmSIMD("simd/archsimd", "Uint64x2.Or", makeSimdOp2(ssaop.OpOrUint64x2))
   281  	addWasmSIMD("simd/archsimd", "Mask64x2.Or", makeSimdOp2(ssaop.OpOrInt64x2))
   282  	addWasmSIMD("simd/archsimd", "Int8x16.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarInt8x16))
   283  	addWasmSIMD("simd/archsimd", "Uint8x16.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarUint8x16))
   284  	addWasmSIMD("simd/archsimd", "Int16x8.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarInt16x8))
   285  	addWasmSIMD("simd/archsimd", "Uint16x8.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarUint16x8))
   286  	addWasmSIMD("simd/archsimd", "Int32x4.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarInt32x4))
   287  	addWasmSIMD("simd/archsimd", "Uint32x4.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarUint32x4))
   288  	addWasmSIMD("simd/archsimd", "Int64x2.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarInt64x2))
   289  	addWasmSIMD("simd/archsimd", "Uint64x2.RotateAllLeft", makeSimdOp2(ssaop.OpRotateAllLeftVarUint64x2))
   290  	addWasmSIMD("simd/archsimd", "Int8x16.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarInt8x16))
   291  	addWasmSIMD("simd/archsimd", "Uint8x16.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarUint8x16))
   292  	addWasmSIMD("simd/archsimd", "Int16x8.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarInt16x8))
   293  	addWasmSIMD("simd/archsimd", "Uint16x8.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarUint16x8))
   294  	addWasmSIMD("simd/archsimd", "Int32x4.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarInt32x4))
   295  	addWasmSIMD("simd/archsimd", "Uint32x4.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarUint32x4))
   296  	addWasmSIMD("simd/archsimd", "Int64x2.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarInt64x2))
   297  	addWasmSIMD("simd/archsimd", "Uint64x2.RotateAllRight", makeSimdOp2(ssaop.OpRotateAllRightVarUint64x2))
   298  	addWasmSIMD("simd/archsimd", "Float32x4.Round", makeSimdOp1(ssaop.OpRoundFloat32x4))
   299  	addWasmSIMD("simd/archsimd", "Float64x2.Round", makeSimdOp1(ssaop.OpRoundFloat64x2))
   300  	addWasmSIMD("simd/archsimd", "Int8x16.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemInt8x16, 16))
   301  	addWasmSIMD("simd/archsimd", "Uint8x16.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemUint8x16, 16))
   302  	addWasmSIMD("simd/archsimd", "Int16x8.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemInt16x8, 8))
   303  	addWasmSIMD("simd/archsimd", "Uint16x8.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemUint16x8, 8))
   304  	addWasmSIMD("simd/archsimd", "Int32x4.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemInt32x4, 4))
   305  	addWasmSIMD("simd/archsimd", "Uint32x4.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemUint32x4, 4))
   306  	addWasmSIMD("simd/archsimd", "Float32x4.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemFloat32x4, 4))
   307  	addWasmSIMD("simd/archsimd", "Int64x2.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemInt64x2, 2))
   308  	addWasmSIMD("simd/archsimd", "Uint64x2.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemUint64x2, 2))
   309  	addWasmSIMD("simd/archsimd", "Float64x2.SetElem", makeSimdOp2Imm8(ssaop.OpSetElemFloat64x2, 2))
   310  	addWasmSIMD("simd/archsimd", "Int8x16.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftInt8x16))
   311  	addWasmSIMD("simd/archsimd", "Uint8x16.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftUint8x16))
   312  	addWasmSIMD("simd/archsimd", "Int16x8.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftInt16x8))
   313  	addWasmSIMD("simd/archsimd", "Uint16x8.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftUint16x8))
   314  	addWasmSIMD("simd/archsimd", "Int32x4.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftInt32x4))
   315  	addWasmSIMD("simd/archsimd", "Uint32x4.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftUint32x4))
   316  	addWasmSIMD("simd/archsimd", "Int64x2.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftInt64x2))
   317  	addWasmSIMD("simd/archsimd", "Uint64x2.ShiftAllLeft", makeSimdOp2(ssaop.OpShiftAllLeftUint64x2))
   318  	addWasmSIMD("simd/archsimd", "Int8x16.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightInt8x16))
   319  	addWasmSIMD("simd/archsimd", "Uint8x16.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightUint8x16))
   320  	addWasmSIMD("simd/archsimd", "Int16x8.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightInt16x8))
   321  	addWasmSIMD("simd/archsimd", "Uint16x8.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightUint16x8))
   322  	addWasmSIMD("simd/archsimd", "Int32x4.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightInt32x4))
   323  	addWasmSIMD("simd/archsimd", "Uint32x4.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightUint32x4))
   324  	addWasmSIMD("simd/archsimd", "Int64x2.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightInt64x2))
   325  	addWasmSIMD("simd/archsimd", "Uint64x2.ShiftAllRight", makeSimdOp2(ssaop.OpShiftAllRightUint64x2))
   326  	addWasmSIMD("simd/archsimd", "Float32x4.Sqrt", makeSimdOp1(ssaop.OpSqrtFloat32x4))
   327  	addWasmSIMD("simd/archsimd", "Float64x2.Sqrt", makeSimdOp1(ssaop.OpSqrtFloat64x2))
   328  	addWasmSIMD("simd/archsimd", "Int8x16.Sub", makeSimdOp2(ssaop.OpSubInt8x16))
   329  	addWasmSIMD("simd/archsimd", "Uint8x16.Sub", makeSimdOp2(ssaop.OpSubInt8x16))
   330  	addWasmSIMD("simd/archsimd", "Int16x8.Sub", makeSimdOp2(ssaop.OpSubInt16x8))
   331  	addWasmSIMD("simd/archsimd", "Uint16x8.Sub", makeSimdOp2(ssaop.OpSubInt16x8))
   332  	addWasmSIMD("simd/archsimd", "Int32x4.Sub", makeSimdOp2(ssaop.OpSubInt32x4))
   333  	addWasmSIMD("simd/archsimd", "Uint32x4.Sub", makeSimdOp2(ssaop.OpSubInt32x4))
   334  	addWasmSIMD("simd/archsimd", "Float32x4.Sub", makeSimdOp2(ssaop.OpSubFloat32x4))
   335  	addWasmSIMD("simd/archsimd", "Int64x2.Sub", makeSimdOp2(ssaop.OpSubInt64x2))
   336  	addWasmSIMD("simd/archsimd", "Uint64x2.Sub", makeSimdOp2(ssaop.OpSubInt64x2))
   337  	addWasmSIMD("simd/archsimd", "Float64x2.Sub", makeSimdOp2(ssaop.OpSubFloat64x2))
   338  	addWasmSIMD("simd/archsimd", "Int8x16.SubSaturated", makeSimdOp2(ssaop.OpSubSaturatedInt8x16))
   339  	addWasmSIMD("simd/archsimd", "Uint8x16.SubSaturated", makeSimdOp2(ssaop.OpSubSaturatedUint8x16))
   340  	addWasmSIMD("simd/archsimd", "Int16x8.SubSaturated", makeSimdOp2(ssaop.OpSubSaturatedInt16x8))
   341  	addWasmSIMD("simd/archsimd", "Uint16x8.SubSaturated", makeSimdOp2(ssaop.OpSubSaturatedUint16x8))
   342  	addWasmSIMD("simd/archsimd", "Float32x4.Trunc", makeSimdOp1(ssaop.OpTruncFloat32x4))
   343  	addWasmSIMD("simd/archsimd", "Float64x2.Trunc", makeSimdOp1(ssaop.OpTruncFloat64x2))
   344  	addWasmSIMD("simd/archsimd", "Int8x16.Xor", makeSimdOp2(ssaop.OpXorInt8x16))
   345  	addWasmSIMD("simd/archsimd", "Uint8x16.Xor", makeSimdOp2(ssaop.OpXorUint8x16))
   346  	addWasmSIMD("simd/archsimd", "Mask8x16.Xor", makeSimdOp2(ssaop.OpXorInt8x16))
   347  	addWasmSIMD("simd/archsimd", "Int16x8.Xor", makeSimdOp2(ssaop.OpXorInt16x8))
   348  	addWasmSIMD("simd/archsimd", "Uint16x8.Xor", makeSimdOp2(ssaop.OpXorUint16x8))
   349  	addWasmSIMD("simd/archsimd", "Mask16x8.Xor", makeSimdOp2(ssaop.OpXorInt16x8))
   350  	addWasmSIMD("simd/archsimd", "Int32x4.Xor", makeSimdOp2(ssaop.OpXorInt32x4))
   351  	addWasmSIMD("simd/archsimd", "Uint32x4.Xor", makeSimdOp2(ssaop.OpXorUint32x4))
   352  	addWasmSIMD("simd/archsimd", "Mask32x4.Xor", makeSimdOp2(ssaop.OpXorInt32x4))
   353  	addWasmSIMD("simd/archsimd", "Int64x2.Xor", makeSimdOp2(ssaop.OpXorInt64x2))
   354  	addWasmSIMD("simd/archsimd", "Uint64x2.Xor", makeSimdOp2(ssaop.OpXorUint64x2))
   355  	addWasmSIMD("simd/archsimd", "Mask64x2.Xor", makeSimdOp2(ssaop.OpXorInt64x2))
   356  	addWasmSIMD("simd/archsimd", "Int8x16.ToMask", makeToMask(ssaop.OpNotEqualInt8x16, ssaop.OpXorInt8x16))
   357  	addWasmSIMD("simd/archsimd", "Mask8x16.ToInt8x16", makeAsOp())
   358  	addWasmSIMD("simd/archsimd", "Int16x8.ToMask", makeToMask(ssaop.OpNotEqualInt16x8, ssaop.OpXorInt16x8))
   359  	addWasmSIMD("simd/archsimd", "Mask16x8.ToInt16x8", makeAsOp())
   360  	addWasmSIMD("simd/archsimd", "Int32x4.ToMask", makeToMask(ssaop.OpNotEqualInt32x4, ssaop.OpXorInt32x4))
   361  	addWasmSIMD("simd/archsimd", "Mask32x4.ToInt32x4", makeAsOp())
   362  	addWasmSIMD("simd/archsimd", "Int64x2.ToMask", makeToMask(ssaop.OpNotEqualInt64x2, ssaop.OpXorInt64x2))
   363  	addWasmSIMD("simd/archsimd", "Mask64x2.ToInt64x2", makeAsOp())
   364  	addWasmSIMD("simd/archsimd", "LoadInt8x16Array", simdLoad())
   365  	addWasmSIMD("simd/archsimd", "BroadcastInt8x16", simdBroadcast(ssaop.OpBroadcastInt8x16))
   366  	addWasmSIMD("simd/archsimd", "Int8x16.StoreArray", simdStore())
   367  	addWasmSIMD("simd/archsimd", "LoadInt16x8Array", simdLoad())
   368  	addWasmSIMD("simd/archsimd", "BroadcastInt16x8", simdBroadcast(ssaop.OpBroadcastInt16x8))
   369  	addWasmSIMD("simd/archsimd", "Int16x8.StoreArray", simdStore())
   370  	addWasmSIMD("simd/archsimd", "LoadInt32x4Array", simdLoad())
   371  	addWasmSIMD("simd/archsimd", "BroadcastInt32x4", simdBroadcast(ssaop.OpBroadcastInt32x4))
   372  	addWasmSIMD("simd/archsimd", "Int32x4.StoreArray", simdStore())
   373  	addWasmSIMD("simd/archsimd", "LoadInt64x2Array", simdLoad())
   374  	addWasmSIMD("simd/archsimd", "BroadcastInt64x2", simdBroadcast(ssaop.OpBroadcastInt64x2))
   375  	addWasmSIMD("simd/archsimd", "Int64x2.StoreArray", simdStore())
   376  	addWasmSIMD("simd/archsimd", "LoadUint8x16Array", simdLoad())
   377  	addWasmSIMD("simd/archsimd", "BroadcastUint8x16", simdBroadcast(ssaop.OpBroadcastInt8x16))
   378  	addWasmSIMD("simd/archsimd", "Uint8x16.StoreArray", simdStore())
   379  	addWasmSIMD("simd/archsimd", "LoadUint16x8Array", simdLoad())
   380  	addWasmSIMD("simd/archsimd", "BroadcastUint16x8", simdBroadcast(ssaop.OpBroadcastInt16x8))
   381  	addWasmSIMD("simd/archsimd", "Uint16x8.StoreArray", simdStore())
   382  	addWasmSIMD("simd/archsimd", "LoadUint32x4Array", simdLoad())
   383  	addWasmSIMD("simd/archsimd", "BroadcastUint32x4", simdBroadcast(ssaop.OpBroadcastInt32x4))
   384  	addWasmSIMD("simd/archsimd", "Uint32x4.StoreArray", simdStore())
   385  	addWasmSIMD("simd/archsimd", "LoadUint64x2Array", simdLoad())
   386  	addWasmSIMD("simd/archsimd", "BroadcastUint64x2", simdBroadcast(ssaop.OpBroadcastInt64x2))
   387  	addWasmSIMD("simd/archsimd", "Uint64x2.StoreArray", simdStore())
   388  	addWasmSIMD("simd/archsimd", "LoadFloat32x4Array", simdLoad())
   389  	addWasmSIMD("simd/archsimd", "BroadcastFloat32x4", simdBroadcast(ssaop.OpBroadcastFloat32x4))
   390  	addWasmSIMD("simd/archsimd", "Float32x4.StoreArray", simdStore())
   391  	addWasmSIMD("simd/archsimd", "LoadFloat64x2Array", simdLoad())
   392  	addWasmSIMD("simd/archsimd", "BroadcastFloat64x2", simdBroadcast(ssaop.OpBroadcastFloat64x2))
   393  	addWasmSIMD("simd/archsimd", "Float64x2.StoreArray", simdStore())
   394  	addWasmSIMD("simd/archsimd", "Int8x16.AsInt16x8", makeAsOp())
   395  	addWasmSIMD("simd/archsimd", "Int8x16.AsInt32x4", makeAsOp())
   396  	addWasmSIMD("simd/archsimd", "Int8x16.AsInt64x2", makeAsOp())
   397  	addWasmSIMD("simd/archsimd", "Int8x16.AsUint8x16", makeAsOp())
   398  	addWasmSIMD("simd/archsimd", "Int8x16.AsUint16x8", makeAsOp())
   399  	addWasmSIMD("simd/archsimd", "Int8x16.AsUint32x4", makeAsOp())
   400  	addWasmSIMD("simd/archsimd", "Int8x16.AsUint64x2", makeAsOp())
   401  	addWasmSIMD("simd/archsimd", "Int8x16.AsFloat32x4", makeAsOp())
   402  	addWasmSIMD("simd/archsimd", "Int8x16.AsFloat64x2", makeAsOp())
   403  	addWasmSIMD("simd/archsimd", "Int16x8.AsInt8x16", makeAsOp())
   404  	addWasmSIMD("simd/archsimd", "Int16x8.AsInt32x4", makeAsOp())
   405  	addWasmSIMD("simd/archsimd", "Int16x8.AsInt64x2", makeAsOp())
   406  	addWasmSIMD("simd/archsimd", "Int16x8.AsUint8x16", makeAsOp())
   407  	addWasmSIMD("simd/archsimd", "Int16x8.AsUint16x8", makeAsOp())
   408  	addWasmSIMD("simd/archsimd", "Int16x8.AsUint32x4", makeAsOp())
   409  	addWasmSIMD("simd/archsimd", "Int16x8.AsUint64x2", makeAsOp())
   410  	addWasmSIMD("simd/archsimd", "Int16x8.AsFloat32x4", makeAsOp())
   411  	addWasmSIMD("simd/archsimd", "Int16x8.AsFloat64x2", makeAsOp())
   412  	addWasmSIMD("simd/archsimd", "Int32x4.AsInt8x16", makeAsOp())
   413  	addWasmSIMD("simd/archsimd", "Int32x4.AsInt16x8", makeAsOp())
   414  	addWasmSIMD("simd/archsimd", "Int32x4.AsInt64x2", makeAsOp())
   415  	addWasmSIMD("simd/archsimd", "Int32x4.AsUint8x16", makeAsOp())
   416  	addWasmSIMD("simd/archsimd", "Int32x4.AsUint16x8", makeAsOp())
   417  	addWasmSIMD("simd/archsimd", "Int32x4.AsUint32x4", makeAsOp())
   418  	addWasmSIMD("simd/archsimd", "Int32x4.AsUint64x2", makeAsOp())
   419  	addWasmSIMD("simd/archsimd", "Int32x4.AsFloat32x4", makeAsOp())
   420  	addWasmSIMD("simd/archsimd", "Int32x4.AsFloat64x2", makeAsOp())
   421  	addWasmSIMD("simd/archsimd", "Int64x2.AsInt8x16", makeAsOp())
   422  	addWasmSIMD("simd/archsimd", "Int64x2.AsInt16x8", makeAsOp())
   423  	addWasmSIMD("simd/archsimd", "Int64x2.AsInt32x4", makeAsOp())
   424  	addWasmSIMD("simd/archsimd", "Int64x2.AsUint8x16", makeAsOp())
   425  	addWasmSIMD("simd/archsimd", "Int64x2.AsUint16x8", makeAsOp())
   426  	addWasmSIMD("simd/archsimd", "Int64x2.AsUint32x4", makeAsOp())
   427  	addWasmSIMD("simd/archsimd", "Int64x2.AsUint64x2", makeAsOp())
   428  	addWasmSIMD("simd/archsimd", "Int64x2.AsFloat32x4", makeAsOp())
   429  	addWasmSIMD("simd/archsimd", "Int64x2.AsFloat64x2", makeAsOp())
   430  	addWasmSIMD("simd/archsimd", "Uint8x16.AsInt8x16", makeAsOp())
   431  	addWasmSIMD("simd/archsimd", "Uint8x16.AsInt16x8", makeAsOp())
   432  	addWasmSIMD("simd/archsimd", "Uint8x16.AsInt32x4", makeAsOp())
   433  	addWasmSIMD("simd/archsimd", "Uint8x16.AsInt64x2", makeAsOp())
   434  	addWasmSIMD("simd/archsimd", "Uint8x16.AsUint16x8", makeAsOp())
   435  	addWasmSIMD("simd/archsimd", "Uint8x16.AsUint32x4", makeAsOp())
   436  	addWasmSIMD("simd/archsimd", "Uint8x16.AsUint64x2", makeAsOp())
   437  	addWasmSIMD("simd/archsimd", "Uint8x16.AsFloat32x4", makeAsOp())
   438  	addWasmSIMD("simd/archsimd", "Uint8x16.AsFloat64x2", makeAsOp())
   439  	addWasmSIMD("simd/archsimd", "Uint16x8.AsInt8x16", makeAsOp())
   440  	addWasmSIMD("simd/archsimd", "Uint16x8.AsInt16x8", makeAsOp())
   441  	addWasmSIMD("simd/archsimd", "Uint16x8.AsInt32x4", makeAsOp())
   442  	addWasmSIMD("simd/archsimd", "Uint16x8.AsInt64x2", makeAsOp())
   443  	addWasmSIMD("simd/archsimd", "Uint16x8.AsUint8x16", makeAsOp())
   444  	addWasmSIMD("simd/archsimd", "Uint16x8.AsUint32x4", makeAsOp())
   445  	addWasmSIMD("simd/archsimd", "Uint16x8.AsUint64x2", makeAsOp())
   446  	addWasmSIMD("simd/archsimd", "Uint16x8.AsFloat32x4", makeAsOp())
   447  	addWasmSIMD("simd/archsimd", "Uint16x8.AsFloat64x2", makeAsOp())
   448  	addWasmSIMD("simd/archsimd", "Uint32x4.AsInt8x16", makeAsOp())
   449  	addWasmSIMD("simd/archsimd", "Uint32x4.AsInt16x8", makeAsOp())
   450  	addWasmSIMD("simd/archsimd", "Uint32x4.AsInt32x4", makeAsOp())
   451  	addWasmSIMD("simd/archsimd", "Uint32x4.AsInt64x2", makeAsOp())
   452  	addWasmSIMD("simd/archsimd", "Uint32x4.AsUint8x16", makeAsOp())
   453  	addWasmSIMD("simd/archsimd", "Uint32x4.AsUint16x8", makeAsOp())
   454  	addWasmSIMD("simd/archsimd", "Uint32x4.AsUint64x2", makeAsOp())
   455  	addWasmSIMD("simd/archsimd", "Uint32x4.AsFloat32x4", makeAsOp())
   456  	addWasmSIMD("simd/archsimd", "Uint32x4.AsFloat64x2", makeAsOp())
   457  	addWasmSIMD("simd/archsimd", "Uint64x2.AsInt8x16", makeAsOp())
   458  	addWasmSIMD("simd/archsimd", "Uint64x2.AsInt16x8", makeAsOp())
   459  	addWasmSIMD("simd/archsimd", "Uint64x2.AsInt32x4", makeAsOp())
   460  	addWasmSIMD("simd/archsimd", "Uint64x2.AsInt64x2", makeAsOp())
   461  	addWasmSIMD("simd/archsimd", "Uint64x2.AsUint8x16", makeAsOp())
   462  	addWasmSIMD("simd/archsimd", "Uint64x2.AsUint16x8", makeAsOp())
   463  	addWasmSIMD("simd/archsimd", "Uint64x2.AsUint32x4", makeAsOp())
   464  	addWasmSIMD("simd/archsimd", "Uint64x2.AsFloat32x4", makeAsOp())
   465  	addWasmSIMD("simd/archsimd", "Uint64x2.AsFloat64x2", makeAsOp())
   466  	addWasmSIMD("simd/archsimd", "Float32x4.AsInt8x16", makeAsOp())
   467  	addWasmSIMD("simd/archsimd", "Float32x4.AsInt16x8", makeAsOp())
   468  	addWasmSIMD("simd/archsimd", "Float32x4.AsInt32x4", makeAsOp())
   469  	addWasmSIMD("simd/archsimd", "Float32x4.AsInt64x2", makeAsOp())
   470  	addWasmSIMD("simd/archsimd", "Float32x4.AsUint8x16", makeAsOp())
   471  	addWasmSIMD("simd/archsimd", "Float32x4.AsUint16x8", makeAsOp())
   472  	addWasmSIMD("simd/archsimd", "Float32x4.AsUint32x4", makeAsOp())
   473  	addWasmSIMD("simd/archsimd", "Float32x4.AsUint64x2", makeAsOp())
   474  	addWasmSIMD("simd/archsimd", "Float32x4.AsFloat64x2", makeAsOp())
   475  	addWasmSIMD("simd/archsimd", "Float64x2.AsInt8x16", makeAsOp())
   476  	addWasmSIMD("simd/archsimd", "Float64x2.AsInt16x8", makeAsOp())
   477  	addWasmSIMD("simd/archsimd", "Float64x2.AsInt32x4", makeAsOp())
   478  	addWasmSIMD("simd/archsimd", "Float64x2.AsInt64x2", makeAsOp())
   479  	addWasmSIMD("simd/archsimd", "Float64x2.AsUint8x16", makeAsOp())
   480  	addWasmSIMD("simd/archsimd", "Float64x2.AsUint16x8", makeAsOp())
   481  	addWasmSIMD("simd/archsimd", "Float64x2.AsUint32x4", makeAsOp())
   482  	addWasmSIMD("simd/archsimd", "Float64x2.AsUint64x2", makeAsOp())
   483  	addWasmSIMD("simd/archsimd", "Float64x2.AsFloat32x4", makeAsOp())
   484  	addWasmSIMD("simd/archsimd", "Uint32x4.BitsToFloat32", makeAsOp())
   485  	addWasmSIMD("simd/archsimd", "Float32x4.ToBits", makeAsOp())
   486  	addWasmSIMD("simd/archsimd", "Uint64x2.BitsToFloat64", makeAsOp())
   487  	addWasmSIMD("simd/archsimd", "Float64x2.ToBits", makeAsOp())
   488  	addWasmSIMD("simd/archsimd", "Uint8x16.BitsToInt8", makeAsOp())
   489  	addWasmSIMD("simd/archsimd", "Uint8x16.ConvertToInt8", makeAsOp())
   490  	addWasmSIMD("simd/archsimd", "Int8x16.ConvertToUint8", makeAsOp())
   491  	addWasmSIMD("simd/archsimd", "Int8x16.ToBits", makeAsOp())
   492  	addWasmSIMD("simd/archsimd", "Uint16x8.BitsToInt16", makeAsOp())
   493  	addWasmSIMD("simd/archsimd", "Uint16x8.ConvertToInt16", makeAsOp())
   494  	addWasmSIMD("simd/archsimd", "Int16x8.ConvertToUint16", makeAsOp())
   495  	addWasmSIMD("simd/archsimd", "Int16x8.ToBits", makeAsOp())
   496  	addWasmSIMD("simd/archsimd", "Uint32x4.BitsToInt32", makeAsOp())
   497  	addWasmSIMD("simd/archsimd", "Uint32x4.ConvertToInt32", makeAsOp())
   498  	addWasmSIMD("simd/archsimd", "Int32x4.ConvertToUint32", makeAsOp())
   499  	addWasmSIMD("simd/archsimd", "Int32x4.ToBits", makeAsOp())
   500  	addWasmSIMD("simd/archsimd", "Uint64x2.BitsToInt64", makeAsOp())
   501  	addWasmSIMD("simd/archsimd", "Uint64x2.ConvertToInt64", makeAsOp())
   502  	addWasmSIMD("simd/archsimd", "Int64x2.ConvertToUint64", makeAsOp())
   503  	addWasmSIMD("simd/archsimd", "Int64x2.ToBits", makeAsOp())
   504  	addWasmSIMD("simd/archsimd", "Uint8x16.ReshapeToUint16s", makeAsOp())
   505  	addWasmSIMD("simd/archsimd", "Uint8x16.ReshapeToUint32s", makeAsOp())
   506  	addWasmSIMD("simd/archsimd", "Uint8x16.ReshapeToUint64s", makeAsOp())
   507  	addWasmSIMD("simd/archsimd", "Uint16x8.ReshapeToUint8s", makeAsOp())
   508  	addWasmSIMD("simd/archsimd", "Uint16x8.ReshapeToUint32s", makeAsOp())
   509  	addWasmSIMD("simd/archsimd", "Uint16x8.ReshapeToUint64s", makeAsOp())
   510  	addWasmSIMD("simd/archsimd", "Uint32x4.ReshapeToUint8s", makeAsOp())
   511  	addWasmSIMD("simd/archsimd", "Uint32x4.ReshapeToUint16s", makeAsOp())
   512  	addWasmSIMD("simd/archsimd", "Uint32x4.ReshapeToUint64s", makeAsOp())
   513  	addWasmSIMD("simd/archsimd", "Uint64x2.ReshapeToUint8s", makeAsOp())
   514  	addWasmSIMD("simd/archsimd", "Uint64x2.ReshapeToUint16s", makeAsOp())
   515  	addWasmSIMD("simd/archsimd", "Uint64x2.ReshapeToUint32s", makeAsOp())
   516  }
   517  

View as plain text