1
2
3 package main
4
5 func init() {
6 additionalGenericOps["amd64"] = []opData{
7 {name: "AESDecryptLastRoundUint8x16", argLength: 2},
8 {name: "AESDecryptLastRoundUint8x32", argLength: 2},
9 {name: "AESDecryptLastRoundUint8x64", argLength: 2},
10 {name: "AESDecryptOneRoundUint8x16", argLength: 2},
11 {name: "AESDecryptOneRoundUint8x32", argLength: 2},
12 {name: "AESDecryptOneRoundUint8x64", argLength: 2},
13 {name: "AESEncryptLastRoundUint8x16", argLength: 2},
14 {name: "AESEncryptLastRoundUint8x32", argLength: 2},
15 {name: "AESEncryptLastRoundUint8x64", argLength: 2},
16 {name: "AESEncryptOneRoundUint8x16", argLength: 2},
17 {name: "AESEncryptOneRoundUint8x32", argLength: 2},
18 {name: "AESEncryptOneRoundUint8x64", argLength: 2},
19 {name: "AESInvMixColumnsUint32x4", argLength: 1},
20 {name: "AESRoundKeyGenAssistUint32x4", argLength: 1, aux: "UInt8"},
21 {name: "AbsInt8x16", argLength: 1},
22 {name: "AbsInt8x32", argLength: 1},
23 {name: "AbsInt8x64", argLength: 1},
24 {name: "AbsInt16x8", argLength: 1},
25 {name: "AbsInt16x16", argLength: 1},
26 {name: "AbsInt16x32", argLength: 1},
27 {name: "AbsInt32x4", argLength: 1},
28 {name: "AbsInt32x8", argLength: 1},
29 {name: "AbsInt32x16", argLength: 1},
30 {name: "AbsInt64x2", argLength: 1},
31 {name: "AbsInt64x4", argLength: 1},
32 {name: "AbsInt64x8", argLength: 1},
33 {name: "AddFloat32x4", argLength: 2, commutative: true},
34 {name: "AddFloat32x8", argLength: 2, commutative: true},
35 {name: "AddFloat32x16", argLength: 2, commutative: true},
36 {name: "AddFloat64x2", argLength: 2, commutative: true},
37 {name: "AddFloat64x4", argLength: 2, commutative: true},
38 {name: "AddFloat64x8", argLength: 2, commutative: true},
39 {name: "AddInt8x16", argLength: 2, commutative: true},
40 {name: "AddInt8x32", argLength: 2, commutative: true},
41 {name: "AddInt8x64", argLength: 2, commutative: true},
42 {name: "AddInt16x8", argLength: 2, commutative: true},
43 {name: "AddInt16x16", argLength: 2, commutative: true},
44 {name: "AddInt16x32", argLength: 2, commutative: true},
45 {name: "AddInt32x4", argLength: 2, commutative: true},
46 {name: "AddInt32x8", argLength: 2, commutative: true},
47 {name: "AddInt32x16", argLength: 2, commutative: true},
48 {name: "AddInt64x2", argLength: 2, commutative: true},
49 {name: "AddInt64x4", argLength: 2, commutative: true},
50 {name: "AddInt64x8", argLength: 2, commutative: true},
51 {name: "AddOddSubEvenFloat32x4", argLength: 2},
52 {name: "AddOddSubEvenFloat32x8", argLength: 2},
53 {name: "AddOddSubEvenFloat64x2", argLength: 2},
54 {name: "AddOddSubEvenFloat64x4", argLength: 2},
55 {name: "AddSaturatedInt8x16", argLength: 2, commutative: true},
56 {name: "AddSaturatedInt8x32", argLength: 2, commutative: true},
57 {name: "AddSaturatedInt8x64", argLength: 2, commutative: true},
58 {name: "AddSaturatedInt16x8", argLength: 2, commutative: true},
59 {name: "AddSaturatedInt16x16", argLength: 2, commutative: true},
60 {name: "AddSaturatedInt16x32", argLength: 2, commutative: true},
61 {name: "AddSaturatedUint8x16", argLength: 2, commutative: true},
62 {name: "AddSaturatedUint8x32", argLength: 2, commutative: true},
63 {name: "AddSaturatedUint8x64", argLength: 2, commutative: true},
64 {name: "AddSaturatedUint16x8", argLength: 2, commutative: true},
65 {name: "AddSaturatedUint16x16", argLength: 2, commutative: true},
66 {name: "AddSaturatedUint16x32", argLength: 2, commutative: true},
67 {name: "AddUint8x16", argLength: 2, commutative: true},
68 {name: "AddUint8x32", argLength: 2, commutative: true},
69 {name: "AddUint8x64", argLength: 2, commutative: true},
70 {name: "AddUint16x8", argLength: 2, commutative: true},
71 {name: "AddUint16x16", argLength: 2, commutative: true},
72 {name: "AddUint16x32", argLength: 2, commutative: true},
73 {name: "AddUint32x4", argLength: 2, commutative: true},
74 {name: "AddUint32x8", argLength: 2, commutative: true},
75 {name: "AddUint32x16", argLength: 2, commutative: true},
76 {name: "AddUint64x2", argLength: 2, commutative: true},
77 {name: "AddUint64x4", argLength: 2, commutative: true},
78 {name: "AddUint64x8", argLength: 2, commutative: true},
79 {name: "AndInt8x16", argLength: 2, commutative: true},
80 {name: "AndInt8x32", argLength: 2, commutative: true},
81 {name: "AndInt8x64", argLength: 2, commutative: true},
82 {name: "AndInt16x8", argLength: 2, commutative: true},
83 {name: "AndInt16x16", argLength: 2, commutative: true},
84 {name: "AndInt16x32", argLength: 2, commutative: true},
85 {name: "AndInt32x4", argLength: 2, commutative: true},
86 {name: "AndInt32x8", argLength: 2, commutative: true},
87 {name: "AndInt32x16", argLength: 2, commutative: true},
88 {name: "AndInt64x2", argLength: 2, commutative: true},
89 {name: "AndInt64x4", argLength: 2, commutative: true},
90 {name: "AndInt64x8", argLength: 2, commutative: true},
91 {name: "AndNotInt8x16", argLength: 2},
92 {name: "AndNotInt8x32", argLength: 2},
93 {name: "AndNotInt8x64", argLength: 2},
94 {name: "AndNotInt16x8", argLength: 2},
95 {name: "AndNotInt16x16", argLength: 2},
96 {name: "AndNotInt16x32", argLength: 2},
97 {name: "AndNotInt32x4", argLength: 2},
98 {name: "AndNotInt32x8", argLength: 2},
99 {name: "AndNotInt32x16", argLength: 2},
100 {name: "AndNotInt64x2", argLength: 2},
101 {name: "AndNotInt64x4", argLength: 2},
102 {name: "AndNotInt64x8", argLength: 2},
103 {name: "AndNotUint8x16", argLength: 2},
104 {name: "AndNotUint8x32", argLength: 2},
105 {name: "AndNotUint8x64", argLength: 2},
106 {name: "AndNotUint16x8", argLength: 2},
107 {name: "AndNotUint16x16", argLength: 2},
108 {name: "AndNotUint16x32", argLength: 2},
109 {name: "AndNotUint32x4", argLength: 2},
110 {name: "AndNotUint32x8", argLength: 2},
111 {name: "AndNotUint32x16", argLength: 2},
112 {name: "AndNotUint64x2", argLength: 2},
113 {name: "AndNotUint64x4", argLength: 2},
114 {name: "AndNotUint64x8", argLength: 2},
115 {name: "AndUint8x16", argLength: 2, commutative: true},
116 {name: "AndUint8x32", argLength: 2, commutative: true},
117 {name: "AndUint8x64", argLength: 2, commutative: true},
118 {name: "AndUint16x8", argLength: 2, commutative: true},
119 {name: "AndUint16x16", argLength: 2, commutative: true},
120 {name: "AndUint16x32", argLength: 2, commutative: true},
121 {name: "AndUint32x4", argLength: 2, commutative: true},
122 {name: "AndUint32x8", argLength: 2, commutative: true},
123 {name: "AndUint32x16", argLength: 2, commutative: true},
124 {name: "AndUint64x2", argLength: 2, commutative: true},
125 {name: "AndUint64x4", argLength: 2, commutative: true},
126 {name: "AndUint64x8", argLength: 2, commutative: true},
127 {name: "AverageUint8x16", argLength: 2, commutative: true},
128 {name: "AverageUint8x32", argLength: 2, commutative: true},
129 {name: "AverageUint8x64", argLength: 2, commutative: true},
130 {name: "AverageUint16x8", argLength: 2, commutative: true},
131 {name: "AverageUint16x16", argLength: 2, commutative: true},
132 {name: "AverageUint16x32", argLength: 2, commutative: true},
133 {name: "CeilFloat32x4", argLength: 1},
134 {name: "CeilFloat32x8", argLength: 1},
135 {name: "CeilFloat64x2", argLength: 1},
136 {name: "CeilFloat64x4", argLength: 1},
137 {name: "CeilScaledFloat32x4", argLength: 1, aux: "UInt8"},
138 {name: "CeilScaledFloat32x8", argLength: 1, aux: "UInt8"},
139 {name: "CeilScaledFloat32x16", argLength: 1, aux: "UInt8"},
140 {name: "CeilScaledFloat64x2", argLength: 1, aux: "UInt8"},
141 {name: "CeilScaledFloat64x4", argLength: 1, aux: "UInt8"},
142 {name: "CeilScaledFloat64x8", argLength: 1, aux: "UInt8"},
143 {name: "CeilScaledResidueFloat32x4", argLength: 1, aux: "UInt8"},
144 {name: "CeilScaledResidueFloat32x8", argLength: 1, aux: "UInt8"},
145 {name: "CeilScaledResidueFloat32x16", argLength: 1, aux: "UInt8"},
146 {name: "CeilScaledResidueFloat64x2", argLength: 1, aux: "UInt8"},
147 {name: "CeilScaledResidueFloat64x4", argLength: 1, aux: "UInt8"},
148 {name: "CeilScaledResidueFloat64x8", argLength: 1, aux: "UInt8"},
149 {name: "CompressFloat32x4", argLength: 2},
150 {name: "CompressFloat32x8", argLength: 2},
151 {name: "CompressFloat32x16", argLength: 2},
152 {name: "CompressFloat64x2", argLength: 2},
153 {name: "CompressFloat64x4", argLength: 2},
154 {name: "CompressFloat64x8", argLength: 2},
155 {name: "CompressInt8x16", argLength: 2},
156 {name: "CompressInt8x32", argLength: 2},
157 {name: "CompressInt8x64", argLength: 2},
158 {name: "CompressInt16x8", argLength: 2},
159 {name: "CompressInt16x16", argLength: 2},
160 {name: "CompressInt16x32", argLength: 2},
161 {name: "CompressInt32x4", argLength: 2},
162 {name: "CompressInt32x8", argLength: 2},
163 {name: "CompressInt32x16", argLength: 2},
164 {name: "CompressInt64x2", argLength: 2},
165 {name: "CompressInt64x4", argLength: 2},
166 {name: "CompressInt64x8", argLength: 2},
167 {name: "CompressUint8x16", argLength: 2},
168 {name: "CompressUint8x32", argLength: 2},
169 {name: "CompressUint8x64", argLength: 2},
170 {name: "CompressUint16x8", argLength: 2},
171 {name: "CompressUint16x16", argLength: 2},
172 {name: "CompressUint16x32", argLength: 2},
173 {name: "CompressUint32x4", argLength: 2},
174 {name: "CompressUint32x8", argLength: 2},
175 {name: "CompressUint32x16", argLength: 2},
176 {name: "CompressUint64x2", argLength: 2},
177 {name: "CompressUint64x4", argLength: 2},
178 {name: "CompressUint64x8", argLength: 2},
179 {name: "ConcatAddPairsFloat32x4", argLength: 2},
180 {name: "ConcatAddPairsFloat64x2", argLength: 2},
181 {name: "ConcatAddPairsGroupedFloat32x8", argLength: 2},
182 {name: "ConcatAddPairsGroupedFloat64x4", argLength: 2},
183 {name: "ConcatAddPairsGroupedInt16x16", argLength: 2},
184 {name: "ConcatAddPairsGroupedInt32x8", argLength: 2},
185 {name: "ConcatAddPairsGroupedUint16x16", argLength: 2},
186 {name: "ConcatAddPairsGroupedUint32x8", argLength: 2},
187 {name: "ConcatAddPairsInt16x8", argLength: 2},
188 {name: "ConcatAddPairsInt32x4", argLength: 2},
189 {name: "ConcatAddPairsSaturatedGroupedInt16x16", argLength: 2},
190 {name: "ConcatAddPairsSaturatedInt16x8", argLength: 2},
191 {name: "ConcatAddPairsUint16x8", argLength: 2},
192 {name: "ConcatAddPairsUint32x4", argLength: 2},
193 {name: "ConcatPermute128ScalarsFloat32x8", argLength: 2, aux: "UInt8"},
194 {name: "ConcatPermute128ScalarsFloat64x4", argLength: 2, aux: "UInt8"},
195 {name: "ConcatPermute128ScalarsInt8x32", argLength: 2, aux: "UInt8"},
196 {name: "ConcatPermute128ScalarsInt16x16", argLength: 2, aux: "UInt8"},
197 {name: "ConcatPermute128ScalarsInt32x8", argLength: 2, aux: "UInt8"},
198 {name: "ConcatPermute128ScalarsInt64x4", argLength: 2, aux: "UInt8"},
199 {name: "ConcatPermute128ScalarsUint8x32", argLength: 2, aux: "UInt8"},
200 {name: "ConcatPermute128ScalarsUint16x16", argLength: 2, aux: "UInt8"},
201 {name: "ConcatPermute128ScalarsUint32x8", argLength: 2, aux: "UInt8"},
202 {name: "ConcatPermute128ScalarsUint64x4", argLength: 2, aux: "UInt8"},
203 {name: "ConcatPermuteFloat32x4", argLength: 3},
204 {name: "ConcatPermuteFloat32x8", argLength: 3},
205 {name: "ConcatPermuteFloat32x16", argLength: 3},
206 {name: "ConcatPermuteFloat64x2", argLength: 3},
207 {name: "ConcatPermuteFloat64x4", argLength: 3},
208 {name: "ConcatPermuteFloat64x8", argLength: 3},
209 {name: "ConcatPermuteInt8x16", argLength: 3},
210 {name: "ConcatPermuteInt8x32", argLength: 3},
211 {name: "ConcatPermuteInt8x64", argLength: 3},
212 {name: "ConcatPermuteInt16x8", argLength: 3},
213 {name: "ConcatPermuteInt16x16", argLength: 3},
214 {name: "ConcatPermuteInt16x32", argLength: 3},
215 {name: "ConcatPermuteInt32x4", argLength: 3},
216 {name: "ConcatPermuteInt32x8", argLength: 3},
217 {name: "ConcatPermuteInt32x16", argLength: 3},
218 {name: "ConcatPermuteInt64x2", argLength: 3},
219 {name: "ConcatPermuteInt64x4", argLength: 3},
220 {name: "ConcatPermuteInt64x8", argLength: 3},
221 {name: "ConcatPermuteUint8x16", argLength: 3},
222 {name: "ConcatPermuteUint8x32", argLength: 3},
223 {name: "ConcatPermuteUint8x64", argLength: 3},
224 {name: "ConcatPermuteUint16x8", argLength: 3},
225 {name: "ConcatPermuteUint16x16", argLength: 3},
226 {name: "ConcatPermuteUint16x32", argLength: 3},
227 {name: "ConcatPermuteUint32x4", argLength: 3},
228 {name: "ConcatPermuteUint32x8", argLength: 3},
229 {name: "ConcatPermuteUint32x16", argLength: 3},
230 {name: "ConcatPermuteUint64x2", argLength: 3},
231 {name: "ConcatPermuteUint64x4", argLength: 3},
232 {name: "ConcatPermuteUint64x8", argLength: 3},
233 {name: "ConcatSaturateToInt16GroupedInt32x8", argLength: 2},
234 {name: "ConcatSaturateToInt16GroupedInt32x16", argLength: 2},
235 {name: "ConcatSaturateToInt16Int32x4", argLength: 2},
236 {name: "ConcatSaturateToUint16GroupedInt32x8", argLength: 2},
237 {name: "ConcatSaturateToUint16GroupedInt32x16", argLength: 2},
238 {name: "ConcatSaturateToUint16Int32x4", argLength: 2},
239 {name: "ConcatShiftBytesRightGroupedUint8x32", argLength: 2, aux: "UInt8"},
240 {name: "ConcatShiftBytesRightGroupedUint8x64", argLength: 2, aux: "UInt8"},
241 {name: "ConcatShiftBytesRightUint8x16", argLength: 2, aux: "UInt8"},
242 {name: "ConcatSubPairsFloat32x4", argLength: 2},
243 {name: "ConcatSubPairsFloat64x2", argLength: 2},
244 {name: "ConcatSubPairsGroupedFloat32x8", argLength: 2},
245 {name: "ConcatSubPairsGroupedFloat64x4", argLength: 2},
246 {name: "ConcatSubPairsGroupedInt16x16", argLength: 2},
247 {name: "ConcatSubPairsGroupedInt32x8", argLength: 2},
248 {name: "ConcatSubPairsGroupedUint16x16", argLength: 2},
249 {name: "ConcatSubPairsGroupedUint32x8", argLength: 2},
250 {name: "ConcatSubPairsInt16x8", argLength: 2},
251 {name: "ConcatSubPairsInt32x4", argLength: 2},
252 {name: "ConcatSubPairsSaturatedGroupedInt16x16", argLength: 2},
253 {name: "ConcatSubPairsSaturatedInt16x8", argLength: 2},
254 {name: "ConcatSubPairsUint16x8", argLength: 2},
255 {name: "ConcatSubPairsUint32x4", argLength: 2},
256 {name: "ConvertToFloat32Float64x2", argLength: 1},
257 {name: "ConvertToFloat32Float64x4", argLength: 1},
258 {name: "ConvertToFloat32Float64x8", argLength: 1},
259 {name: "ConvertToFloat32Int32x4", argLength: 1},
260 {name: "ConvertToFloat32Int32x8", argLength: 1},
261 {name: "ConvertToFloat32Int32x16", argLength: 1},
262 {name: "ConvertToFloat32Int64x2", argLength: 1},
263 {name: "ConvertToFloat32Int64x4", argLength: 1},
264 {name: "ConvertToFloat32Int64x8", argLength: 1},
265 {name: "ConvertToFloat32Uint32x4", argLength: 1},
266 {name: "ConvertToFloat32Uint32x8", argLength: 1},
267 {name: "ConvertToFloat32Uint32x16", argLength: 1},
268 {name: "ConvertToFloat32Uint64x2", argLength: 1},
269 {name: "ConvertToFloat32Uint64x4", argLength: 1},
270 {name: "ConvertToFloat32Uint64x8", argLength: 1},
271 {name: "ConvertToFloat64Float32x4", argLength: 1},
272 {name: "ConvertToFloat64Float32x8", argLength: 1},
273 {name: "ConvertToFloat64Int32x4", argLength: 1},
274 {name: "ConvertToFloat64Int32x8", argLength: 1},
275 {name: "ConvertToFloat64Int64x2", argLength: 1},
276 {name: "ConvertToFloat64Int64x4", argLength: 1},
277 {name: "ConvertToFloat64Int64x8", argLength: 1},
278 {name: "ConvertToFloat64Uint32x4", argLength: 1},
279 {name: "ConvertToFloat64Uint32x8", argLength: 1},
280 {name: "ConvertToFloat64Uint64x2", argLength: 1},
281 {name: "ConvertToFloat64Uint64x4", argLength: 1},
282 {name: "ConvertToFloat64Uint64x8", argLength: 1},
283 {name: "ConvertToInt32Float32x4", argLength: 1},
284 {name: "ConvertToInt32Float32x8", argLength: 1},
285 {name: "ConvertToInt32Float32x16", argLength: 1},
286 {name: "ConvertToInt32Float64x2", argLength: 1},
287 {name: "ConvertToInt32Float64x4", argLength: 1},
288 {name: "ConvertToInt32Float64x8", argLength: 1},
289 {name: "ConvertToInt64Float32x4", argLength: 1},
290 {name: "ConvertToInt64Float32x8", argLength: 1},
291 {name: "ConvertToInt64Float64x2", argLength: 1},
292 {name: "ConvertToInt64Float64x4", argLength: 1},
293 {name: "ConvertToInt64Float64x8", argLength: 1},
294 {name: "ConvertToUint32Float32x4", argLength: 1},
295 {name: "ConvertToUint32Float32x8", argLength: 1},
296 {name: "ConvertToUint32Float32x16", argLength: 1},
297 {name: "ConvertToUint32Float64x2", argLength: 1},
298 {name: "ConvertToUint32Float64x4", argLength: 1},
299 {name: "ConvertToUint32Float64x8", argLength: 1},
300 {name: "ConvertToUint64Float32x4", argLength: 1},
301 {name: "ConvertToUint64Float32x8", argLength: 1},
302 {name: "ConvertToUint64Float64x2", argLength: 1},
303 {name: "ConvertToUint64Float64x4", argLength: 1},
304 {name: "ConvertToUint64Float64x8", argLength: 1},
305 {name: "DivFloat32x4", argLength: 2},
306 {name: "DivFloat32x8", argLength: 2},
307 {name: "DivFloat32x16", argLength: 2},
308 {name: "DivFloat64x2", argLength: 2},
309 {name: "DivFloat64x4", argLength: 2},
310 {name: "DivFloat64x8", argLength: 2},
311 {name: "DotProductPairsInt16x8", argLength: 2},
312 {name: "DotProductPairsInt16x16", argLength: 2},
313 {name: "DotProductPairsInt16x32", argLength: 2},
314 {name: "DotProductPairsSaturatedUint8x16", argLength: 2},
315 {name: "DotProductPairsSaturatedUint8x32", argLength: 2},
316 {name: "DotProductPairsSaturatedUint8x64", argLength: 2},
317 {name: "EqualFloat32x4", argLength: 2, commutative: true},
318 {name: "EqualFloat32x8", argLength: 2, commutative: true},
319 {name: "EqualFloat32x16", argLength: 2, commutative: true},
320 {name: "EqualFloat64x2", argLength: 2, commutative: true},
321 {name: "EqualFloat64x4", argLength: 2, commutative: true},
322 {name: "EqualFloat64x8", argLength: 2, commutative: true},
323 {name: "EqualInt8x16", argLength: 2, commutative: true},
324 {name: "EqualInt8x32", argLength: 2, commutative: true},
325 {name: "EqualInt8x64", argLength: 2, commutative: true},
326 {name: "EqualInt16x8", argLength: 2, commutative: true},
327 {name: "EqualInt16x16", argLength: 2, commutative: true},
328 {name: "EqualInt16x32", argLength: 2, commutative: true},
329 {name: "EqualInt32x4", argLength: 2, commutative: true},
330 {name: "EqualInt32x8", argLength: 2, commutative: true},
331 {name: "EqualInt32x16", argLength: 2, commutative: true},
332 {name: "EqualInt64x2", argLength: 2, commutative: true},
333 {name: "EqualInt64x4", argLength: 2, commutative: true},
334 {name: "EqualInt64x8", argLength: 2, commutative: true},
335 {name: "EqualUint8x16", argLength: 2, commutative: true},
336 {name: "EqualUint8x32", argLength: 2, commutative: true},
337 {name: "EqualUint8x64", argLength: 2, commutative: true},
338 {name: "EqualUint16x8", argLength: 2, commutative: true},
339 {name: "EqualUint16x16", argLength: 2, commutative: true},
340 {name: "EqualUint16x32", argLength: 2, commutative: true},
341 {name: "EqualUint32x4", argLength: 2, commutative: true},
342 {name: "EqualUint32x8", argLength: 2, commutative: true},
343 {name: "EqualUint32x16", argLength: 2, commutative: true},
344 {name: "EqualUint64x2", argLength: 2, commutative: true},
345 {name: "EqualUint64x4", argLength: 2, commutative: true},
346 {name: "EqualUint64x8", argLength: 2, commutative: true},
347 {name: "ExpandFloat32x4", argLength: 2},
348 {name: "ExpandFloat32x8", argLength: 2},
349 {name: "ExpandFloat32x16", argLength: 2},
350 {name: "ExpandFloat64x2", argLength: 2},
351 {name: "ExpandFloat64x4", argLength: 2},
352 {name: "ExpandFloat64x8", argLength: 2},
353 {name: "ExpandInt8x16", argLength: 2},
354 {name: "ExpandInt8x32", argLength: 2},
355 {name: "ExpandInt8x64", argLength: 2},
356 {name: "ExpandInt16x8", argLength: 2},
357 {name: "ExpandInt16x16", argLength: 2},
358 {name: "ExpandInt16x32", argLength: 2},
359 {name: "ExpandInt32x4", argLength: 2},
360 {name: "ExpandInt32x8", argLength: 2},
361 {name: "ExpandInt32x16", argLength: 2},
362 {name: "ExpandInt64x2", argLength: 2},
363 {name: "ExpandInt64x4", argLength: 2},
364 {name: "ExpandInt64x8", argLength: 2},
365 {name: "ExpandUint8x16", argLength: 2},
366 {name: "ExpandUint8x32", argLength: 2},
367 {name: "ExpandUint8x64", argLength: 2},
368 {name: "ExpandUint16x8", argLength: 2},
369 {name: "ExpandUint16x16", argLength: 2},
370 {name: "ExpandUint16x32", argLength: 2},
371 {name: "ExpandUint32x4", argLength: 2},
372 {name: "ExpandUint32x8", argLength: 2},
373 {name: "ExpandUint32x16", argLength: 2},
374 {name: "ExpandUint64x2", argLength: 2},
375 {name: "ExpandUint64x4", argLength: 2},
376 {name: "ExpandUint64x8", argLength: 2},
377 {name: "ExtendLo2ToInt64Int8x16", argLength: 1},
378 {name: "ExtendLo2ToInt64Int16x8", argLength: 1},
379 {name: "ExtendLo2ToInt64Int32x4", argLength: 1},
380 {name: "ExtendLo2ToUint64Uint8x16", argLength: 1},
381 {name: "ExtendLo2ToUint64Uint16x8", argLength: 1},
382 {name: "ExtendLo2ToUint64Uint32x4", argLength: 1},
383 {name: "ExtendLo4ToInt32Int8x16", argLength: 1},
384 {name: "ExtendLo4ToInt32Int16x8", argLength: 1},
385 {name: "ExtendLo4ToInt64Int8x16", argLength: 1},
386 {name: "ExtendLo4ToInt64Int16x8", argLength: 1},
387 {name: "ExtendLo4ToUint32Uint8x16", argLength: 1},
388 {name: "ExtendLo4ToUint32Uint16x8", argLength: 1},
389 {name: "ExtendLo4ToUint64Uint8x16", argLength: 1},
390 {name: "ExtendLo4ToUint64Uint16x8", argLength: 1},
391 {name: "ExtendLo8ToInt16Int8x16", argLength: 1},
392 {name: "ExtendLo8ToInt32Int8x16", argLength: 1},
393 {name: "ExtendLo8ToInt64Int8x16", argLength: 1},
394 {name: "ExtendLo8ToUint16Uint8x16", argLength: 1},
395 {name: "ExtendLo8ToUint32Uint8x16", argLength: 1},
396 {name: "ExtendLo8ToUint64Uint8x16", argLength: 1},
397 {name: "ExtendToInt16Int8x16", argLength: 1},
398 {name: "ExtendToInt16Int8x32", argLength: 1},
399 {name: "ExtendToInt32Int8x16", argLength: 1},
400 {name: "ExtendToInt32Int16x8", argLength: 1},
401 {name: "ExtendToInt32Int16x16", argLength: 1},
402 {name: "ExtendToInt64Int16x8", argLength: 1},
403 {name: "ExtendToInt64Int32x4", argLength: 1},
404 {name: "ExtendToInt64Int32x8", argLength: 1},
405 {name: "ExtendToUint16Uint8x16", argLength: 1},
406 {name: "ExtendToUint16Uint8x32", argLength: 1},
407 {name: "ExtendToUint32Uint8x16", argLength: 1},
408 {name: "ExtendToUint32Uint16x8", argLength: 1},
409 {name: "ExtendToUint32Uint16x16", argLength: 1},
410 {name: "ExtendToUint64Uint16x8", argLength: 1},
411 {name: "ExtendToUint64Uint32x4", argLength: 1},
412 {name: "ExtendToUint64Uint32x8", argLength: 1},
413 {name: "FloorFloat32x4", argLength: 1},
414 {name: "FloorFloat32x8", argLength: 1},
415 {name: "FloorFloat64x2", argLength: 1},
416 {name: "FloorFloat64x4", argLength: 1},
417 {name: "FloorScaledFloat32x4", argLength: 1, aux: "UInt8"},
418 {name: "FloorScaledFloat32x8", argLength: 1, aux: "UInt8"},
419 {name: "FloorScaledFloat32x16", argLength: 1, aux: "UInt8"},
420 {name: "FloorScaledFloat64x2", argLength: 1, aux: "UInt8"},
421 {name: "FloorScaledFloat64x4", argLength: 1, aux: "UInt8"},
422 {name: "FloorScaledFloat64x8", argLength: 1, aux: "UInt8"},
423 {name: "FloorScaledResidueFloat32x4", argLength: 1, aux: "UInt8"},
424 {name: "FloorScaledResidueFloat32x8", argLength: 1, aux: "UInt8"},
425 {name: "FloorScaledResidueFloat32x16", argLength: 1, aux: "UInt8"},
426 {name: "FloorScaledResidueFloat64x2", argLength: 1, aux: "UInt8"},
427 {name: "FloorScaledResidueFloat64x4", argLength: 1, aux: "UInt8"},
428 {name: "FloorScaledResidueFloat64x8", argLength: 1, aux: "UInt8"},
429 {name: "GaloisFieldAffineTransformInverseUint8x16", argLength: 2, aux: "UInt8"},
430 {name: "GaloisFieldAffineTransformInverseUint8x32", argLength: 2, aux: "UInt8"},
431 {name: "GaloisFieldAffineTransformInverseUint8x64", argLength: 2, aux: "UInt8"},
432 {name: "GaloisFieldAffineTransformUint8x16", argLength: 2, aux: "UInt8"},
433 {name: "GaloisFieldAffineTransformUint8x32", argLength: 2, aux: "UInt8"},
434 {name: "GaloisFieldAffineTransformUint8x64", argLength: 2, aux: "UInt8"},
435 {name: "GaloisFieldMulUint8x16", argLength: 2},
436 {name: "GaloisFieldMulUint8x32", argLength: 2},
437 {name: "GaloisFieldMulUint8x64", argLength: 2},
438 {name: "GetElemFloat32x4", argLength: 1, aux: "UInt8"},
439 {name: "GetElemFloat64x2", argLength: 1, aux: "UInt8"},
440 {name: "GetElemInt8x16", argLength: 1, aux: "UInt8"},
441 {name: "GetElemInt16x8", argLength: 1, aux: "UInt8"},
442 {name: "GetElemInt32x4", argLength: 1, aux: "UInt8"},
443 {name: "GetElemInt64x2", argLength: 1, aux: "UInt8"},
444 {name: "GetElemUint8x16", argLength: 1, aux: "UInt8"},
445 {name: "GetElemUint16x8", argLength: 1, aux: "UInt8"},
446 {name: "GetElemUint32x4", argLength: 1, aux: "UInt8"},
447 {name: "GetElemUint64x2", argLength: 1, aux: "UInt8"},
448 {name: "GetHiFloat32x8", argLength: 1},
449 {name: "GetHiFloat32x16", argLength: 1},
450 {name: "GetHiFloat64x4", argLength: 1},
451 {name: "GetHiFloat64x8", argLength: 1},
452 {name: "GetHiInt8x32", argLength: 1},
453 {name: "GetHiInt8x64", argLength: 1},
454 {name: "GetHiInt16x16", argLength: 1},
455 {name: "GetHiInt16x32", argLength: 1},
456 {name: "GetHiInt32x8", argLength: 1},
457 {name: "GetHiInt32x16", argLength: 1},
458 {name: "GetHiInt64x4", argLength: 1},
459 {name: "GetHiInt64x8", argLength: 1},
460 {name: "GetHiUint8x32", argLength: 1},
461 {name: "GetHiUint8x64", argLength: 1},
462 {name: "GetHiUint16x16", argLength: 1},
463 {name: "GetHiUint16x32", argLength: 1},
464 {name: "GetHiUint32x8", argLength: 1},
465 {name: "GetHiUint32x16", argLength: 1},
466 {name: "GetHiUint64x4", argLength: 1},
467 {name: "GetHiUint64x8", argLength: 1},
468 {name: "GetLoFloat32x8", argLength: 1},
469 {name: "GetLoFloat32x16", argLength: 1},
470 {name: "GetLoFloat64x4", argLength: 1},
471 {name: "GetLoFloat64x8", argLength: 1},
472 {name: "GetLoInt8x32", argLength: 1},
473 {name: "GetLoInt8x64", argLength: 1},
474 {name: "GetLoInt16x16", argLength: 1},
475 {name: "GetLoInt16x32", argLength: 1},
476 {name: "GetLoInt32x8", argLength: 1},
477 {name: "GetLoInt32x16", argLength: 1},
478 {name: "GetLoInt64x4", argLength: 1},
479 {name: "GetLoInt64x8", argLength: 1},
480 {name: "GetLoUint8x32", argLength: 1},
481 {name: "GetLoUint8x64", argLength: 1},
482 {name: "GetLoUint16x16", argLength: 1},
483 {name: "GetLoUint16x32", argLength: 1},
484 {name: "GetLoUint32x8", argLength: 1},
485 {name: "GetLoUint32x16", argLength: 1},
486 {name: "GetLoUint64x4", argLength: 1},
487 {name: "GetLoUint64x8", argLength: 1},
488 {name: "GreaterEqualFloat32x4", argLength: 2},
489 {name: "GreaterEqualFloat32x8", argLength: 2},
490 {name: "GreaterEqualFloat32x16", argLength: 2},
491 {name: "GreaterEqualFloat64x2", argLength: 2},
492 {name: "GreaterEqualFloat64x4", argLength: 2},
493 {name: "GreaterEqualFloat64x8", argLength: 2},
494 {name: "GreaterEqualInt8x64", argLength: 2},
495 {name: "GreaterEqualInt16x32", argLength: 2},
496 {name: "GreaterEqualInt32x16", argLength: 2},
497 {name: "GreaterEqualInt64x8", argLength: 2},
498 {name: "GreaterEqualUint8x64", argLength: 2},
499 {name: "GreaterEqualUint16x32", argLength: 2},
500 {name: "GreaterEqualUint32x16", argLength: 2},
501 {name: "GreaterEqualUint64x8", argLength: 2},
502 {name: "GreaterFloat32x4", argLength: 2},
503 {name: "GreaterFloat32x8", argLength: 2},
504 {name: "GreaterFloat32x16", argLength: 2},
505 {name: "GreaterFloat64x2", argLength: 2},
506 {name: "GreaterFloat64x4", argLength: 2},
507 {name: "GreaterFloat64x8", argLength: 2},
508 {name: "GreaterInt8x16", argLength: 2},
509 {name: "GreaterInt8x32", argLength: 2},
510 {name: "GreaterInt8x64", argLength: 2},
511 {name: "GreaterInt16x8", argLength: 2},
512 {name: "GreaterInt16x16", argLength: 2},
513 {name: "GreaterInt16x32", argLength: 2},
514 {name: "GreaterInt32x4", argLength: 2},
515 {name: "GreaterInt32x8", argLength: 2},
516 {name: "GreaterInt32x16", argLength: 2},
517 {name: "GreaterInt64x2", argLength: 2},
518 {name: "GreaterInt64x4", argLength: 2},
519 {name: "GreaterInt64x8", argLength: 2},
520 {name: "GreaterUint8x64", argLength: 2},
521 {name: "GreaterUint16x32", argLength: 2},
522 {name: "GreaterUint32x16", argLength: 2},
523 {name: "GreaterUint64x8", argLength: 2},
524 {name: "InterleaveHiGroupedInt8x32", argLength: 2},
525 {name: "InterleaveHiGroupedInt8x64", argLength: 2},
526 {name: "InterleaveHiGroupedInt16x16", argLength: 2},
527 {name: "InterleaveHiGroupedInt16x32", argLength: 2},
528 {name: "InterleaveHiGroupedInt32x8", argLength: 2},
529 {name: "InterleaveHiGroupedInt32x16", argLength: 2},
530 {name: "InterleaveHiGroupedInt64x4", argLength: 2},
531 {name: "InterleaveHiGroupedInt64x8", argLength: 2},
532 {name: "InterleaveHiGroupedUint8x32", argLength: 2},
533 {name: "InterleaveHiGroupedUint8x64", argLength: 2},
534 {name: "InterleaveHiGroupedUint16x16", argLength: 2},
535 {name: "InterleaveHiGroupedUint16x32", argLength: 2},
536 {name: "InterleaveHiGroupedUint32x8", argLength: 2},
537 {name: "InterleaveHiGroupedUint32x16", argLength: 2},
538 {name: "InterleaveHiGroupedUint64x4", argLength: 2},
539 {name: "InterleaveHiGroupedUint64x8", argLength: 2},
540 {name: "InterleaveHiInt8x16", argLength: 2},
541 {name: "InterleaveHiInt16x8", argLength: 2},
542 {name: "InterleaveHiInt32x4", argLength: 2},
543 {name: "InterleaveHiInt64x2", argLength: 2},
544 {name: "InterleaveHiUint8x16", argLength: 2},
545 {name: "InterleaveHiUint16x8", argLength: 2},
546 {name: "InterleaveHiUint32x4", argLength: 2},
547 {name: "InterleaveHiUint64x2", argLength: 2},
548 {name: "InterleaveLoGroupedInt8x32", argLength: 2},
549 {name: "InterleaveLoGroupedInt8x64", argLength: 2},
550 {name: "InterleaveLoGroupedInt16x16", argLength: 2},
551 {name: "InterleaveLoGroupedInt16x32", argLength: 2},
552 {name: "InterleaveLoGroupedInt32x8", argLength: 2},
553 {name: "InterleaveLoGroupedInt32x16", argLength: 2},
554 {name: "InterleaveLoGroupedInt64x4", argLength: 2},
555 {name: "InterleaveLoGroupedInt64x8", argLength: 2},
556 {name: "InterleaveLoGroupedUint8x32", argLength: 2},
557 {name: "InterleaveLoGroupedUint8x64", argLength: 2},
558 {name: "InterleaveLoGroupedUint16x16", argLength: 2},
559 {name: "InterleaveLoGroupedUint16x32", argLength: 2},
560 {name: "InterleaveLoGroupedUint32x8", argLength: 2},
561 {name: "InterleaveLoGroupedUint32x16", argLength: 2},
562 {name: "InterleaveLoGroupedUint64x4", argLength: 2},
563 {name: "InterleaveLoGroupedUint64x8", argLength: 2},
564 {name: "InterleaveLoInt8x16", argLength: 2},
565 {name: "InterleaveLoInt16x8", argLength: 2},
566 {name: "InterleaveLoInt32x4", argLength: 2},
567 {name: "InterleaveLoInt64x2", argLength: 2},
568 {name: "InterleaveLoUint8x16", argLength: 2},
569 {name: "InterleaveLoUint16x8", argLength: 2},
570 {name: "InterleaveLoUint32x4", argLength: 2},
571 {name: "InterleaveLoUint64x2", argLength: 2},
572 {name: "LeadingZerosInt32x4", argLength: 1},
573 {name: "LeadingZerosInt32x8", argLength: 1},
574 {name: "LeadingZerosInt32x16", argLength: 1},
575 {name: "LeadingZerosInt64x2", argLength: 1},
576 {name: "LeadingZerosInt64x4", argLength: 1},
577 {name: "LeadingZerosInt64x8", argLength: 1},
578 {name: "LeadingZerosUint32x4", argLength: 1},
579 {name: "LeadingZerosUint32x8", argLength: 1},
580 {name: "LeadingZerosUint32x16", argLength: 1},
581 {name: "LeadingZerosUint64x2", argLength: 1},
582 {name: "LeadingZerosUint64x4", argLength: 1},
583 {name: "LeadingZerosUint64x8", argLength: 1},
584 {name: "LessEqualFloat32x4", argLength: 2},
585 {name: "LessEqualFloat32x8", argLength: 2},
586 {name: "LessEqualFloat32x16", argLength: 2},
587 {name: "LessEqualFloat64x2", argLength: 2},
588 {name: "LessEqualFloat64x4", argLength: 2},
589 {name: "LessEqualFloat64x8", argLength: 2},
590 {name: "LessEqualInt8x64", argLength: 2},
591 {name: "LessEqualInt16x32", argLength: 2},
592 {name: "LessEqualInt32x16", argLength: 2},
593 {name: "LessEqualInt64x8", argLength: 2},
594 {name: "LessEqualUint8x64", argLength: 2},
595 {name: "LessEqualUint16x32", argLength: 2},
596 {name: "LessEqualUint32x16", argLength: 2},
597 {name: "LessEqualUint64x8", argLength: 2},
598 {name: "LessFloat32x4", argLength: 2},
599 {name: "LessFloat32x8", argLength: 2},
600 {name: "LessFloat32x16", argLength: 2},
601 {name: "LessFloat64x2", argLength: 2},
602 {name: "LessFloat64x4", argLength: 2},
603 {name: "LessFloat64x8", argLength: 2},
604 {name: "LessInt8x64", argLength: 2},
605 {name: "LessInt16x32", argLength: 2},
606 {name: "LessInt32x16", argLength: 2},
607 {name: "LessInt64x8", argLength: 2},
608 {name: "LessUint8x64", argLength: 2},
609 {name: "LessUint16x32", argLength: 2},
610 {name: "LessUint32x16", argLength: 2},
611 {name: "LessUint64x8", argLength: 2},
612 {name: "MaxFloat32x4", argLength: 2},
613 {name: "MaxFloat32x8", argLength: 2},
614 {name: "MaxFloat32x16", argLength: 2},
615 {name: "MaxFloat64x2", argLength: 2},
616 {name: "MaxFloat64x4", argLength: 2},
617 {name: "MaxFloat64x8", argLength: 2},
618 {name: "MaxInt8x16", argLength: 2, commutative: true},
619 {name: "MaxInt8x32", argLength: 2, commutative: true},
620 {name: "MaxInt8x64", argLength: 2, commutative: true},
621 {name: "MaxInt16x8", argLength: 2, commutative: true},
622 {name: "MaxInt16x16", argLength: 2, commutative: true},
623 {name: "MaxInt16x32", argLength: 2, commutative: true},
624 {name: "MaxInt32x4", argLength: 2, commutative: true},
625 {name: "MaxInt32x8", argLength: 2, commutative: true},
626 {name: "MaxInt32x16", argLength: 2, commutative: true},
627 {name: "MaxInt64x2", argLength: 2, commutative: true},
628 {name: "MaxInt64x4", argLength: 2, commutative: true},
629 {name: "MaxInt64x8", argLength: 2, commutative: true},
630 {name: "MaxUint8x16", argLength: 2, commutative: true},
631 {name: "MaxUint8x32", argLength: 2, commutative: true},
632 {name: "MaxUint8x64", argLength: 2, commutative: true},
633 {name: "MaxUint16x8", argLength: 2, commutative: true},
634 {name: "MaxUint16x16", argLength: 2, commutative: true},
635 {name: "MaxUint16x32", argLength: 2, commutative: true},
636 {name: "MaxUint32x4", argLength: 2, commutative: true},
637 {name: "MaxUint32x8", argLength: 2, commutative: true},
638 {name: "MaxUint32x16", argLength: 2, commutative: true},
639 {name: "MaxUint64x2", argLength: 2, commutative: true},
640 {name: "MaxUint64x4", argLength: 2, commutative: true},
641 {name: "MaxUint64x8", argLength: 2, commutative: true},
642 {name: "MinFloat32x4", argLength: 2},
643 {name: "MinFloat32x8", argLength: 2},
644 {name: "MinFloat32x16", argLength: 2},
645 {name: "MinFloat64x2", argLength: 2},
646 {name: "MinFloat64x4", argLength: 2},
647 {name: "MinFloat64x8", argLength: 2},
648 {name: "MinInt8x16", argLength: 2, commutative: true},
649 {name: "MinInt8x32", argLength: 2, commutative: true},
650 {name: "MinInt8x64", argLength: 2, commutative: true},
651 {name: "MinInt16x8", argLength: 2, commutative: true},
652 {name: "MinInt16x16", argLength: 2, commutative: true},
653 {name: "MinInt16x32", argLength: 2, commutative: true},
654 {name: "MinInt32x4", argLength: 2, commutative: true},
655 {name: "MinInt32x8", argLength: 2, commutative: true},
656 {name: "MinInt32x16", argLength: 2, commutative: true},
657 {name: "MinInt64x2", argLength: 2, commutative: true},
658 {name: "MinInt64x4", argLength: 2, commutative: true},
659 {name: "MinInt64x8", argLength: 2, commutative: true},
660 {name: "MinUint8x16", argLength: 2, commutative: true},
661 {name: "MinUint8x32", argLength: 2, commutative: true},
662 {name: "MinUint8x64", argLength: 2, commutative: true},
663 {name: "MinUint16x8", argLength: 2, commutative: true},
664 {name: "MinUint16x16", argLength: 2, commutative: true},
665 {name: "MinUint16x32", argLength: 2, commutative: true},
666 {name: "MinUint32x4", argLength: 2, commutative: true},
667 {name: "MinUint32x8", argLength: 2, commutative: true},
668 {name: "MinUint32x16", argLength: 2, commutative: true},
669 {name: "MinUint64x2", argLength: 2, commutative: true},
670 {name: "MinUint64x4", argLength: 2, commutative: true},
671 {name: "MinUint64x8", argLength: 2, commutative: true},
672 {name: "MulAddEvenSubOddFloat32x4", argLength: 3},
673 {name: "MulAddEvenSubOddFloat32x8", argLength: 3},
674 {name: "MulAddEvenSubOddFloat32x16", argLength: 3},
675 {name: "MulAddEvenSubOddFloat64x2", argLength: 3},
676 {name: "MulAddEvenSubOddFloat64x4", argLength: 3},
677 {name: "MulAddEvenSubOddFloat64x8", argLength: 3},
678 {name: "MulAddFloat32x4", argLength: 3},
679 {name: "MulAddFloat32x8", argLength: 3},
680 {name: "MulAddFloat32x16", argLength: 3},
681 {name: "MulAddFloat64x2", argLength: 3},
682 {name: "MulAddFloat64x4", argLength: 3},
683 {name: "MulAddFloat64x8", argLength: 3},
684 {name: "MulAddOddSubEvenFloat32x4", argLength: 3},
685 {name: "MulAddOddSubEvenFloat32x8", argLength: 3},
686 {name: "MulAddOddSubEvenFloat32x16", argLength: 3},
687 {name: "MulAddOddSubEvenFloat64x2", argLength: 3},
688 {name: "MulAddOddSubEvenFloat64x4", argLength: 3},
689 {name: "MulAddOddSubEvenFloat64x8", argLength: 3},
690 {name: "MulFloat32x4", argLength: 2, commutative: true},
691 {name: "MulFloat32x8", argLength: 2, commutative: true},
692 {name: "MulFloat32x16", argLength: 2, commutative: true},
693 {name: "MulFloat64x2", argLength: 2, commutative: true},
694 {name: "MulFloat64x4", argLength: 2, commutative: true},
695 {name: "MulFloat64x8", argLength: 2, commutative: true},
696 {name: "MulHighInt16x8", argLength: 2, commutative: true},
697 {name: "MulHighInt16x16", argLength: 2, commutative: true},
698 {name: "MulHighInt16x32", argLength: 2, commutative: true},
699 {name: "MulHighUint16x8", argLength: 2, commutative: true},
700 {name: "MulHighUint16x16", argLength: 2, commutative: true},
701 {name: "MulHighUint16x32", argLength: 2, commutative: true},
702 {name: "MulInt16x8", argLength: 2, commutative: true},
703 {name: "MulInt16x16", argLength: 2, commutative: true},
704 {name: "MulInt16x32", argLength: 2, commutative: true},
705 {name: "MulInt32x4", argLength: 2, commutative: true},
706 {name: "MulInt32x8", argLength: 2, commutative: true},
707 {name: "MulInt32x16", argLength: 2, commutative: true},
708 {name: "MulInt64x2", argLength: 2, commutative: true},
709 {name: "MulInt64x4", argLength: 2, commutative: true},
710 {name: "MulInt64x8", argLength: 2, commutative: true},
711 {name: "MulSignInt8x16", argLength: 2},
712 {name: "MulSignInt8x32", argLength: 2},
713 {name: "MulSignInt16x8", argLength: 2},
714 {name: "MulSignInt16x16", argLength: 2},
715 {name: "MulSignInt32x4", argLength: 2},
716 {name: "MulSignInt32x8", argLength: 2},
717 {name: "MulUint16x8", argLength: 2, commutative: true},
718 {name: "MulUint16x16", argLength: 2, commutative: true},
719 {name: "MulUint16x32", argLength: 2, commutative: true},
720 {name: "MulUint32x4", argLength: 2, commutative: true},
721 {name: "MulUint32x8", argLength: 2, commutative: true},
722 {name: "MulUint32x16", argLength: 2, commutative: true},
723 {name: "MulUint64x2", argLength: 2, commutative: true},
724 {name: "MulUint64x4", argLength: 2, commutative: true},
725 {name: "MulUint64x8", argLength: 2, commutative: true},
726 {name: "MulWidenEvenInt32x4", argLength: 2, commutative: true},
727 {name: "MulWidenEvenInt32x8", argLength: 2, commutative: true},
728 {name: "MulWidenEvenUint32x4", argLength: 2, commutative: true},
729 {name: "MulWidenEvenUint32x8", argLength: 2, commutative: true},
730 {name: "NotEqualFloat32x4", argLength: 2, commutative: true},
731 {name: "NotEqualFloat32x8", argLength: 2, commutative: true},
732 {name: "NotEqualFloat32x16", argLength: 2, commutative: true},
733 {name: "NotEqualFloat64x2", argLength: 2, commutative: true},
734 {name: "NotEqualFloat64x4", argLength: 2, commutative: true},
735 {name: "NotEqualFloat64x8", argLength: 2, commutative: true},
736 {name: "NotEqualInt8x64", argLength: 2, commutative: true},
737 {name: "NotEqualInt16x32", argLength: 2, commutative: true},
738 {name: "NotEqualInt32x16", argLength: 2, commutative: true},
739 {name: "NotEqualInt64x8", argLength: 2, commutative: true},
740 {name: "NotEqualUint8x64", argLength: 2, commutative: true},
741 {name: "NotEqualUint16x32", argLength: 2, commutative: true},
742 {name: "NotEqualUint32x16", argLength: 2, commutative: true},
743 {name: "NotEqualUint64x8", argLength: 2, commutative: true},
744 {name: "OnesCountInt16x8", argLength: 1},
745 {name: "OnesCountInt16x16", argLength: 1},
746 {name: "OnesCountInt16x32", argLength: 1},
747 {name: "OnesCountInt32x4", argLength: 1},
748 {name: "OnesCountInt32x8", argLength: 1},
749 {name: "OnesCountInt32x16", argLength: 1},
750 {name: "OnesCountInt64x2", argLength: 1},
751 {name: "OnesCountInt64x4", argLength: 1},
752 {name: "OnesCountInt64x8", argLength: 1},
753 {name: "OnesCountUint16x8", argLength: 1},
754 {name: "OnesCountUint16x16", argLength: 1},
755 {name: "OnesCountUint16x32", argLength: 1},
756 {name: "OnesCountUint32x4", argLength: 1},
757 {name: "OnesCountUint32x8", argLength: 1},
758 {name: "OnesCountUint32x16", argLength: 1},
759 {name: "OnesCountUint64x2", argLength: 1},
760 {name: "OnesCountUint64x4", argLength: 1},
761 {name: "OnesCountUint64x8", argLength: 1},
762 {name: "OrInt8x16", argLength: 2, commutative: true},
763 {name: "OrInt8x32", argLength: 2, commutative: true},
764 {name: "OrInt8x64", argLength: 2, commutative: true},
765 {name: "OrInt16x8", argLength: 2, commutative: true},
766 {name: "OrInt16x16", argLength: 2, commutative: true},
767 {name: "OrInt16x32", argLength: 2, commutative: true},
768 {name: "OrInt32x4", argLength: 2, commutative: true},
769 {name: "OrInt32x8", argLength: 2, commutative: true},
770 {name: "OrInt32x16", argLength: 2, commutative: true},
771 {name: "OrInt64x2", argLength: 2, commutative: true},
772 {name: "OrInt64x4", argLength: 2, commutative: true},
773 {name: "OrInt64x8", argLength: 2, commutative: true},
774 {name: "OrUint8x16", argLength: 2, commutative: true},
775 {name: "OrUint8x32", argLength: 2, commutative: true},
776 {name: "OrUint8x64", argLength: 2, commutative: true},
777 {name: "OrUint16x8", argLength: 2, commutative: true},
778 {name: "OrUint16x16", argLength: 2, commutative: true},
779 {name: "OrUint16x32", argLength: 2, commutative: true},
780 {name: "OrUint32x4", argLength: 2, commutative: true},
781 {name: "OrUint32x8", argLength: 2, commutative: true},
782 {name: "OrUint32x16", argLength: 2, commutative: true},
783 {name: "OrUint64x2", argLength: 2, commutative: true},
784 {name: "OrUint64x4", argLength: 2, commutative: true},
785 {name: "OrUint64x8", argLength: 2, commutative: true},
786 {name: "PermuteFloat32x8", argLength: 2},
787 {name: "PermuteFloat32x16", argLength: 2},
788 {name: "PermuteFloat64x4", argLength: 2},
789 {name: "PermuteFloat64x8", argLength: 2},
790 {name: "PermuteInt8x16", argLength: 2},
791 {name: "PermuteInt8x32", argLength: 2},
792 {name: "PermuteInt8x64", argLength: 2},
793 {name: "PermuteInt16x8", argLength: 2},
794 {name: "PermuteInt16x16", argLength: 2},
795 {name: "PermuteInt16x32", argLength: 2},
796 {name: "PermuteInt32x8", argLength: 2},
797 {name: "PermuteInt32x16", argLength: 2},
798 {name: "PermuteInt64x4", argLength: 2},
799 {name: "PermuteInt64x8", argLength: 2},
800 {name: "PermuteOrZeroGroupedInt8x32", argLength: 2},
801 {name: "PermuteOrZeroGroupedInt8x64", argLength: 2},
802 {name: "PermuteOrZeroGroupedUint8x32", argLength: 2},
803 {name: "PermuteOrZeroGroupedUint8x64", argLength: 2},
804 {name: "PermuteOrZeroInt8x16", argLength: 2},
805 {name: "PermuteOrZeroUint8x16", argLength: 2},
806 {name: "PermuteUint8x16", argLength: 2},
807 {name: "PermuteUint8x32", argLength: 2},
808 {name: "PermuteUint8x64", argLength: 2},
809 {name: "PermuteUint16x8", argLength: 2},
810 {name: "PermuteUint16x16", argLength: 2},
811 {name: "PermuteUint16x32", argLength: 2},
812 {name: "PermuteUint32x8", argLength: 2},
813 {name: "PermuteUint32x16", argLength: 2},
814 {name: "PermuteUint64x4", argLength: 2},
815 {name: "PermuteUint64x8", argLength: 2},
816 {name: "ReciprocalFloat32x4", argLength: 1},
817 {name: "ReciprocalFloat32x8", argLength: 1},
818 {name: "ReciprocalFloat32x16", argLength: 1},
819 {name: "ReciprocalFloat64x2", argLength: 1},
820 {name: "ReciprocalFloat64x4", argLength: 1},
821 {name: "ReciprocalFloat64x8", argLength: 1},
822 {name: "ReciprocalSqrtFloat32x4", argLength: 1},
823 {name: "ReciprocalSqrtFloat32x8", argLength: 1},
824 {name: "ReciprocalSqrtFloat32x16", argLength: 1},
825 {name: "ReciprocalSqrtFloat64x2", argLength: 1},
826 {name: "ReciprocalSqrtFloat64x4", argLength: 1},
827 {name: "ReciprocalSqrtFloat64x8", argLength: 1},
828 {name: "RotateLeftUint32x4", argLength: 2},
829 {name: "RotateLeftUint32x8", argLength: 2},
830 {name: "RotateLeftUint32x16", argLength: 2},
831 {name: "RotateLeftUint64x2", argLength: 2},
832 {name: "RotateLeftUint64x4", argLength: 2},
833 {name: "RotateLeftUint64x8", argLength: 2},
834 {name: "RotateRightUint32x4", argLength: 2},
835 {name: "RotateRightUint32x8", argLength: 2},
836 {name: "RotateRightUint32x16", argLength: 2},
837 {name: "RotateRightUint64x2", argLength: 2},
838 {name: "RotateRightUint64x4", argLength: 2},
839 {name: "RotateRightUint64x8", argLength: 2},
840 {name: "RoundFloat32x4", argLength: 1},
841 {name: "RoundFloat32x8", argLength: 1},
842 {name: "RoundFloat64x2", argLength: 1},
843 {name: "RoundFloat64x4", argLength: 1},
844 {name: "RoundScaledFloat32x4", argLength: 1, aux: "UInt8"},
845 {name: "RoundScaledFloat32x8", argLength: 1, aux: "UInt8"},
846 {name: "RoundScaledFloat32x16", argLength: 1, aux: "UInt8"},
847 {name: "RoundScaledFloat64x2", argLength: 1, aux: "UInt8"},
848 {name: "RoundScaledFloat64x4", argLength: 1, aux: "UInt8"},
849 {name: "RoundScaledFloat64x8", argLength: 1, aux: "UInt8"},
850 {name: "RoundScaledResidueFloat32x4", argLength: 1, aux: "UInt8"},
851 {name: "RoundScaledResidueFloat32x8", argLength: 1, aux: "UInt8"},
852 {name: "RoundScaledResidueFloat32x16", argLength: 1, aux: "UInt8"},
853 {name: "RoundScaledResidueFloat64x2", argLength: 1, aux: "UInt8"},
854 {name: "RoundScaledResidueFloat64x4", argLength: 1, aux: "UInt8"},
855 {name: "RoundScaledResidueFloat64x8", argLength: 1, aux: "UInt8"},
856 {name: "SHA1FourRoundsUint32x4", argLength: 2, aux: "UInt8"},
857 {name: "SHA1Message1Uint32x4", argLength: 2},
858 {name: "SHA1Message2Uint32x4", argLength: 2},
859 {name: "SHA1NextEUint32x4", argLength: 2},
860 {name: "SHA256Message1Uint32x4", argLength: 2},
861 {name: "SHA256Message2Uint32x4", argLength: 2},
862 {name: "SHA256TwoRoundsUint32x4", argLength: 3},
863 {name: "SaturateToInt8Int16x8", argLength: 1},
864 {name: "SaturateToInt8Int16x16", argLength: 1},
865 {name: "SaturateToInt8Int16x32", argLength: 1},
866 {name: "SaturateToInt8Int32x4", argLength: 1},
867 {name: "SaturateToInt8Int32x8", argLength: 1},
868 {name: "SaturateToInt8Int32x16", argLength: 1},
869 {name: "SaturateToInt8Int64x2", argLength: 1},
870 {name: "SaturateToInt8Int64x4", argLength: 1},
871 {name: "SaturateToInt8Int64x8", argLength: 1},
872 {name: "SaturateToInt16Int32x4", argLength: 1},
873 {name: "SaturateToInt16Int32x8", argLength: 1},
874 {name: "SaturateToInt16Int32x16", argLength: 1},
875 {name: "SaturateToInt16Int64x2", argLength: 1},
876 {name: "SaturateToInt16Int64x4", argLength: 1},
877 {name: "SaturateToInt16Int64x8", argLength: 1},
878 {name: "SaturateToInt32Int64x2", argLength: 1},
879 {name: "SaturateToInt32Int64x4", argLength: 1},
880 {name: "SaturateToInt32Int64x8", argLength: 1},
881 {name: "SaturateToUint8Uint16x8", argLength: 1},
882 {name: "SaturateToUint8Uint16x16", argLength: 1},
883 {name: "SaturateToUint8Uint16x32", argLength: 1},
884 {name: "SaturateToUint8Uint32x4", argLength: 1},
885 {name: "SaturateToUint8Uint32x8", argLength: 1},
886 {name: "SaturateToUint8Uint32x16", argLength: 1},
887 {name: "SaturateToUint8Uint64x2", argLength: 1},
888 {name: "SaturateToUint8Uint64x4", argLength: 1},
889 {name: "SaturateToUint8Uint64x8", argLength: 1},
890 {name: "SaturateToUint16Uint32x4", argLength: 1},
891 {name: "SaturateToUint16Uint32x8", argLength: 1},
892 {name: "SaturateToUint16Uint32x16", argLength: 1},
893 {name: "SaturateToUint16Uint64x2", argLength: 1},
894 {name: "SaturateToUint16Uint64x4", argLength: 1},
895 {name: "SaturateToUint16Uint64x8", argLength: 1},
896 {name: "SaturateToUint32Uint64x2", argLength: 1},
897 {name: "SaturateToUint32Uint64x4", argLength: 1},
898 {name: "SaturateToUint32Uint64x8", argLength: 1},
899 {name: "ScaleFloat32x4", argLength: 2},
900 {name: "ScaleFloat32x8", argLength: 2},
901 {name: "ScaleFloat32x16", argLength: 2},
902 {name: "ScaleFloat64x2", argLength: 2},
903 {name: "ScaleFloat64x4", argLength: 2},
904 {name: "ScaleFloat64x8", argLength: 2},
905 {name: "SetElemFloat32x4", argLength: 2, aux: "UInt8"},
906 {name: "SetElemFloat64x2", argLength: 2, aux: "UInt8"},
907 {name: "SetElemInt8x16", argLength: 2, aux: "UInt8"},
908 {name: "SetElemInt16x8", argLength: 2, aux: "UInt8"},
909 {name: "SetElemInt32x4", argLength: 2, aux: "UInt8"},
910 {name: "SetElemInt64x2", argLength: 2, aux: "UInt8"},
911 {name: "SetElemUint8x16", argLength: 2, aux: "UInt8"},
912 {name: "SetElemUint16x8", argLength: 2, aux: "UInt8"},
913 {name: "SetElemUint32x4", argLength: 2, aux: "UInt8"},
914 {name: "SetElemUint64x2", argLength: 2, aux: "UInt8"},
915 {name: "SetHiFloat32x8", argLength: 2},
916 {name: "SetHiFloat32x16", argLength: 2},
917 {name: "SetHiFloat64x4", argLength: 2},
918 {name: "SetHiFloat64x8", argLength: 2},
919 {name: "SetHiInt8x32", argLength: 2},
920 {name: "SetHiInt8x64", argLength: 2},
921 {name: "SetHiInt16x16", argLength: 2},
922 {name: "SetHiInt16x32", argLength: 2},
923 {name: "SetHiInt32x8", argLength: 2},
924 {name: "SetHiInt32x16", argLength: 2},
925 {name: "SetHiInt64x4", argLength: 2},
926 {name: "SetHiInt64x8", argLength: 2},
927 {name: "SetHiUint8x32", argLength: 2},
928 {name: "SetHiUint8x64", argLength: 2},
929 {name: "SetHiUint16x16", argLength: 2},
930 {name: "SetHiUint16x32", argLength: 2},
931 {name: "SetHiUint32x8", argLength: 2},
932 {name: "SetHiUint32x16", argLength: 2},
933 {name: "SetHiUint64x4", argLength: 2},
934 {name: "SetHiUint64x8", argLength: 2},
935 {name: "SetLoFloat32x8", argLength: 2},
936 {name: "SetLoFloat32x16", argLength: 2},
937 {name: "SetLoFloat64x4", argLength: 2},
938 {name: "SetLoFloat64x8", argLength: 2},
939 {name: "SetLoInt8x32", argLength: 2},
940 {name: "SetLoInt8x64", argLength: 2},
941 {name: "SetLoInt16x16", argLength: 2},
942 {name: "SetLoInt16x32", argLength: 2},
943 {name: "SetLoInt32x8", argLength: 2},
944 {name: "SetLoInt32x16", argLength: 2},
945 {name: "SetLoInt64x4", argLength: 2},
946 {name: "SetLoInt64x8", argLength: 2},
947 {name: "SetLoUint8x32", argLength: 2},
948 {name: "SetLoUint8x64", argLength: 2},
949 {name: "SetLoUint16x16", argLength: 2},
950 {name: "SetLoUint16x32", argLength: 2},
951 {name: "SetLoUint32x8", argLength: 2},
952 {name: "SetLoUint32x16", argLength: 2},
953 {name: "SetLoUint64x4", argLength: 2},
954 {name: "SetLoUint64x8", argLength: 2},
955 {name: "ShiftAllLeftConcatMod16Int16x8", argLength: 2, aux: "UInt8"},
956 {name: "ShiftAllLeftConcatMod16Int16x16", argLength: 2, aux: "UInt8"},
957 {name: "ShiftAllLeftConcatMod16Int16x32", argLength: 2, aux: "UInt8"},
958 {name: "ShiftAllLeftConcatMod16Uint16x8", argLength: 2, aux: "UInt8"},
959 {name: "ShiftAllLeftConcatMod16Uint16x16", argLength: 2, aux: "UInt8"},
960 {name: "ShiftAllLeftConcatMod16Uint16x32", argLength: 2, aux: "UInt8"},
961 {name: "ShiftAllLeftConcatMod32Int32x4", argLength: 2, aux: "UInt8"},
962 {name: "ShiftAllLeftConcatMod32Int32x8", argLength: 2, aux: "UInt8"},
963 {name: "ShiftAllLeftConcatMod32Int32x16", argLength: 2, aux: "UInt8"},
964 {name: "ShiftAllLeftConcatMod32Uint32x4", argLength: 2, aux: "UInt8"},
965 {name: "ShiftAllLeftConcatMod32Uint32x8", argLength: 2, aux: "UInt8"},
966 {name: "ShiftAllLeftConcatMod32Uint32x16", argLength: 2, aux: "UInt8"},
967 {name: "ShiftAllLeftConcatMod64Int64x2", argLength: 2, aux: "UInt8"},
968 {name: "ShiftAllLeftConcatMod64Int64x4", argLength: 2, aux: "UInt8"},
969 {name: "ShiftAllLeftConcatMod64Int64x8", argLength: 2, aux: "UInt8"},
970 {name: "ShiftAllLeftConcatMod64Uint64x2", argLength: 2, aux: "UInt8"},
971 {name: "ShiftAllLeftConcatMod64Uint64x4", argLength: 2, aux: "UInt8"},
972 {name: "ShiftAllLeftConcatMod64Uint64x8", argLength: 2, aux: "UInt8"},
973 {name: "ShiftAllLeftInt16x8", argLength: 2},
974 {name: "ShiftAllLeftInt16x16", argLength: 2},
975 {name: "ShiftAllLeftInt16x32", argLength: 2},
976 {name: "ShiftAllLeftInt32x4", argLength: 2},
977 {name: "ShiftAllLeftInt32x8", argLength: 2},
978 {name: "ShiftAllLeftInt32x16", argLength: 2},
979 {name: "ShiftAllLeftInt64x2", argLength: 2},
980 {name: "ShiftAllLeftInt64x4", argLength: 2},
981 {name: "ShiftAllLeftInt64x8", argLength: 2},
982 {name: "ShiftAllLeftUint16x8", argLength: 2},
983 {name: "ShiftAllLeftUint16x16", argLength: 2},
984 {name: "ShiftAllLeftUint16x32", argLength: 2},
985 {name: "ShiftAllLeftUint32x4", argLength: 2},
986 {name: "ShiftAllLeftUint32x8", argLength: 2},
987 {name: "ShiftAllLeftUint32x16", argLength: 2},
988 {name: "ShiftAllLeftUint64x2", argLength: 2},
989 {name: "ShiftAllLeftUint64x4", argLength: 2},
990 {name: "ShiftAllLeftUint64x8", argLength: 2},
991 {name: "ShiftAllRightConcatMod16Int16x8", argLength: 2, aux: "UInt8"},
992 {name: "ShiftAllRightConcatMod16Int16x16", argLength: 2, aux: "UInt8"},
993 {name: "ShiftAllRightConcatMod16Int16x32", argLength: 2, aux: "UInt8"},
994 {name: "ShiftAllRightConcatMod16Uint16x8", argLength: 2, aux: "UInt8"},
995 {name: "ShiftAllRightConcatMod16Uint16x16", argLength: 2, aux: "UInt8"},
996 {name: "ShiftAllRightConcatMod16Uint16x32", argLength: 2, aux: "UInt8"},
997 {name: "ShiftAllRightConcatMod32Int32x4", argLength: 2, aux: "UInt8"},
998 {name: "ShiftAllRightConcatMod32Int32x8", argLength: 2, aux: "UInt8"},
999 {name: "ShiftAllRightConcatMod32Int32x16", argLength: 2, aux: "UInt8"},
1000 {name: "ShiftAllRightConcatMod32Uint32x4", argLength: 2, aux: "UInt8"},
1001 {name: "ShiftAllRightConcatMod32Uint32x8", argLength: 2, aux: "UInt8"},
1002 {name: "ShiftAllRightConcatMod32Uint32x16", argLength: 2, aux: "UInt8"},
1003 {name: "ShiftAllRightConcatMod64Int64x2", argLength: 2, aux: "UInt8"},
1004 {name: "ShiftAllRightConcatMod64Int64x4", argLength: 2, aux: "UInt8"},
1005 {name: "ShiftAllRightConcatMod64Int64x8", argLength: 2, aux: "UInt8"},
1006 {name: "ShiftAllRightConcatMod64Uint64x2", argLength: 2, aux: "UInt8"},
1007 {name: "ShiftAllRightConcatMod64Uint64x4", argLength: 2, aux: "UInt8"},
1008 {name: "ShiftAllRightConcatMod64Uint64x8", argLength: 2, aux: "UInt8"},
1009 {name: "ShiftAllRightInt16x8", argLength: 2},
1010 {name: "ShiftAllRightInt16x16", argLength: 2},
1011 {name: "ShiftAllRightInt16x32", argLength: 2},
1012 {name: "ShiftAllRightInt32x4", argLength: 2},
1013 {name: "ShiftAllRightInt32x8", argLength: 2},
1014 {name: "ShiftAllRightInt32x16", argLength: 2},
1015 {name: "ShiftAllRightInt64x2", argLength: 2},
1016 {name: "ShiftAllRightInt64x4", argLength: 2},
1017 {name: "ShiftAllRightInt64x8", argLength: 2},
1018 {name: "ShiftAllRightUint16x8", argLength: 2},
1019 {name: "ShiftAllRightUint16x16", argLength: 2},
1020 {name: "ShiftAllRightUint16x32", argLength: 2},
1021 {name: "ShiftAllRightUint32x4", argLength: 2},
1022 {name: "ShiftAllRightUint32x8", argLength: 2},
1023 {name: "ShiftAllRightUint32x16", argLength: 2},
1024 {name: "ShiftAllRightUint64x2", argLength: 2},
1025 {name: "ShiftAllRightUint64x4", argLength: 2},
1026 {name: "ShiftAllRightUint64x8", argLength: 2},
1027 {name: "ShiftLeftConcatMod16Int16x8", argLength: 3},
1028 {name: "ShiftLeftConcatMod16Int16x16", argLength: 3},
1029 {name: "ShiftLeftConcatMod16Int16x32", argLength: 3},
1030 {name: "ShiftLeftConcatMod16Uint16x8", argLength: 3},
1031 {name: "ShiftLeftConcatMod16Uint16x16", argLength: 3},
1032 {name: "ShiftLeftConcatMod16Uint16x32", argLength: 3},
1033 {name: "ShiftLeftConcatMod32Int32x4", argLength: 3},
1034 {name: "ShiftLeftConcatMod32Int32x8", argLength: 3},
1035 {name: "ShiftLeftConcatMod32Int32x16", argLength: 3},
1036 {name: "ShiftLeftConcatMod32Uint32x4", argLength: 3},
1037 {name: "ShiftLeftConcatMod32Uint32x8", argLength: 3},
1038 {name: "ShiftLeftConcatMod32Uint32x16", argLength: 3},
1039 {name: "ShiftLeftConcatMod64Int64x2", argLength: 3},
1040 {name: "ShiftLeftConcatMod64Int64x4", argLength: 3},
1041 {name: "ShiftLeftConcatMod64Int64x8", argLength: 3},
1042 {name: "ShiftLeftConcatMod64Uint64x2", argLength: 3},
1043 {name: "ShiftLeftConcatMod64Uint64x4", argLength: 3},
1044 {name: "ShiftLeftConcatMod64Uint64x8", argLength: 3},
1045 {name: "ShiftLeftInt16x8", argLength: 2},
1046 {name: "ShiftLeftInt16x16", argLength: 2},
1047 {name: "ShiftLeftInt16x32", argLength: 2},
1048 {name: "ShiftLeftInt32x4", argLength: 2},
1049 {name: "ShiftLeftInt32x8", argLength: 2},
1050 {name: "ShiftLeftInt32x16", argLength: 2},
1051 {name: "ShiftLeftInt64x2", argLength: 2},
1052 {name: "ShiftLeftInt64x4", argLength: 2},
1053 {name: "ShiftLeftInt64x8", argLength: 2},
1054 {name: "ShiftLeftUint16x8", argLength: 2},
1055 {name: "ShiftLeftUint16x16", argLength: 2},
1056 {name: "ShiftLeftUint16x32", argLength: 2},
1057 {name: "ShiftLeftUint32x4", argLength: 2},
1058 {name: "ShiftLeftUint32x8", argLength: 2},
1059 {name: "ShiftLeftUint32x16", argLength: 2},
1060 {name: "ShiftLeftUint64x2", argLength: 2},
1061 {name: "ShiftLeftUint64x4", argLength: 2},
1062 {name: "ShiftLeftUint64x8", argLength: 2},
1063 {name: "ShiftRightConcatMod16Int16x8", argLength: 3},
1064 {name: "ShiftRightConcatMod16Int16x16", argLength: 3},
1065 {name: "ShiftRightConcatMod16Int16x32", argLength: 3},
1066 {name: "ShiftRightConcatMod16Uint16x8", argLength: 3},
1067 {name: "ShiftRightConcatMod16Uint16x16", argLength: 3},
1068 {name: "ShiftRightConcatMod16Uint16x32", argLength: 3},
1069 {name: "ShiftRightConcatMod32Int32x4", argLength: 3},
1070 {name: "ShiftRightConcatMod32Int32x8", argLength: 3},
1071 {name: "ShiftRightConcatMod32Int32x16", argLength: 3},
1072 {name: "ShiftRightConcatMod32Uint32x4", argLength: 3},
1073 {name: "ShiftRightConcatMod32Uint32x8", argLength: 3},
1074 {name: "ShiftRightConcatMod32Uint32x16", argLength: 3},
1075 {name: "ShiftRightConcatMod64Int64x2", argLength: 3},
1076 {name: "ShiftRightConcatMod64Int64x4", argLength: 3},
1077 {name: "ShiftRightConcatMod64Int64x8", argLength: 3},
1078 {name: "ShiftRightConcatMod64Uint64x2", argLength: 3},
1079 {name: "ShiftRightConcatMod64Uint64x4", argLength: 3},
1080 {name: "ShiftRightConcatMod64Uint64x8", argLength: 3},
1081 {name: "ShiftRightInt16x8", argLength: 2},
1082 {name: "ShiftRightInt16x16", argLength: 2},
1083 {name: "ShiftRightInt16x32", argLength: 2},
1084 {name: "ShiftRightInt32x4", argLength: 2},
1085 {name: "ShiftRightInt32x8", argLength: 2},
1086 {name: "ShiftRightInt32x16", argLength: 2},
1087 {name: "ShiftRightInt64x2", argLength: 2},
1088 {name: "ShiftRightInt64x4", argLength: 2},
1089 {name: "ShiftRightInt64x8", argLength: 2},
1090 {name: "ShiftRightUint16x8", argLength: 2},
1091 {name: "ShiftRightUint16x16", argLength: 2},
1092 {name: "ShiftRightUint16x32", argLength: 2},
1093 {name: "ShiftRightUint32x4", argLength: 2},
1094 {name: "ShiftRightUint32x8", argLength: 2},
1095 {name: "ShiftRightUint32x16", argLength: 2},
1096 {name: "ShiftRightUint64x2", argLength: 2},
1097 {name: "ShiftRightUint64x4", argLength: 2},
1098 {name: "ShiftRightUint64x8", argLength: 2},
1099 {name: "SqrtFloat32x4", argLength: 1},
1100 {name: "SqrtFloat32x8", argLength: 1},
1101 {name: "SqrtFloat32x16", argLength: 1},
1102 {name: "SqrtFloat64x2", argLength: 1},
1103 {name: "SqrtFloat64x4", argLength: 1},
1104 {name: "SqrtFloat64x8", argLength: 1},
1105 {name: "SubFloat32x4", argLength: 2},
1106 {name: "SubFloat32x8", argLength: 2},
1107 {name: "SubFloat32x16", argLength: 2},
1108 {name: "SubFloat64x2", argLength: 2},
1109 {name: "SubFloat64x4", argLength: 2},
1110 {name: "SubFloat64x8", argLength: 2},
1111 {name: "SubInt8x16", argLength: 2},
1112 {name: "SubInt8x32", argLength: 2},
1113 {name: "SubInt8x64", argLength: 2},
1114 {name: "SubInt16x8", argLength: 2},
1115 {name: "SubInt16x16", argLength: 2},
1116 {name: "SubInt16x32", argLength: 2},
1117 {name: "SubInt32x4", argLength: 2},
1118 {name: "SubInt32x8", argLength: 2},
1119 {name: "SubInt32x16", argLength: 2},
1120 {name: "SubInt64x2", argLength: 2},
1121 {name: "SubInt64x4", argLength: 2},
1122 {name: "SubInt64x8", argLength: 2},
1123 {name: "SubSaturatedInt8x16", argLength: 2},
1124 {name: "SubSaturatedInt8x32", argLength: 2},
1125 {name: "SubSaturatedInt8x64", argLength: 2},
1126 {name: "SubSaturatedInt16x8", argLength: 2},
1127 {name: "SubSaturatedInt16x16", argLength: 2},
1128 {name: "SubSaturatedInt16x32", argLength: 2},
1129 {name: "SubSaturatedUint8x16", argLength: 2},
1130 {name: "SubSaturatedUint8x32", argLength: 2},
1131 {name: "SubSaturatedUint8x64", argLength: 2},
1132 {name: "SubSaturatedUint16x8", argLength: 2},
1133 {name: "SubSaturatedUint16x16", argLength: 2},
1134 {name: "SubSaturatedUint16x32", argLength: 2},
1135 {name: "SubUint8x16", argLength: 2},
1136 {name: "SubUint8x32", argLength: 2},
1137 {name: "SubUint8x64", argLength: 2},
1138 {name: "SubUint16x8", argLength: 2},
1139 {name: "SubUint16x16", argLength: 2},
1140 {name: "SubUint16x32", argLength: 2},
1141 {name: "SubUint32x4", argLength: 2},
1142 {name: "SubUint32x8", argLength: 2},
1143 {name: "SubUint32x16", argLength: 2},
1144 {name: "SubUint64x2", argLength: 2},
1145 {name: "SubUint64x4", argLength: 2},
1146 {name: "SubUint64x8", argLength: 2},
1147 {name: "SumOf8AbsDiffUint8x16", argLength: 2},
1148 {name: "SumOf8AbsDiffUint8x32", argLength: 2},
1149 {name: "SumOf8AbsDiffUint8x64", argLength: 2},
1150 {name: "TruncFloat32x4", argLength: 1},
1151 {name: "TruncFloat32x8", argLength: 1},
1152 {name: "TruncFloat64x2", argLength: 1},
1153 {name: "TruncFloat64x4", argLength: 1},
1154 {name: "TruncScaledFloat32x4", argLength: 1, aux: "UInt8"},
1155 {name: "TruncScaledFloat32x8", argLength: 1, aux: "UInt8"},
1156 {name: "TruncScaledFloat32x16", argLength: 1, aux: "UInt8"},
1157 {name: "TruncScaledFloat64x2", argLength: 1, aux: "UInt8"},
1158 {name: "TruncScaledFloat64x4", argLength: 1, aux: "UInt8"},
1159 {name: "TruncScaledFloat64x8", argLength: 1, aux: "UInt8"},
1160 {name: "TruncScaledResidueFloat32x4", argLength: 1, aux: "UInt8"},
1161 {name: "TruncScaledResidueFloat32x8", argLength: 1, aux: "UInt8"},
1162 {name: "TruncScaledResidueFloat32x16", argLength: 1, aux: "UInt8"},
1163 {name: "TruncScaledResidueFloat64x2", argLength: 1, aux: "UInt8"},
1164 {name: "TruncScaledResidueFloat64x4", argLength: 1, aux: "UInt8"},
1165 {name: "TruncScaledResidueFloat64x8", argLength: 1, aux: "UInt8"},
1166 {name: "TruncToInt8Int16x8", argLength: 1},
1167 {name: "TruncToInt8Int16x16", argLength: 1},
1168 {name: "TruncToInt8Int16x32", argLength: 1},
1169 {name: "TruncToInt8Int32x4", argLength: 1},
1170 {name: "TruncToInt8Int32x8", argLength: 1},
1171 {name: "TruncToInt8Int32x16", argLength: 1},
1172 {name: "TruncToInt8Int64x2", argLength: 1},
1173 {name: "TruncToInt8Int64x4", argLength: 1},
1174 {name: "TruncToInt8Int64x8", argLength: 1},
1175 {name: "TruncToInt16Int32x4", argLength: 1},
1176 {name: "TruncToInt16Int32x8", argLength: 1},
1177 {name: "TruncToInt16Int32x16", argLength: 1},
1178 {name: "TruncToInt16Int64x2", argLength: 1},
1179 {name: "TruncToInt16Int64x4", argLength: 1},
1180 {name: "TruncToInt16Int64x8", argLength: 1},
1181 {name: "TruncToInt32Int64x2", argLength: 1},
1182 {name: "TruncToInt32Int64x4", argLength: 1},
1183 {name: "TruncToInt32Int64x8", argLength: 1},
1184 {name: "TruncToUint8Uint16x8", argLength: 1},
1185 {name: "TruncToUint8Uint16x16", argLength: 1},
1186 {name: "TruncToUint8Uint16x32", argLength: 1},
1187 {name: "TruncToUint8Uint32x4", argLength: 1},
1188 {name: "TruncToUint8Uint32x8", argLength: 1},
1189 {name: "TruncToUint8Uint32x16", argLength: 1},
1190 {name: "TruncToUint8Uint64x2", argLength: 1},
1191 {name: "TruncToUint8Uint64x4", argLength: 1},
1192 {name: "TruncToUint8Uint64x8", argLength: 1},
1193 {name: "TruncToUint16Uint32x4", argLength: 1},
1194 {name: "TruncToUint16Uint32x8", argLength: 1},
1195 {name: "TruncToUint16Uint32x16", argLength: 1},
1196 {name: "TruncToUint16Uint64x2", argLength: 1},
1197 {name: "TruncToUint16Uint64x4", argLength: 1},
1198 {name: "TruncToUint16Uint64x8", argLength: 1},
1199 {name: "TruncToUint32Uint64x2", argLength: 1},
1200 {name: "TruncToUint32Uint64x4", argLength: 1},
1201 {name: "TruncToUint32Uint64x8", argLength: 1},
1202 {name: "XorInt8x16", argLength: 2, commutative: true},
1203 {name: "XorInt8x32", argLength: 2, commutative: true},
1204 {name: "XorInt8x64", argLength: 2, commutative: true},
1205 {name: "XorInt16x8", argLength: 2, commutative: true},
1206 {name: "XorInt16x16", argLength: 2, commutative: true},
1207 {name: "XorInt16x32", argLength: 2, commutative: true},
1208 {name: "XorInt32x4", argLength: 2, commutative: true},
1209 {name: "XorInt32x8", argLength: 2, commutative: true},
1210 {name: "XorInt32x16", argLength: 2, commutative: true},
1211 {name: "XorInt64x2", argLength: 2, commutative: true},
1212 {name: "XorInt64x4", argLength: 2, commutative: true},
1213 {name: "XorInt64x8", argLength: 2, commutative: true},
1214 {name: "XorUint8x16", argLength: 2, commutative: true},
1215 {name: "XorUint8x32", argLength: 2, commutative: true},
1216 {name: "XorUint8x64", argLength: 2, commutative: true},
1217 {name: "XorUint16x8", argLength: 2, commutative: true},
1218 {name: "XorUint16x16", argLength: 2, commutative: true},
1219 {name: "XorUint16x32", argLength: 2, commutative: true},
1220 {name: "XorUint32x4", argLength: 2, commutative: true},
1221 {name: "XorUint32x8", argLength: 2, commutative: true},
1222 {name: "XorUint32x16", argLength: 2, commutative: true},
1223 {name: "XorUint64x2", argLength: 2, commutative: true},
1224 {name: "XorUint64x4", argLength: 2, commutative: true},
1225 {name: "XorUint64x8", argLength: 2, commutative: true},
1226 {name: "blendInt8x16", argLength: 3},
1227 {name: "blendInt8x32", argLength: 3},
1228 {name: "blendMaskedInt8x64", argLength: 3},
1229 {name: "blendMaskedInt16x32", argLength: 3},
1230 {name: "blendMaskedInt32x16", argLength: 3},
1231 {name: "blendMaskedInt64x8", argLength: 3},
1232 {name: "broadcast1To2Float64x2", argLength: 1},
1233 {name: "broadcast1To2Int64x2", argLength: 1},
1234 {name: "broadcast1To2MaskedFloat64x2", argLength: 2},
1235 {name: "broadcast1To2MaskedInt64x2", argLength: 2},
1236 {name: "broadcast1To2MaskedUint64x2", argLength: 2},
1237 {name: "broadcast1To2Uint64x2", argLength: 1},
1238 {name: "broadcast1To4Float32x4", argLength: 1},
1239 {name: "broadcast1To4Float64x2", argLength: 1},
1240 {name: "broadcast1To4Int32x4", argLength: 1},
1241 {name: "broadcast1To4Int64x2", argLength: 1},
1242 {name: "broadcast1To4MaskedFloat32x4", argLength: 2},
1243 {name: "broadcast1To4MaskedFloat64x2", argLength: 2},
1244 {name: "broadcast1To4MaskedInt32x4", argLength: 2},
1245 {name: "broadcast1To4MaskedInt64x2", argLength: 2},
1246 {name: "broadcast1To4MaskedUint32x4", argLength: 2},
1247 {name: "broadcast1To4MaskedUint64x2", argLength: 2},
1248 {name: "broadcast1To4Uint32x4", argLength: 1},
1249 {name: "broadcast1To4Uint64x2", argLength: 1},
1250 {name: "broadcast1To8Float32x4", argLength: 1},
1251 {name: "broadcast1To8Float64x2", argLength: 1},
1252 {name: "broadcast1To8Int16x8", argLength: 1},
1253 {name: "broadcast1To8Int32x4", argLength: 1},
1254 {name: "broadcast1To8Int64x2", argLength: 1},
1255 {name: "broadcast1To8MaskedFloat32x4", argLength: 2},
1256 {name: "broadcast1To8MaskedFloat64x2", argLength: 2},
1257 {name: "broadcast1To8MaskedInt16x8", argLength: 2},
1258 {name: "broadcast1To8MaskedInt32x4", argLength: 2},
1259 {name: "broadcast1To8MaskedInt64x2", argLength: 2},
1260 {name: "broadcast1To8MaskedUint16x8", argLength: 2},
1261 {name: "broadcast1To8MaskedUint32x4", argLength: 2},
1262 {name: "broadcast1To8MaskedUint64x2", argLength: 2},
1263 {name: "broadcast1To8Uint16x8", argLength: 1},
1264 {name: "broadcast1To8Uint32x4", argLength: 1},
1265 {name: "broadcast1To8Uint64x2", argLength: 1},
1266 {name: "broadcast1To16Float32x4", argLength: 1},
1267 {name: "broadcast1To16Int8x16", argLength: 1},
1268 {name: "broadcast1To16Int16x8", argLength: 1},
1269 {name: "broadcast1To16Int32x4", argLength: 1},
1270 {name: "broadcast1To16MaskedFloat32x4", argLength: 2},
1271 {name: "broadcast1To16MaskedInt8x16", argLength: 2},
1272 {name: "broadcast1To16MaskedInt16x8", argLength: 2},
1273 {name: "broadcast1To16MaskedInt32x4", argLength: 2},
1274 {name: "broadcast1To16MaskedUint8x16", argLength: 2},
1275 {name: "broadcast1To16MaskedUint16x8", argLength: 2},
1276 {name: "broadcast1To16MaskedUint32x4", argLength: 2},
1277 {name: "broadcast1To16Uint8x16", argLength: 1},
1278 {name: "broadcast1To16Uint16x8", argLength: 1},
1279 {name: "broadcast1To16Uint32x4", argLength: 1},
1280 {name: "broadcast1To32Int8x16", argLength: 1},
1281 {name: "broadcast1To32Int16x8", argLength: 1},
1282 {name: "broadcast1To32MaskedInt8x16", argLength: 2},
1283 {name: "broadcast1To32MaskedInt16x8", argLength: 2},
1284 {name: "broadcast1To32MaskedUint8x16", argLength: 2},
1285 {name: "broadcast1To32MaskedUint16x8", argLength: 2},
1286 {name: "broadcast1To32Uint8x16", argLength: 1},
1287 {name: "broadcast1To32Uint16x8", argLength: 1},
1288 {name: "broadcast1To64Int8x16", argLength: 1},
1289 {name: "broadcast1To64MaskedInt8x16", argLength: 2},
1290 {name: "broadcast1To64MaskedUint8x16", argLength: 2},
1291 {name: "broadcast1To64Uint8x16", argLength: 1},
1292 {name: "carrylessMultiplyUint64x2", argLength: 2, aux: "UInt8"},
1293 {name: "carrylessMultiplyUint64x4", argLength: 2, aux: "UInt8"},
1294 {name: "carrylessMultiplyUint64x8", argLength: 2, aux: "UInt8"},
1295 {name: "concatSelectedConstantFloat32x4", argLength: 2, aux: "UInt8"},
1296 {name: "concatSelectedConstantFloat64x2", argLength: 2, aux: "UInt8"},
1297 {name: "concatSelectedConstantGroupedFloat32x8", argLength: 2, aux: "UInt8"},
1298 {name: "concatSelectedConstantGroupedFloat32x16", argLength: 2, aux: "UInt8"},
1299 {name: "concatSelectedConstantGroupedFloat64x4", argLength: 2, aux: "UInt8"},
1300 {name: "concatSelectedConstantGroupedFloat64x8", argLength: 2, aux: "UInt8"},
1301 {name: "concatSelectedConstantGroupedInt32x8", argLength: 2, aux: "UInt8"},
1302 {name: "concatSelectedConstantGroupedInt32x16", argLength: 2, aux: "UInt8"},
1303 {name: "concatSelectedConstantGroupedInt64x4", argLength: 2, aux: "UInt8"},
1304 {name: "concatSelectedConstantGroupedInt64x8", argLength: 2, aux: "UInt8"},
1305 {name: "concatSelectedConstantGroupedUint32x8", argLength: 2, aux: "UInt8"},
1306 {name: "concatSelectedConstantGroupedUint32x16", argLength: 2, aux: "UInt8"},
1307 {name: "concatSelectedConstantGroupedUint64x4", argLength: 2, aux: "UInt8"},
1308 {name: "concatSelectedConstantGroupedUint64x8", argLength: 2, aux: "UInt8"},
1309 {name: "concatSelectedConstantInt32x4", argLength: 2, aux: "UInt8"},
1310 {name: "concatSelectedConstantInt64x2", argLength: 2, aux: "UInt8"},
1311 {name: "concatSelectedConstantUint32x4", argLength: 2, aux: "UInt8"},
1312 {name: "concatSelectedConstantUint64x2", argLength: 2, aux: "UInt8"},
1313 {name: "onesCountInt8x16", argLength: 1},
1314 {name: "onesCountInt8x32", argLength: 1},
1315 {name: "onesCountInt8x64", argLength: 1},
1316 {name: "onesCountUint8x16", argLength: 1},
1317 {name: "onesCountUint8x32", argLength: 1},
1318 {name: "onesCountUint8x64", argLength: 1},
1319 {name: "permuteScalarsGroupedInt32x8", argLength: 1, aux: "UInt8"},
1320 {name: "permuteScalarsGroupedInt32x16", argLength: 1, aux: "UInt8"},
1321 {name: "permuteScalarsGroupedUint32x8", argLength: 1, aux: "UInt8"},
1322 {name: "permuteScalarsGroupedUint32x16", argLength: 1, aux: "UInt8"},
1323 {name: "permuteScalarsHiGroupedInt16x16", argLength: 1, aux: "UInt8"},
1324 {name: "permuteScalarsHiGroupedInt16x32", argLength: 1, aux: "UInt8"},
1325 {name: "permuteScalarsHiGroupedUint16x16", argLength: 1, aux: "UInt8"},
1326 {name: "permuteScalarsHiGroupedUint16x32", argLength: 1, aux: "UInt8"},
1327 {name: "permuteScalarsHiInt16x8", argLength: 1, aux: "UInt8"},
1328 {name: "permuteScalarsHiUint16x8", argLength: 1, aux: "UInt8"},
1329 {name: "permuteScalarsInt32x4", argLength: 1, aux: "UInt8"},
1330 {name: "permuteScalarsLoGroupedInt16x16", argLength: 1, aux: "UInt8"},
1331 {name: "permuteScalarsLoGroupedInt16x32", argLength: 1, aux: "UInt8"},
1332 {name: "permuteScalarsLoGroupedUint16x16", argLength: 1, aux: "UInt8"},
1333 {name: "permuteScalarsLoGroupedUint16x32", argLength: 1, aux: "UInt8"},
1334 {name: "permuteScalarsLoInt16x8", argLength: 1, aux: "UInt8"},
1335 {name: "permuteScalarsLoUint16x8", argLength: 1, aux: "UInt8"},
1336 {name: "permuteScalarsUint32x4", argLength: 1, aux: "UInt8"},
1337 {name: "ternInt32x4", argLength: 3, aux: "UInt8"},
1338 {name: "ternInt32x8", argLength: 3, aux: "UInt8"},
1339 {name: "ternInt32x16", argLength: 3, aux: "UInt8"},
1340 {name: "ternInt64x2", argLength: 3, aux: "UInt8"},
1341 {name: "ternInt64x4", argLength: 3, aux: "UInt8"},
1342 {name: "ternInt64x8", argLength: 3, aux: "UInt8"},
1343 {name: "ternUint32x4", argLength: 3, aux: "UInt8"},
1344 {name: "ternUint32x8", argLength: 3, aux: "UInt8"},
1345 {name: "ternUint32x16", argLength: 3, aux: "UInt8"},
1346 {name: "ternUint64x2", argLength: 3, aux: "UInt8"},
1347 {name: "ternUint64x4", argLength: 3, aux: "UInt8"},
1348 {name: "ternUint64x8", argLength: 3, aux: "UInt8"},
1349 }
1350 }
1351
View as plain text