cubefs

Форк
0
2753 строки · 87.2 Кб
1
// Code generated by command: go run gen.go -out ../galois_gen_amd64.s -stubs ../galois_gen_amd64.go -pkg=reedsolomon. DO NOT EDIT.
2

3
//go:build !appengine && !noasm && !nogen && gc
4

5
package reedsolomon
6

7
func _dummy_()
8

9
// mulAvxTwo_1x1 takes 1 inputs and produces 1 outputs.
10
// The output is initialized to 0.
11
//
12
//go:noescape
13
func mulAvxTwo_1x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
14

15
// mulAvxTwo_1x1_64 takes 1 inputs and produces 1 outputs.
16
// The output is initialized to 0.
17
//
18
//go:noescape
19
func mulAvxTwo_1x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
20

21
// mulGFNI_1x1_64 takes 1 inputs and produces 1 outputs.
22
// The output is initialized to 0.
23
//
24
//go:noescape
25
func mulGFNI_1x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
26

27
// mulGFNI_1x1_64Xor takes 1 inputs and produces 1 outputs.
28
//
29
//go:noescape
30
func mulGFNI_1x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
31

32
// mulAvxTwo_1x1Xor takes 1 inputs and produces 1 outputs.
33
//
34
//go:noescape
35
func mulAvxTwo_1x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
36

37
// mulAvxTwo_1x1_64Xor takes 1 inputs and produces 1 outputs.
38
//
39
//go:noescape
40
func mulAvxTwo_1x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
41

42
// mulAvxTwo_1x2 takes 1 inputs and produces 2 outputs.
43
// The output is initialized to 0.
44
//
45
//go:noescape
46
func mulAvxTwo_1x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
47

48
// mulAvxTwo_1x2_64 takes 1 inputs and produces 2 outputs.
49
// The output is initialized to 0.
50
//
51
//go:noescape
52
func mulAvxTwo_1x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
53

54
// mulGFNI_1x2_64 takes 1 inputs and produces 2 outputs.
55
// The output is initialized to 0.
56
//
57
//go:noescape
58
func mulGFNI_1x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
59

60
// mulGFNI_1x2_64Xor takes 1 inputs and produces 2 outputs.
61
//
62
//go:noescape
63
func mulGFNI_1x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
64

65
// mulAvxTwo_1x2Xor takes 1 inputs and produces 2 outputs.
66
//
67
//go:noescape
68
func mulAvxTwo_1x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
69

70
// mulAvxTwo_1x2_64Xor takes 1 inputs and produces 2 outputs.
71
//
72
//go:noescape
73
func mulAvxTwo_1x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
74

75
// mulAvxTwo_1x3 takes 1 inputs and produces 3 outputs.
76
// The output is initialized to 0.
77
//
78
//go:noescape
79
func mulAvxTwo_1x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
80

81
// mulAvxTwo_1x3_64 takes 1 inputs and produces 3 outputs.
82
// The output is initialized to 0.
83
//
84
//go:noescape
85
func mulAvxTwo_1x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
86

87
// mulGFNI_1x3_64 takes 1 inputs and produces 3 outputs.
88
// The output is initialized to 0.
89
//
90
//go:noescape
91
func mulGFNI_1x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
92

93
// mulGFNI_1x3_64Xor takes 1 inputs and produces 3 outputs.
94
//
95
//go:noescape
96
func mulGFNI_1x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
97

98
// mulAvxTwo_1x3Xor takes 1 inputs and produces 3 outputs.
99
//
100
//go:noescape
101
func mulAvxTwo_1x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
102

103
// mulAvxTwo_1x3_64Xor takes 1 inputs and produces 3 outputs.
104
//
105
//go:noescape
106
func mulAvxTwo_1x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
107

108
// mulAvxTwo_1x4 takes 1 inputs and produces 4 outputs.
109
// The output is initialized to 0.
110
//
111
//go:noescape
112
func mulAvxTwo_1x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
113

114
// mulGFNI_1x4_64 takes 1 inputs and produces 4 outputs.
115
// The output is initialized to 0.
116
//
117
//go:noescape
118
func mulGFNI_1x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
119

120
// mulGFNI_1x4_64Xor takes 1 inputs and produces 4 outputs.
121
//
122
//go:noescape
123
func mulGFNI_1x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
124

125
// mulAvxTwo_1x4Xor takes 1 inputs and produces 4 outputs.
126
//
127
//go:noescape
128
func mulAvxTwo_1x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
129

130
// mulAvxTwo_1x5 takes 1 inputs and produces 5 outputs.
131
// The output is initialized to 0.
132
//
133
//go:noescape
134
func mulAvxTwo_1x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
135

136
// mulGFNI_1x5_64 takes 1 inputs and produces 5 outputs.
137
// The output is initialized to 0.
138
//
139
//go:noescape
140
func mulGFNI_1x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
141

142
// mulGFNI_1x5_64Xor takes 1 inputs and produces 5 outputs.
143
//
144
//go:noescape
145
func mulGFNI_1x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
146

147
// mulAvxTwo_1x5Xor takes 1 inputs and produces 5 outputs.
148
//
149
//go:noescape
150
func mulAvxTwo_1x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
151

152
// mulAvxTwo_1x6 takes 1 inputs and produces 6 outputs.
153
// The output is initialized to 0.
154
//
155
//go:noescape
156
func mulAvxTwo_1x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
157

158
// mulGFNI_1x6_64 takes 1 inputs and produces 6 outputs.
159
// The output is initialized to 0.
160
//
161
//go:noescape
162
func mulGFNI_1x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
163

164
// mulGFNI_1x6_64Xor takes 1 inputs and produces 6 outputs.
165
//
166
//go:noescape
167
func mulGFNI_1x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
168

169
// mulAvxTwo_1x6Xor takes 1 inputs and produces 6 outputs.
170
//
171
//go:noescape
172
func mulAvxTwo_1x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
173

174
// mulAvxTwo_1x7 takes 1 inputs and produces 7 outputs.
175
// The output is initialized to 0.
176
//
177
//go:noescape
178
func mulAvxTwo_1x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
179

180
// mulGFNI_1x7_64 takes 1 inputs and produces 7 outputs.
181
// The output is initialized to 0.
182
//
183
//go:noescape
184
func mulGFNI_1x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
185

186
// mulGFNI_1x7_64Xor takes 1 inputs and produces 7 outputs.
187
//
188
//go:noescape
189
func mulGFNI_1x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
190

191
// mulAvxTwo_1x7Xor takes 1 inputs and produces 7 outputs.
192
//
193
//go:noescape
194
func mulAvxTwo_1x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
195

196
// mulAvxTwo_1x8 takes 1 inputs and produces 8 outputs.
197
// The output is initialized to 0.
198
//
199
//go:noescape
200
func mulAvxTwo_1x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
201

202
// mulGFNI_1x8_64 takes 1 inputs and produces 8 outputs.
203
// The output is initialized to 0.
204
//
205
//go:noescape
206
func mulGFNI_1x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
207

208
// mulGFNI_1x8_64Xor takes 1 inputs and produces 8 outputs.
209
//
210
//go:noescape
211
func mulGFNI_1x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
212

213
// mulAvxTwo_1x8Xor takes 1 inputs and produces 8 outputs.
214
//
215
//go:noescape
216
func mulAvxTwo_1x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
217

218
// mulAvxTwo_1x9 takes 1 inputs and produces 9 outputs.
219
// The output is initialized to 0.
220
//
221
//go:noescape
222
func mulAvxTwo_1x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
223

224
// mulGFNI_1x9_64 takes 1 inputs and produces 9 outputs.
225
// The output is initialized to 0.
226
//
227
//go:noescape
228
func mulGFNI_1x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
229

230
// mulGFNI_1x9_64Xor takes 1 inputs and produces 9 outputs.
231
//
232
//go:noescape
233
func mulGFNI_1x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
234

235
// mulAvxTwo_1x9Xor takes 1 inputs and produces 9 outputs.
236
//
237
//go:noescape
238
func mulAvxTwo_1x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
239

240
// mulAvxTwo_1x10 takes 1 inputs and produces 10 outputs.
241
// The output is initialized to 0.
242
//
243
//go:noescape
244
func mulAvxTwo_1x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
245

246
// mulGFNI_1x10_64 takes 1 inputs and produces 10 outputs.
247
// The output is initialized to 0.
248
//
249
//go:noescape
250
func mulGFNI_1x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
251

252
// mulGFNI_1x10_64Xor takes 1 inputs and produces 10 outputs.
253
//
254
//go:noescape
255
func mulGFNI_1x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
256

257
// mulAvxTwo_1x10Xor takes 1 inputs and produces 10 outputs.
258
//
259
//go:noescape
260
func mulAvxTwo_1x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
261

262
// mulAvxTwo_2x1 takes 2 inputs and produces 1 outputs.
263
// The output is initialized to 0.
264
//
265
//go:noescape
266
func mulAvxTwo_2x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
267

268
// mulAvxTwo_2x1_64 takes 2 inputs and produces 1 outputs.
269
// The output is initialized to 0.
270
//
271
//go:noescape
272
func mulAvxTwo_2x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
273

274
// mulGFNI_2x1_64 takes 2 inputs and produces 1 outputs.
275
// The output is initialized to 0.
276
//
277
//go:noescape
278
func mulGFNI_2x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
279

280
// mulGFNI_2x1_64Xor takes 2 inputs and produces 1 outputs.
281
//
282
//go:noescape
283
func mulGFNI_2x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
284

285
// mulAvxTwo_2x1Xor takes 2 inputs and produces 1 outputs.
286
//
287
//go:noescape
288
func mulAvxTwo_2x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
289

290
// mulAvxTwo_2x1_64Xor takes 2 inputs and produces 1 outputs.
291
//
292
//go:noescape
293
func mulAvxTwo_2x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
294

295
// mulAvxTwo_2x2 takes 2 inputs and produces 2 outputs.
296
// The output is initialized to 0.
297
//
298
//go:noescape
299
func mulAvxTwo_2x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
300

301
// mulAvxTwo_2x2_64 takes 2 inputs and produces 2 outputs.
302
// The output is initialized to 0.
303
//
304
//go:noescape
305
func mulAvxTwo_2x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
306

307
// mulGFNI_2x2_64 takes 2 inputs and produces 2 outputs.
308
// The output is initialized to 0.
309
//
310
//go:noescape
311
func mulGFNI_2x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
312

313
// mulGFNI_2x2_64Xor takes 2 inputs and produces 2 outputs.
314
//
315
//go:noescape
316
func mulGFNI_2x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
317

318
// mulAvxTwo_2x2Xor takes 2 inputs and produces 2 outputs.
319
//
320
//go:noescape
321
func mulAvxTwo_2x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
322

323
// mulAvxTwo_2x2_64Xor takes 2 inputs and produces 2 outputs.
324
//
325
//go:noescape
326
func mulAvxTwo_2x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
327

328
// mulAvxTwo_2x3 takes 2 inputs and produces 3 outputs.
329
// The output is initialized to 0.
330
//
331
//go:noescape
332
func mulAvxTwo_2x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
333

334
// mulAvxTwo_2x3_64 takes 2 inputs and produces 3 outputs.
335
// The output is initialized to 0.
336
//
337
//go:noescape
338
func mulAvxTwo_2x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
339

340
// mulGFNI_2x3_64 takes 2 inputs and produces 3 outputs.
341
// The output is initialized to 0.
342
//
343
//go:noescape
344
func mulGFNI_2x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
345

346
// mulGFNI_2x3_64Xor takes 2 inputs and produces 3 outputs.
347
//
348
//go:noescape
349
func mulGFNI_2x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
350

351
// mulAvxTwo_2x3Xor takes 2 inputs and produces 3 outputs.
352
//
353
//go:noescape
354
func mulAvxTwo_2x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
355

356
// mulAvxTwo_2x3_64Xor takes 2 inputs and produces 3 outputs.
357
//
358
//go:noescape
359
func mulAvxTwo_2x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
360

361
// mulAvxTwo_2x4 takes 2 inputs and produces 4 outputs.
362
// The output is initialized to 0.
363
//
364
//go:noescape
365
func mulAvxTwo_2x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
366

367
// mulGFNI_2x4_64 takes 2 inputs and produces 4 outputs.
368
// The output is initialized to 0.
369
//
370
//go:noescape
371
func mulGFNI_2x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
372

373
// mulGFNI_2x4_64Xor takes 2 inputs and produces 4 outputs.
374
//
375
//go:noescape
376
func mulGFNI_2x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
377

378
// mulAvxTwo_2x4Xor takes 2 inputs and produces 4 outputs.
379
//
380
//go:noescape
381
func mulAvxTwo_2x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
382

383
// mulAvxTwo_2x5 takes 2 inputs and produces 5 outputs.
384
// The output is initialized to 0.
385
//
386
//go:noescape
387
func mulAvxTwo_2x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
388

389
// mulGFNI_2x5_64 takes 2 inputs and produces 5 outputs.
390
// The output is initialized to 0.
391
//
392
//go:noescape
393
func mulGFNI_2x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
394

395
// mulGFNI_2x5_64Xor takes 2 inputs and produces 5 outputs.
396
//
397
//go:noescape
398
func mulGFNI_2x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
399

400
// mulAvxTwo_2x5Xor takes 2 inputs and produces 5 outputs.
401
//
402
//go:noescape
403
func mulAvxTwo_2x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
404

405
// mulAvxTwo_2x6 takes 2 inputs and produces 6 outputs.
406
// The output is initialized to 0.
407
//
408
//go:noescape
409
func mulAvxTwo_2x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
410

411
// mulGFNI_2x6_64 takes 2 inputs and produces 6 outputs.
412
// The output is initialized to 0.
413
//
414
//go:noescape
415
func mulGFNI_2x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
416

417
// mulGFNI_2x6_64Xor takes 2 inputs and produces 6 outputs.
418
//
419
//go:noescape
420
func mulGFNI_2x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
421

422
// mulAvxTwo_2x6Xor takes 2 inputs and produces 6 outputs.
423
//
424
//go:noescape
425
func mulAvxTwo_2x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
426

427
// mulAvxTwo_2x7 takes 2 inputs and produces 7 outputs.
428
// The output is initialized to 0.
429
//
430
//go:noescape
431
func mulAvxTwo_2x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
432

433
// mulGFNI_2x7_64 takes 2 inputs and produces 7 outputs.
434
// The output is initialized to 0.
435
//
436
//go:noescape
437
func mulGFNI_2x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
438

439
// mulGFNI_2x7_64Xor takes 2 inputs and produces 7 outputs.
440
//
441
//go:noescape
442
func mulGFNI_2x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
443

444
// mulAvxTwo_2x7Xor takes 2 inputs and produces 7 outputs.
445
//
446
//go:noescape
447
func mulAvxTwo_2x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
448

449
// mulAvxTwo_2x8 takes 2 inputs and produces 8 outputs.
450
// The output is initialized to 0.
451
//
452
//go:noescape
453
func mulAvxTwo_2x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
454

455
// mulGFNI_2x8_64 takes 2 inputs and produces 8 outputs.
456
// The output is initialized to 0.
457
//
458
//go:noescape
459
func mulGFNI_2x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
460

461
// mulGFNI_2x8_64Xor takes 2 inputs and produces 8 outputs.
462
//
463
//go:noescape
464
func mulGFNI_2x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
465

466
// mulAvxTwo_2x8Xor takes 2 inputs and produces 8 outputs.
467
//
468
//go:noescape
469
func mulAvxTwo_2x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
470

471
// mulAvxTwo_2x9 takes 2 inputs and produces 9 outputs.
472
// The output is initialized to 0.
473
//
474
//go:noescape
475
func mulAvxTwo_2x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
476

477
// mulGFNI_2x9_64 takes 2 inputs and produces 9 outputs.
478
// The output is initialized to 0.
479
//
480
//go:noescape
481
func mulGFNI_2x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
482

483
// mulGFNI_2x9_64Xor takes 2 inputs and produces 9 outputs.
484
//
485
//go:noescape
486
func mulGFNI_2x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
487

488
// mulAvxTwo_2x9Xor takes 2 inputs and produces 9 outputs.
489
//
490
//go:noescape
491
func mulAvxTwo_2x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
492

493
// mulAvxTwo_2x10 takes 2 inputs and produces 10 outputs.
494
// The output is initialized to 0.
495
//
496
//go:noescape
497
func mulAvxTwo_2x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
498

499
// mulGFNI_2x10_64 takes 2 inputs and produces 10 outputs.
500
// The output is initialized to 0.
501
//
502
//go:noescape
503
func mulGFNI_2x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
504

505
// mulGFNI_2x10_64Xor takes 2 inputs and produces 10 outputs.
506
//
507
//go:noescape
508
func mulGFNI_2x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
509

510
// mulAvxTwo_2x10Xor takes 2 inputs and produces 10 outputs.
511
//
512
//go:noescape
513
func mulAvxTwo_2x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
514

515
// mulAvxTwo_3x1 takes 3 inputs and produces 1 outputs.
516
// The output is initialized to 0.
517
//
518
//go:noescape
519
func mulAvxTwo_3x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
520

521
// mulAvxTwo_3x1_64 takes 3 inputs and produces 1 outputs.
522
// The output is initialized to 0.
523
//
524
//go:noescape
525
func mulAvxTwo_3x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
526

527
// mulGFNI_3x1_64 takes 3 inputs and produces 1 outputs.
528
// The output is initialized to 0.
529
//
530
//go:noescape
531
func mulGFNI_3x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
532

533
// mulGFNI_3x1_64Xor takes 3 inputs and produces 1 outputs.
534
//
535
//go:noescape
536
func mulGFNI_3x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
537

538
// mulAvxTwo_3x1Xor takes 3 inputs and produces 1 outputs.
539
//
540
//go:noescape
541
func mulAvxTwo_3x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
542

543
// mulAvxTwo_3x1_64Xor takes 3 inputs and produces 1 outputs.
544
//
545
//go:noescape
546
func mulAvxTwo_3x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
547

548
// mulAvxTwo_3x2 takes 3 inputs and produces 2 outputs.
549
// The output is initialized to 0.
550
//
551
//go:noescape
552
func mulAvxTwo_3x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
553

554
// mulAvxTwo_3x2_64 takes 3 inputs and produces 2 outputs.
555
// The output is initialized to 0.
556
//
557
//go:noescape
558
func mulAvxTwo_3x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
559

560
// mulGFNI_3x2_64 takes 3 inputs and produces 2 outputs.
561
// The output is initialized to 0.
562
//
563
//go:noescape
564
func mulGFNI_3x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
565

566
// mulGFNI_3x2_64Xor takes 3 inputs and produces 2 outputs.
567
//
568
//go:noescape
569
func mulGFNI_3x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
570

571
// mulAvxTwo_3x2Xor takes 3 inputs and produces 2 outputs.
572
//
573
//go:noescape
574
func mulAvxTwo_3x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
575

576
// mulAvxTwo_3x2_64Xor takes 3 inputs and produces 2 outputs.
577
//
578
//go:noescape
579
func mulAvxTwo_3x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
580

581
// mulAvxTwo_3x3 takes 3 inputs and produces 3 outputs.
582
// The output is initialized to 0.
583
//
584
//go:noescape
585
func mulAvxTwo_3x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
586

587
// mulAvxTwo_3x3_64 takes 3 inputs and produces 3 outputs.
588
// The output is initialized to 0.
589
//
590
//go:noescape
591
func mulAvxTwo_3x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
592

593
// mulGFNI_3x3_64 takes 3 inputs and produces 3 outputs.
594
// The output is initialized to 0.
595
//
596
//go:noescape
597
func mulGFNI_3x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
598

599
// mulGFNI_3x3_64Xor takes 3 inputs and produces 3 outputs.
600
//
601
//go:noescape
602
func mulGFNI_3x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
603

604
// mulAvxTwo_3x3Xor takes 3 inputs and produces 3 outputs.
605
//
606
//go:noescape
607
func mulAvxTwo_3x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
608

609
// mulAvxTwo_3x3_64Xor takes 3 inputs and produces 3 outputs.
610
//
611
//go:noescape
612
func mulAvxTwo_3x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
613

614
// mulAvxTwo_3x4 takes 3 inputs and produces 4 outputs.
615
// The output is initialized to 0.
616
//
617
//go:noescape
618
func mulAvxTwo_3x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
619

620
// mulGFNI_3x4_64 takes 3 inputs and produces 4 outputs.
621
// The output is initialized to 0.
622
//
623
//go:noescape
624
func mulGFNI_3x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
625

626
// mulGFNI_3x4_64Xor takes 3 inputs and produces 4 outputs.
627
//
628
//go:noescape
629
func mulGFNI_3x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
630

631
// mulAvxTwo_3x4Xor takes 3 inputs and produces 4 outputs.
632
//
633
//go:noescape
634
func mulAvxTwo_3x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
635

636
// mulAvxTwo_3x5 takes 3 inputs and produces 5 outputs.
637
// The output is initialized to 0.
638
//
639
//go:noescape
640
func mulAvxTwo_3x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
641

642
// mulGFNI_3x5_64 takes 3 inputs and produces 5 outputs.
643
// The output is initialized to 0.
644
//
645
//go:noescape
646
func mulGFNI_3x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
647

648
// mulGFNI_3x5_64Xor takes 3 inputs and produces 5 outputs.
649
//
650
//go:noescape
651
func mulGFNI_3x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
652

653
// mulAvxTwo_3x5Xor takes 3 inputs and produces 5 outputs.
654
//
655
//go:noescape
656
func mulAvxTwo_3x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
657

658
// mulAvxTwo_3x6 takes 3 inputs and produces 6 outputs.
659
// The output is initialized to 0.
660
//
661
//go:noescape
662
func mulAvxTwo_3x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
663

664
// mulGFNI_3x6_64 takes 3 inputs and produces 6 outputs.
665
// The output is initialized to 0.
666
//
667
//go:noescape
668
func mulGFNI_3x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
669

670
// mulGFNI_3x6_64Xor takes 3 inputs and produces 6 outputs.
671
//
672
//go:noescape
673
func mulGFNI_3x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
674

675
// mulAvxTwo_3x6Xor takes 3 inputs and produces 6 outputs.
676
//
677
//go:noescape
678
func mulAvxTwo_3x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
679

680
// mulAvxTwo_3x7 takes 3 inputs and produces 7 outputs.
681
// The output is initialized to 0.
682
//
683
//go:noescape
684
func mulAvxTwo_3x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
685

686
// mulGFNI_3x7_64 takes 3 inputs and produces 7 outputs.
687
// The output is initialized to 0.
688
//
689
//go:noescape
690
func mulGFNI_3x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
691

692
// mulGFNI_3x7_64Xor takes 3 inputs and produces 7 outputs.
693
//
694
//go:noescape
695
func mulGFNI_3x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
696

697
// mulAvxTwo_3x7Xor takes 3 inputs and produces 7 outputs.
698
//
699
//go:noescape
700
func mulAvxTwo_3x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
701

702
// mulAvxTwo_3x8 takes 3 inputs and produces 8 outputs.
703
// The output is initialized to 0.
704
//
705
//go:noescape
706
func mulAvxTwo_3x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
707

708
// mulGFNI_3x8_64 takes 3 inputs and produces 8 outputs.
709
// The output is initialized to 0.
710
//
711
//go:noescape
712
func mulGFNI_3x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
713

714
// mulGFNI_3x8_64Xor takes 3 inputs and produces 8 outputs.
715
//
716
//go:noescape
717
func mulGFNI_3x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
718

719
// mulAvxTwo_3x8Xor takes 3 inputs and produces 8 outputs.
720
//
721
//go:noescape
722
func mulAvxTwo_3x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
723

724
// mulAvxTwo_3x9 takes 3 inputs and produces 9 outputs.
725
// The output is initialized to 0.
726
//
727
//go:noescape
728
func mulAvxTwo_3x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
729

730
// mulGFNI_3x9_64 takes 3 inputs and produces 9 outputs.
731
// The output is initialized to 0.
732
//
733
//go:noescape
734
func mulGFNI_3x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
735

736
// mulGFNI_3x9_64Xor takes 3 inputs and produces 9 outputs.
737
//
738
//go:noescape
739
func mulGFNI_3x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
740

741
// mulAvxTwo_3x9Xor takes 3 inputs and produces 9 outputs.
742
//
743
//go:noescape
744
func mulAvxTwo_3x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
745

746
// mulAvxTwo_3x10 takes 3 inputs and produces 10 outputs.
747
// The output is initialized to 0.
748
//
749
//go:noescape
750
func mulAvxTwo_3x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
751

752
// mulGFNI_3x10_64 takes 3 inputs and produces 10 outputs.
753
// The output is initialized to 0.
754
//
755
//go:noescape
756
func mulGFNI_3x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
757

758
// mulGFNI_3x10_64Xor takes 3 inputs and produces 10 outputs.
759
//
760
//go:noescape
761
func mulGFNI_3x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
762

763
// mulAvxTwo_3x10Xor takes 3 inputs and produces 10 outputs.
764
//
765
//go:noescape
766
func mulAvxTwo_3x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
767

768
// mulAvxTwo_4x1 takes 4 inputs and produces 1 outputs.
769
// The output is initialized to 0.
770
//
771
//go:noescape
772
func mulAvxTwo_4x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
773

774
// mulAvxTwo_4x1_64 takes 4 inputs and produces 1 outputs.
775
// The output is initialized to 0.
776
//
777
//go:noescape
778
func mulAvxTwo_4x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
779

780
// mulGFNI_4x1_64 takes 4 inputs and produces 1 outputs.
781
// The output is initialized to 0.
782
//
783
//go:noescape
784
func mulGFNI_4x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
785

786
// mulGFNI_4x1_64Xor takes 4 inputs and produces 1 outputs.
787
//
788
//go:noescape
789
func mulGFNI_4x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
790

791
// mulAvxTwo_4x1Xor takes 4 inputs and produces 1 outputs.
792
//
793
//go:noescape
794
func mulAvxTwo_4x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
795

796
// mulAvxTwo_4x1_64Xor takes 4 inputs and produces 1 outputs.
797
//
798
//go:noescape
799
func mulAvxTwo_4x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
800

801
// mulAvxTwo_4x2 takes 4 inputs and produces 2 outputs.
802
// The output is initialized to 0.
803
//
804
//go:noescape
805
func mulAvxTwo_4x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
806

807
// mulAvxTwo_4x2_64 takes 4 inputs and produces 2 outputs.
808
// The output is initialized to 0.
809
//
810
//go:noescape
811
func mulAvxTwo_4x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
812

813
// mulGFNI_4x2_64 takes 4 inputs and produces 2 outputs.
814
// The output is initialized to 0.
815
//
816
//go:noescape
817
func mulGFNI_4x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
818

819
// mulGFNI_4x2_64Xor takes 4 inputs and produces 2 outputs.
820
//
821
//go:noescape
822
func mulGFNI_4x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
823

824
// mulAvxTwo_4x2Xor takes 4 inputs and produces 2 outputs.
825
//
826
//go:noescape
827
func mulAvxTwo_4x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
828

829
// mulAvxTwo_4x2_64Xor takes 4 inputs and produces 2 outputs.
830
//
831
//go:noescape
832
func mulAvxTwo_4x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
833

834
// mulAvxTwo_4x3 takes 4 inputs and produces 3 outputs.
835
// The output is initialized to 0.
836
//
837
//go:noescape
838
func mulAvxTwo_4x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
839

840
// mulAvxTwo_4x3_64 takes 4 inputs and produces 3 outputs.
841
// The output is initialized to 0.
842
//
843
//go:noescape
844
func mulAvxTwo_4x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
845

846
// mulGFNI_4x3_64 takes 4 inputs and produces 3 outputs.
847
// The output is initialized to 0.
848
//
849
//go:noescape
850
func mulGFNI_4x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
851

852
// mulGFNI_4x3_64Xor takes 4 inputs and produces 3 outputs.
853
//
854
//go:noescape
855
func mulGFNI_4x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
856

857
// mulAvxTwo_4x3Xor takes 4 inputs and produces 3 outputs.
858
//
859
//go:noescape
860
func mulAvxTwo_4x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
861

862
// mulAvxTwo_4x3_64Xor takes 4 inputs and produces 3 outputs.
863
//
864
//go:noescape
865
func mulAvxTwo_4x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
866

867
// mulAvxTwo_4x4 takes 4 inputs and produces 4 outputs.
868
// The output is initialized to 0.
869
//
870
//go:noescape
871
func mulAvxTwo_4x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
872

873
// mulGFNI_4x4_64 takes 4 inputs and produces 4 outputs.
874
// The output is initialized to 0.
875
//
876
//go:noescape
877
func mulGFNI_4x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
878

879
// mulGFNI_4x4_64Xor takes 4 inputs and produces 4 outputs.
880
//
881
//go:noescape
882
func mulGFNI_4x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
883

884
// mulAvxTwo_4x4Xor takes 4 inputs and produces 4 outputs.
885
//
886
//go:noescape
887
func mulAvxTwo_4x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
888

889
// mulAvxTwo_4x5 takes 4 inputs and produces 5 outputs.
890
// The output is initialized to 0.
891
//
892
//go:noescape
893
func mulAvxTwo_4x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
894

895
// mulGFNI_4x5_64 takes 4 inputs and produces 5 outputs.
896
// The output is initialized to 0.
897
//
898
//go:noescape
899
func mulGFNI_4x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
900

901
// mulGFNI_4x5_64Xor takes 4 inputs and produces 5 outputs.
902
//
903
//go:noescape
904
func mulGFNI_4x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
905

906
// mulAvxTwo_4x5Xor takes 4 inputs and produces 5 outputs.
907
//
908
//go:noescape
909
func mulAvxTwo_4x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
910

911
// mulAvxTwo_4x6 takes 4 inputs and produces 6 outputs.
912
// The output is initialized to 0.
913
//
914
//go:noescape
915
func mulAvxTwo_4x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
916

917
// mulGFNI_4x6_64 takes 4 inputs and produces 6 outputs.
918
// The output is initialized to 0.
919
//
920
//go:noescape
921
func mulGFNI_4x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
922

923
// mulGFNI_4x6_64Xor takes 4 inputs and produces 6 outputs.
924
//
925
//go:noescape
926
func mulGFNI_4x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
927

928
// mulAvxTwo_4x6Xor takes 4 inputs and produces 6 outputs.
929
//
930
//go:noescape
931
func mulAvxTwo_4x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
932

933
// mulAvxTwo_4x7 takes 4 inputs and produces 7 outputs.
934
// The output is initialized to 0.
935
//
936
//go:noescape
937
func mulAvxTwo_4x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
938

939
// mulGFNI_4x7_64 takes 4 inputs and produces 7 outputs.
940
// The output is initialized to 0.
941
//
942
//go:noescape
943
func mulGFNI_4x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
944

945
// mulGFNI_4x7_64Xor takes 4 inputs and produces 7 outputs.
946
//
947
//go:noescape
948
func mulGFNI_4x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
949

950
// mulAvxTwo_4x7Xor takes 4 inputs and produces 7 outputs.
951
//
952
//go:noescape
953
func mulAvxTwo_4x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
954

955
// mulAvxTwo_4x8 takes 4 inputs and produces 8 outputs.
956
// The output is initialized to 0.
957
//
958
//go:noescape
959
func mulAvxTwo_4x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
960

961
// mulGFNI_4x8_64 takes 4 inputs and produces 8 outputs.
962
// The output is initialized to 0.
963
//
964
//go:noescape
965
func mulGFNI_4x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
966

967
// mulGFNI_4x8_64Xor takes 4 inputs and produces 8 outputs.
968
//
969
//go:noescape
970
func mulGFNI_4x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
971

972
// mulAvxTwo_4x8Xor takes 4 inputs and produces 8 outputs.
973
//
974
//go:noescape
975
func mulAvxTwo_4x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
976

977
// mulAvxTwo_4x9 takes 4 inputs and produces 9 outputs.
978
// The output is initialized to 0.
979
//
980
//go:noescape
981
func mulAvxTwo_4x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
982

983
// mulGFNI_4x9_64 takes 4 inputs and produces 9 outputs.
984
// The output is initialized to 0.
985
//
986
//go:noescape
987
func mulGFNI_4x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
988

989
// mulGFNI_4x9_64Xor takes 4 inputs and produces 9 outputs.
990
//
991
//go:noescape
992
func mulGFNI_4x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
993

994
// mulAvxTwo_4x9Xor takes 4 inputs and produces 9 outputs.
995
//
996
//go:noescape
997
func mulAvxTwo_4x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
998

999
// mulAvxTwo_4x10 takes 4 inputs and produces 10 outputs.
1000
// The output is initialized to 0.
1001
//
1002
//go:noescape
1003
func mulAvxTwo_4x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1004

1005
// mulGFNI_4x10_64 takes 4 inputs and produces 10 outputs.
1006
// The output is initialized to 0.
1007
//
1008
//go:noescape
1009
func mulGFNI_4x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1010

1011
// mulGFNI_4x10_64Xor takes 4 inputs and produces 10 outputs.
1012
//
1013
//go:noescape
1014
func mulGFNI_4x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1015

1016
// mulAvxTwo_4x10Xor takes 4 inputs and produces 10 outputs.
1017
//
1018
//go:noescape
1019
func mulAvxTwo_4x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1020

1021
// mulAvxTwo_5x1 takes 5 inputs and produces 1 outputs.
1022
// The output is initialized to 0.
1023
//
1024
//go:noescape
1025
func mulAvxTwo_5x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1026

1027
// mulAvxTwo_5x1_64 takes 5 inputs and produces 1 outputs.
1028
// The output is initialized to 0.
1029
//
1030
//go:noescape
1031
func mulAvxTwo_5x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1032

1033
// mulGFNI_5x1_64 takes 5 inputs and produces 1 outputs.
1034
// The output is initialized to 0.
1035
//
1036
//go:noescape
1037
func mulGFNI_5x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1038

1039
// mulGFNI_5x1_64Xor takes 5 inputs and produces 1 outputs.
1040
//
1041
//go:noescape
1042
func mulGFNI_5x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1043

1044
// mulAvxTwo_5x1Xor takes 5 inputs and produces 1 outputs.
1045
//
1046
//go:noescape
1047
func mulAvxTwo_5x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1048

1049
// mulAvxTwo_5x1_64Xor takes 5 inputs and produces 1 outputs.
1050
//
1051
//go:noescape
1052
func mulAvxTwo_5x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1053

1054
// mulAvxTwo_5x2 takes 5 inputs and produces 2 outputs.
1055
// The output is initialized to 0.
1056
//
1057
//go:noescape
1058
func mulAvxTwo_5x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1059

1060
// mulAvxTwo_5x2_64 takes 5 inputs and produces 2 outputs.
1061
// The output is initialized to 0.
1062
//
1063
//go:noescape
1064
func mulAvxTwo_5x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1065

1066
// mulGFNI_5x2_64 takes 5 inputs and produces 2 outputs.
1067
// The output is initialized to 0.
1068
//
1069
//go:noescape
1070
func mulGFNI_5x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1071

1072
// mulGFNI_5x2_64Xor takes 5 inputs and produces 2 outputs.
1073
//
1074
//go:noescape
1075
func mulGFNI_5x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1076

1077
// mulAvxTwo_5x2Xor takes 5 inputs and produces 2 outputs.
1078
//
1079
//go:noescape
1080
func mulAvxTwo_5x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1081

1082
// mulAvxTwo_5x2_64Xor takes 5 inputs and produces 2 outputs.
1083
//
1084
//go:noescape
1085
func mulAvxTwo_5x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1086

1087
// mulAvxTwo_5x3 takes 5 inputs and produces 3 outputs.
1088
// The output is initialized to 0.
1089
//
1090
//go:noescape
1091
func mulAvxTwo_5x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1092

1093
// mulAvxTwo_5x3_64 takes 5 inputs and produces 3 outputs.
1094
// The output is initialized to 0.
1095
//
1096
//go:noescape
1097
func mulAvxTwo_5x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1098

1099
// mulGFNI_5x3_64 takes 5 inputs and produces 3 outputs.
1100
// The output is initialized to 0.
1101
//
1102
//go:noescape
1103
func mulGFNI_5x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1104

1105
// mulGFNI_5x3_64Xor takes 5 inputs and produces 3 outputs.
1106
//
1107
//go:noescape
1108
func mulGFNI_5x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1109

1110
// mulAvxTwo_5x3Xor takes 5 inputs and produces 3 outputs.
1111
//
1112
//go:noescape
1113
func mulAvxTwo_5x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1114

1115
// mulAvxTwo_5x3_64Xor takes 5 inputs and produces 3 outputs.
1116
//
1117
//go:noescape
1118
func mulAvxTwo_5x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1119

1120
// mulAvxTwo_5x4 takes 5 inputs and produces 4 outputs.
1121
// The output is initialized to 0.
1122
//
1123
//go:noescape
1124
func mulAvxTwo_5x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1125

1126
// mulGFNI_5x4_64 takes 5 inputs and produces 4 outputs.
1127
// The output is initialized to 0.
1128
//
1129
//go:noescape
1130
func mulGFNI_5x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1131

1132
// mulGFNI_5x4_64Xor takes 5 inputs and produces 4 outputs.
1133
//
1134
//go:noescape
1135
func mulGFNI_5x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1136

1137
// mulAvxTwo_5x4Xor takes 5 inputs and produces 4 outputs.
1138
//
1139
//go:noescape
1140
func mulAvxTwo_5x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1141

1142
// mulAvxTwo_5x5 takes 5 inputs and produces 5 outputs.
1143
// The output is initialized to 0.
1144
//
1145
//go:noescape
1146
func mulAvxTwo_5x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1147

1148
// mulGFNI_5x5_64 takes 5 inputs and produces 5 outputs.
1149
// The output is initialized to 0.
1150
//
1151
//go:noescape
1152
func mulGFNI_5x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1153

1154
// mulGFNI_5x5_64Xor takes 5 inputs and produces 5 outputs.
1155
//
1156
//go:noescape
1157
func mulGFNI_5x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1158

1159
// mulAvxTwo_5x5Xor takes 5 inputs and produces 5 outputs.
1160
//
1161
//go:noescape
1162
func mulAvxTwo_5x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1163

1164
// mulAvxTwo_5x6 takes 5 inputs and produces 6 outputs.
1165
// The output is initialized to 0.
1166
//
1167
//go:noescape
1168
func mulAvxTwo_5x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1169

1170
// mulGFNI_5x6_64 takes 5 inputs and produces 6 outputs.
1171
// The output is initialized to 0.
1172
//
1173
//go:noescape
1174
func mulGFNI_5x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1175

1176
// mulGFNI_5x6_64Xor takes 5 inputs and produces 6 outputs.
1177
//
1178
//go:noescape
1179
func mulGFNI_5x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1180

1181
// mulAvxTwo_5x6Xor takes 5 inputs and produces 6 outputs.
1182
//
1183
//go:noescape
1184
func mulAvxTwo_5x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1185

1186
// mulAvxTwo_5x7 takes 5 inputs and produces 7 outputs.
1187
// The output is initialized to 0.
1188
//
1189
//go:noescape
1190
func mulAvxTwo_5x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1191

1192
// mulGFNI_5x7_64 takes 5 inputs and produces 7 outputs.
1193
// The output is initialized to 0.
1194
//
1195
//go:noescape
1196
func mulGFNI_5x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1197

1198
// mulGFNI_5x7_64Xor takes 5 inputs and produces 7 outputs.
1199
//
1200
//go:noescape
1201
func mulGFNI_5x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1202

1203
// mulAvxTwo_5x7Xor takes 5 inputs and produces 7 outputs.
1204
//
1205
//go:noescape
1206
func mulAvxTwo_5x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1207

1208
// mulAvxTwo_5x8 takes 5 inputs and produces 8 outputs.
1209
// The output is initialized to 0.
1210
//
1211
//go:noescape
1212
func mulAvxTwo_5x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1213

1214
// mulGFNI_5x8_64 takes 5 inputs and produces 8 outputs.
1215
// The output is initialized to 0.
1216
//
1217
//go:noescape
1218
func mulGFNI_5x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1219

1220
// mulGFNI_5x8_64Xor takes 5 inputs and produces 8 outputs.
1221
//
1222
//go:noescape
1223
func mulGFNI_5x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1224

1225
// mulAvxTwo_5x8Xor takes 5 inputs and produces 8 outputs.
1226
//
1227
//go:noescape
1228
func mulAvxTwo_5x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1229

1230
// mulAvxTwo_5x9 takes 5 inputs and produces 9 outputs.
1231
// The output is initialized to 0.
1232
//
1233
//go:noescape
1234
func mulAvxTwo_5x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1235

1236
// mulGFNI_5x9_64 takes 5 inputs and produces 9 outputs.
1237
// The output is initialized to 0.
1238
//
1239
//go:noescape
1240
func mulGFNI_5x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1241

1242
// mulGFNI_5x9_64Xor takes 5 inputs and produces 9 outputs.
1243
//
1244
//go:noescape
1245
func mulGFNI_5x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1246

1247
// mulAvxTwo_5x9Xor takes 5 inputs and produces 9 outputs.
1248
//
1249
//go:noescape
1250
func mulAvxTwo_5x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1251

1252
// mulAvxTwo_5x10 takes 5 inputs and produces 10 outputs.
1253
// The output is initialized to 0.
1254
//
1255
//go:noescape
1256
func mulAvxTwo_5x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1257

1258
// mulGFNI_5x10_64 takes 5 inputs and produces 10 outputs.
1259
// The output is initialized to 0.
1260
//
1261
//go:noescape
1262
func mulGFNI_5x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1263

1264
// mulGFNI_5x10_64Xor takes 5 inputs and produces 10 outputs.
1265
//
1266
//go:noescape
1267
func mulGFNI_5x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1268

1269
// mulAvxTwo_5x10Xor takes 5 inputs and produces 10 outputs.
1270
//
1271
//go:noescape
1272
func mulAvxTwo_5x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1273

1274
// mulAvxTwo_6x1 takes 6 inputs and produces 1 outputs.
1275
// The output is initialized to 0.
1276
//
1277
//go:noescape
1278
func mulAvxTwo_6x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1279

1280
// mulAvxTwo_6x1_64 takes 6 inputs and produces 1 outputs.
1281
// The output is initialized to 0.
1282
//
1283
//go:noescape
1284
func mulAvxTwo_6x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1285

1286
// mulGFNI_6x1_64 takes 6 inputs and produces 1 outputs.
1287
// The output is initialized to 0.
1288
//
1289
//go:noescape
1290
func mulGFNI_6x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1291

1292
// mulGFNI_6x1_64Xor takes 6 inputs and produces 1 outputs.
1293
//
1294
//go:noescape
1295
func mulGFNI_6x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1296

1297
// mulAvxTwo_6x1Xor takes 6 inputs and produces 1 outputs.
1298
//
1299
//go:noescape
1300
func mulAvxTwo_6x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1301

1302
// mulAvxTwo_6x1_64Xor takes 6 inputs and produces 1 outputs.
1303
//
1304
//go:noescape
1305
func mulAvxTwo_6x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1306

1307
// mulAvxTwo_6x2 takes 6 inputs and produces 2 outputs.
1308
// The output is initialized to 0.
1309
//
1310
//go:noescape
1311
func mulAvxTwo_6x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1312

1313
// mulAvxTwo_6x2_64 takes 6 inputs and produces 2 outputs.
1314
// The output is initialized to 0.
1315
//
1316
//go:noescape
1317
func mulAvxTwo_6x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1318

1319
// mulGFNI_6x2_64 takes 6 inputs and produces 2 outputs.
1320
// The output is initialized to 0.
1321
//
1322
//go:noescape
1323
func mulGFNI_6x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1324

1325
// mulGFNI_6x2_64Xor takes 6 inputs and produces 2 outputs.
1326
//
1327
//go:noescape
1328
func mulGFNI_6x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1329

1330
// mulAvxTwo_6x2Xor takes 6 inputs and produces 2 outputs.
1331
//
1332
//go:noescape
1333
func mulAvxTwo_6x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1334

1335
// mulAvxTwo_6x2_64Xor takes 6 inputs and produces 2 outputs.
1336
//
1337
//go:noescape
1338
func mulAvxTwo_6x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1339

1340
// mulAvxTwo_6x3 takes 6 inputs and produces 3 outputs.
1341
// The output is initialized to 0.
1342
//
1343
//go:noescape
1344
func mulAvxTwo_6x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1345

1346
// mulAvxTwo_6x3_64 takes 6 inputs and produces 3 outputs.
1347
// The output is initialized to 0.
1348
//
1349
//go:noescape
1350
func mulAvxTwo_6x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1351

1352
// mulGFNI_6x3_64 takes 6 inputs and produces 3 outputs.
1353
// The output is initialized to 0.
1354
//
1355
//go:noescape
1356
func mulGFNI_6x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1357

1358
// mulGFNI_6x3_64Xor takes 6 inputs and produces 3 outputs.
1359
//
1360
//go:noescape
1361
func mulGFNI_6x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1362

1363
// mulAvxTwo_6x3Xor takes 6 inputs and produces 3 outputs.
1364
//
1365
//go:noescape
1366
func mulAvxTwo_6x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1367

1368
// mulAvxTwo_6x3_64Xor takes 6 inputs and produces 3 outputs.
1369
//
1370
//go:noescape
1371
func mulAvxTwo_6x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1372

1373
// mulAvxTwo_6x4 takes 6 inputs and produces 4 outputs.
1374
// The output is initialized to 0.
1375
//
1376
//go:noescape
1377
func mulAvxTwo_6x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1378

1379
// mulGFNI_6x4_64 takes 6 inputs and produces 4 outputs.
1380
// The output is initialized to 0.
1381
//
1382
//go:noescape
1383
func mulGFNI_6x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1384

1385
// mulGFNI_6x4_64Xor takes 6 inputs and produces 4 outputs.
1386
//
1387
//go:noescape
1388
func mulGFNI_6x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1389

1390
// mulAvxTwo_6x4Xor takes 6 inputs and produces 4 outputs.
1391
//
1392
//go:noescape
1393
func mulAvxTwo_6x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1394

1395
// mulAvxTwo_6x5 takes 6 inputs and produces 5 outputs.
1396
// The output is initialized to 0.
1397
//
1398
//go:noescape
1399
func mulAvxTwo_6x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1400

1401
// mulGFNI_6x5_64 takes 6 inputs and produces 5 outputs.
1402
// The output is initialized to 0.
1403
//
1404
//go:noescape
1405
func mulGFNI_6x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1406

1407
// mulGFNI_6x5_64Xor takes 6 inputs and produces 5 outputs.
1408
//
1409
//go:noescape
1410
func mulGFNI_6x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1411

1412
// mulAvxTwo_6x5Xor takes 6 inputs and produces 5 outputs.
1413
//
1414
//go:noescape
1415
func mulAvxTwo_6x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1416

1417
// mulAvxTwo_6x6 takes 6 inputs and produces 6 outputs.
1418
// The output is initialized to 0.
1419
//
1420
//go:noescape
1421
func mulAvxTwo_6x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1422

1423
// mulGFNI_6x6_64 takes 6 inputs and produces 6 outputs.
1424
// The output is initialized to 0.
1425
//
1426
//go:noescape
1427
func mulGFNI_6x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1428

1429
// mulGFNI_6x6_64Xor takes 6 inputs and produces 6 outputs.
1430
//
1431
//go:noescape
1432
func mulGFNI_6x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1433

1434
// mulAvxTwo_6x6Xor takes 6 inputs and produces 6 outputs.
1435
//
1436
//go:noescape
1437
func mulAvxTwo_6x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1438

1439
// mulAvxTwo_6x7 takes 6 inputs and produces 7 outputs.
1440
// The output is initialized to 0.
1441
//
1442
//go:noescape
1443
func mulAvxTwo_6x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1444

1445
// mulGFNI_6x7_64 takes 6 inputs and produces 7 outputs.
1446
// The output is initialized to 0.
1447
//
1448
//go:noescape
1449
func mulGFNI_6x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1450

1451
// mulGFNI_6x7_64Xor takes 6 inputs and produces 7 outputs.
1452
//
1453
//go:noescape
1454
func mulGFNI_6x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1455

1456
// mulAvxTwo_6x7Xor takes 6 inputs and produces 7 outputs.
1457
//
1458
//go:noescape
1459
func mulAvxTwo_6x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1460

1461
// mulAvxTwo_6x8 takes 6 inputs and produces 8 outputs.
1462
// The output is initialized to 0.
1463
//
1464
//go:noescape
1465
func mulAvxTwo_6x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1466

1467
// mulGFNI_6x8_64 takes 6 inputs and produces 8 outputs.
1468
// The output is initialized to 0.
1469
//
1470
//go:noescape
1471
func mulGFNI_6x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1472

1473
// mulGFNI_6x8_64Xor takes 6 inputs and produces 8 outputs.
1474
//
1475
//go:noescape
1476
func mulGFNI_6x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1477

1478
// mulAvxTwo_6x8Xor takes 6 inputs and produces 8 outputs.
1479
//
1480
//go:noescape
1481
func mulAvxTwo_6x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1482

1483
// mulAvxTwo_6x9 takes 6 inputs and produces 9 outputs.
1484
// The output is initialized to 0.
1485
//
1486
//go:noescape
1487
func mulAvxTwo_6x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1488

1489
// mulGFNI_6x9_64 takes 6 inputs and produces 9 outputs.
1490
// The output is initialized to 0.
1491
//
1492
//go:noescape
1493
func mulGFNI_6x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1494

1495
// mulGFNI_6x9_64Xor takes 6 inputs and produces 9 outputs.
1496
//
1497
//go:noescape
1498
func mulGFNI_6x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1499

1500
// mulAvxTwo_6x9Xor takes 6 inputs and produces 9 outputs.
1501
//
1502
//go:noescape
1503
func mulAvxTwo_6x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1504

1505
// mulAvxTwo_6x10 takes 6 inputs and produces 10 outputs.
1506
// The output is initialized to 0.
1507
//
1508
//go:noescape
1509
func mulAvxTwo_6x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1510

1511
// mulGFNI_6x10_64 takes 6 inputs and produces 10 outputs.
1512
// The output is initialized to 0.
1513
//
1514
//go:noescape
1515
func mulGFNI_6x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1516

1517
// mulGFNI_6x10_64Xor takes 6 inputs and produces 10 outputs.
1518
//
1519
//go:noescape
1520
func mulGFNI_6x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1521

1522
// mulAvxTwo_6x10Xor takes 6 inputs and produces 10 outputs.
1523
//
1524
//go:noescape
1525
func mulAvxTwo_6x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1526

1527
// mulAvxTwo_7x1 takes 7 inputs and produces 1 outputs.
1528
// The output is initialized to 0.
1529
//
1530
//go:noescape
1531
func mulAvxTwo_7x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1532

1533
// mulAvxTwo_7x1_64 takes 7 inputs and produces 1 outputs.
1534
// The output is initialized to 0.
1535
//
1536
//go:noescape
1537
func mulAvxTwo_7x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1538

1539
// mulGFNI_7x1_64 takes 7 inputs and produces 1 outputs.
1540
// The output is initialized to 0.
1541
//
1542
//go:noescape
1543
func mulGFNI_7x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1544

1545
// mulGFNI_7x1_64Xor takes 7 inputs and produces 1 outputs.
1546
//
1547
//go:noescape
1548
func mulGFNI_7x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1549

1550
// mulAvxTwo_7x1Xor takes 7 inputs and produces 1 outputs.
1551
//
1552
//go:noescape
1553
func mulAvxTwo_7x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1554

1555
// mulAvxTwo_7x1_64Xor takes 7 inputs and produces 1 outputs.
1556
//
1557
//go:noescape
1558
func mulAvxTwo_7x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1559

1560
// mulAvxTwo_7x2 takes 7 inputs and produces 2 outputs.
1561
// The output is initialized to 0.
1562
//
1563
//go:noescape
1564
func mulAvxTwo_7x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1565

1566
// mulAvxTwo_7x2_64 takes 7 inputs and produces 2 outputs.
1567
// The output is initialized to 0.
1568
//
1569
//go:noescape
1570
func mulAvxTwo_7x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1571

1572
// mulGFNI_7x2_64 takes 7 inputs and produces 2 outputs.
1573
// The output is initialized to 0.
1574
//
1575
//go:noescape
1576
func mulGFNI_7x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1577

1578
// mulGFNI_7x2_64Xor takes 7 inputs and produces 2 outputs.
1579
//
1580
//go:noescape
1581
func mulGFNI_7x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1582

1583
// mulAvxTwo_7x2Xor takes 7 inputs and produces 2 outputs.
1584
//
1585
//go:noescape
1586
func mulAvxTwo_7x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1587

1588
// mulAvxTwo_7x2_64Xor takes 7 inputs and produces 2 outputs.
1589
//
1590
//go:noescape
1591
func mulAvxTwo_7x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1592

1593
// mulAvxTwo_7x3 takes 7 inputs and produces 3 outputs.
1594
// The output is initialized to 0.
1595
//
1596
//go:noescape
1597
func mulAvxTwo_7x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1598

1599
// mulAvxTwo_7x3_64 takes 7 inputs and produces 3 outputs.
1600
// The output is initialized to 0.
1601
//
1602
//go:noescape
1603
func mulAvxTwo_7x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1604

1605
// mulGFNI_7x3_64 takes 7 inputs and produces 3 outputs.
1606
// The output is initialized to 0.
1607
//
1608
//go:noescape
1609
func mulGFNI_7x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1610

1611
// mulGFNI_7x3_64Xor takes 7 inputs and produces 3 outputs.
1612
//
1613
//go:noescape
1614
func mulGFNI_7x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1615

1616
// mulAvxTwo_7x3Xor takes 7 inputs and produces 3 outputs.
1617
//
1618
//go:noescape
1619
func mulAvxTwo_7x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1620

1621
// mulAvxTwo_7x3_64Xor takes 7 inputs and produces 3 outputs.
1622
//
1623
//go:noescape
1624
func mulAvxTwo_7x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1625

1626
// mulAvxTwo_7x4 takes 7 inputs and produces 4 outputs.
1627
// The output is initialized to 0.
1628
//
1629
//go:noescape
1630
func mulAvxTwo_7x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1631

1632
// mulGFNI_7x4_64 takes 7 inputs and produces 4 outputs.
1633
// The output is initialized to 0.
1634
//
1635
//go:noescape
1636
func mulGFNI_7x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1637

1638
// mulGFNI_7x4_64Xor takes 7 inputs and produces 4 outputs.
1639
//
1640
//go:noescape
1641
func mulGFNI_7x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1642

1643
// mulAvxTwo_7x4Xor takes 7 inputs and produces 4 outputs.
1644
//
1645
//go:noescape
1646
func mulAvxTwo_7x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1647

1648
// mulAvxTwo_7x5 takes 7 inputs and produces 5 outputs.
1649
// The output is initialized to 0.
1650
//
1651
//go:noescape
1652
func mulAvxTwo_7x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1653

1654
// mulGFNI_7x5_64 takes 7 inputs and produces 5 outputs.
1655
// The output is initialized to 0.
1656
//
1657
//go:noescape
1658
func mulGFNI_7x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1659

1660
// mulGFNI_7x5_64Xor takes 7 inputs and produces 5 outputs.
1661
//
1662
//go:noescape
1663
func mulGFNI_7x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1664

1665
// mulAvxTwo_7x5Xor takes 7 inputs and produces 5 outputs.
1666
//
1667
//go:noescape
1668
func mulAvxTwo_7x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1669

1670
// mulAvxTwo_7x6 takes 7 inputs and produces 6 outputs.
1671
// The output is initialized to 0.
1672
//
1673
//go:noescape
1674
func mulAvxTwo_7x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1675

1676
// mulGFNI_7x6_64 takes 7 inputs and produces 6 outputs.
1677
// The output is initialized to 0.
1678
//
1679
//go:noescape
1680
func mulGFNI_7x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1681

1682
// mulGFNI_7x6_64Xor takes 7 inputs and produces 6 outputs.
1683
//
1684
//go:noescape
1685
func mulGFNI_7x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1686

1687
// mulAvxTwo_7x6Xor takes 7 inputs and produces 6 outputs.
1688
//
1689
//go:noescape
1690
func mulAvxTwo_7x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1691

1692
// mulAvxTwo_7x7 takes 7 inputs and produces 7 outputs.
1693
// The output is initialized to 0.
1694
//
1695
//go:noescape
1696
func mulAvxTwo_7x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1697

1698
// mulGFNI_7x7_64 takes 7 inputs and produces 7 outputs.
1699
// The output is initialized to 0.
1700
//
1701
//go:noescape
1702
func mulGFNI_7x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1703

1704
// mulGFNI_7x7_64Xor takes 7 inputs and produces 7 outputs.
1705
//
1706
//go:noescape
1707
func mulGFNI_7x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1708

1709
// mulAvxTwo_7x7Xor takes 7 inputs and produces 7 outputs.
1710
//
1711
//go:noescape
1712
func mulAvxTwo_7x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1713

1714
// mulAvxTwo_7x8 takes 7 inputs and produces 8 outputs.
1715
// The output is initialized to 0.
1716
//
1717
//go:noescape
1718
func mulAvxTwo_7x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1719

1720
// mulGFNI_7x8_64 takes 7 inputs and produces 8 outputs.
1721
// The output is initialized to 0.
1722
//
1723
//go:noescape
1724
func mulGFNI_7x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1725

1726
// mulGFNI_7x8_64Xor takes 7 inputs and produces 8 outputs.
1727
//
1728
//go:noescape
1729
func mulGFNI_7x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1730

1731
// mulAvxTwo_7x8Xor takes 7 inputs and produces 8 outputs.
1732
//
1733
//go:noescape
1734
func mulAvxTwo_7x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1735

1736
// mulAvxTwo_7x9 takes 7 inputs and produces 9 outputs.
1737
// The output is initialized to 0.
1738
//
1739
//go:noescape
1740
func mulAvxTwo_7x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1741

1742
// mulGFNI_7x9_64 takes 7 inputs and produces 9 outputs.
1743
// The output is initialized to 0.
1744
//
1745
//go:noescape
1746
func mulGFNI_7x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1747

1748
// mulGFNI_7x9_64Xor takes 7 inputs and produces 9 outputs.
1749
//
1750
//go:noescape
1751
func mulGFNI_7x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1752

1753
// mulAvxTwo_7x9Xor takes 7 inputs and produces 9 outputs.
1754
//
1755
//go:noescape
1756
func mulAvxTwo_7x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1757

1758
// mulAvxTwo_7x10 takes 7 inputs and produces 10 outputs.
1759
// The output is initialized to 0.
1760
//
1761
//go:noescape
1762
func mulAvxTwo_7x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1763

1764
// mulGFNI_7x10_64 takes 7 inputs and produces 10 outputs.
1765
// The output is initialized to 0.
1766
//
1767
//go:noescape
1768
func mulGFNI_7x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1769

1770
// mulGFNI_7x10_64Xor takes 7 inputs and produces 10 outputs.
1771
//
1772
//go:noescape
1773
func mulGFNI_7x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1774

1775
// mulAvxTwo_7x10Xor takes 7 inputs and produces 10 outputs.
1776
//
1777
//go:noescape
1778
func mulAvxTwo_7x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1779

1780
// mulAvxTwo_8x1 takes 8 inputs and produces 1 outputs.
1781
// The output is initialized to 0.
1782
//
1783
//go:noescape
1784
func mulAvxTwo_8x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1785

1786
// mulAvxTwo_8x1_64 takes 8 inputs and produces 1 outputs.
1787
// The output is initialized to 0.
1788
//
1789
//go:noescape
1790
func mulAvxTwo_8x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1791

1792
// mulGFNI_8x1_64 takes 8 inputs and produces 1 outputs.
1793
// The output is initialized to 0.
1794
//
1795
//go:noescape
1796
func mulGFNI_8x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1797

1798
// mulGFNI_8x1_64Xor takes 8 inputs and produces 1 outputs.
1799
//
1800
//go:noescape
1801
func mulGFNI_8x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1802

1803
// mulAvxTwo_8x1Xor takes 8 inputs and produces 1 outputs.
1804
//
1805
//go:noescape
1806
func mulAvxTwo_8x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1807

1808
// mulAvxTwo_8x1_64Xor takes 8 inputs and produces 1 outputs.
1809
//
1810
//go:noescape
1811
func mulAvxTwo_8x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1812

1813
// mulAvxTwo_8x2 takes 8 inputs and produces 2 outputs.
1814
// The output is initialized to 0.
1815
//
1816
//go:noescape
1817
func mulAvxTwo_8x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1818

1819
// mulAvxTwo_8x2_64 takes 8 inputs and produces 2 outputs.
1820
// The output is initialized to 0.
1821
//
1822
//go:noescape
1823
func mulAvxTwo_8x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1824

1825
// mulGFNI_8x2_64 takes 8 inputs and produces 2 outputs.
1826
// The output is initialized to 0.
1827
//
1828
//go:noescape
1829
func mulGFNI_8x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1830

1831
// mulGFNI_8x2_64Xor takes 8 inputs and produces 2 outputs.
1832
//
1833
//go:noescape
1834
func mulGFNI_8x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1835

1836
// mulAvxTwo_8x2Xor takes 8 inputs and produces 2 outputs.
1837
//
1838
//go:noescape
1839
func mulAvxTwo_8x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1840

1841
// mulAvxTwo_8x2_64Xor takes 8 inputs and produces 2 outputs.
1842
//
1843
//go:noescape
1844
func mulAvxTwo_8x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1845

1846
// mulAvxTwo_8x3 takes 8 inputs and produces 3 outputs.
1847
// The output is initialized to 0.
1848
//
1849
//go:noescape
1850
func mulAvxTwo_8x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1851

1852
// mulAvxTwo_8x3_64 takes 8 inputs and produces 3 outputs.
1853
// The output is initialized to 0.
1854
//
1855
//go:noescape
1856
func mulAvxTwo_8x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1857

1858
// mulGFNI_8x3_64 takes 8 inputs and produces 3 outputs.
1859
// The output is initialized to 0.
1860
//
1861
//go:noescape
1862
func mulGFNI_8x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1863

1864
// mulGFNI_8x3_64Xor takes 8 inputs and produces 3 outputs.
1865
//
1866
//go:noescape
1867
func mulGFNI_8x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1868

1869
// mulAvxTwo_8x3Xor takes 8 inputs and produces 3 outputs.
1870
//
1871
//go:noescape
1872
func mulAvxTwo_8x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1873

1874
// mulAvxTwo_8x3_64Xor takes 8 inputs and produces 3 outputs.
1875
//
1876
//go:noescape
1877
func mulAvxTwo_8x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1878

1879
// mulAvxTwo_8x4 takes 8 inputs and produces 4 outputs.
1880
// The output is initialized to 0.
1881
//
1882
//go:noescape
1883
func mulAvxTwo_8x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1884

1885
// mulGFNI_8x4_64 takes 8 inputs and produces 4 outputs.
1886
// The output is initialized to 0.
1887
//
1888
//go:noescape
1889
func mulGFNI_8x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1890

1891
// mulGFNI_8x4_64Xor takes 8 inputs and produces 4 outputs.
1892
//
1893
//go:noescape
1894
func mulGFNI_8x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1895

1896
// mulAvxTwo_8x4Xor takes 8 inputs and produces 4 outputs.
1897
//
1898
//go:noescape
1899
func mulAvxTwo_8x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1900

1901
// mulAvxTwo_8x5 takes 8 inputs and produces 5 outputs.
1902
// The output is initialized to 0.
1903
//
1904
//go:noescape
1905
func mulAvxTwo_8x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1906

1907
// mulGFNI_8x5_64 takes 8 inputs and produces 5 outputs.
1908
// The output is initialized to 0.
1909
//
1910
//go:noescape
1911
func mulGFNI_8x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1912

1913
// mulGFNI_8x5_64Xor takes 8 inputs and produces 5 outputs.
1914
//
1915
//go:noescape
1916
func mulGFNI_8x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1917

1918
// mulAvxTwo_8x5Xor takes 8 inputs and produces 5 outputs.
1919
//
1920
//go:noescape
1921
func mulAvxTwo_8x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1922

1923
// mulAvxTwo_8x6 takes 8 inputs and produces 6 outputs.
1924
// The output is initialized to 0.
1925
//
1926
//go:noescape
1927
func mulAvxTwo_8x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1928

1929
// mulGFNI_8x6_64 takes 8 inputs and produces 6 outputs.
1930
// The output is initialized to 0.
1931
//
1932
//go:noescape
1933
func mulGFNI_8x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1934

1935
// mulGFNI_8x6_64Xor takes 8 inputs and produces 6 outputs.
1936
//
1937
//go:noescape
1938
func mulGFNI_8x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1939

1940
// mulAvxTwo_8x6Xor takes 8 inputs and produces 6 outputs.
1941
//
1942
//go:noescape
1943
func mulAvxTwo_8x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1944

1945
// mulAvxTwo_8x7 takes 8 inputs and produces 7 outputs.
1946
// The output is initialized to 0.
1947
//
1948
//go:noescape
1949
func mulAvxTwo_8x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1950

1951
// mulGFNI_8x7_64 takes 8 inputs and produces 7 outputs.
1952
// The output is initialized to 0.
1953
//
1954
//go:noescape
1955
func mulGFNI_8x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1956

1957
// mulGFNI_8x7_64Xor takes 8 inputs and produces 7 outputs.
1958
//
1959
//go:noescape
1960
func mulGFNI_8x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1961

1962
// mulAvxTwo_8x7Xor takes 8 inputs and produces 7 outputs.
1963
//
1964
//go:noescape
1965
func mulAvxTwo_8x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1966

1967
// mulAvxTwo_8x8 takes 8 inputs and produces 8 outputs.
1968
// The output is initialized to 0.
1969
//
1970
//go:noescape
1971
func mulAvxTwo_8x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1972

1973
// mulGFNI_8x8_64 takes 8 inputs and produces 8 outputs.
1974
// The output is initialized to 0.
1975
//
1976
//go:noescape
1977
func mulGFNI_8x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1978

1979
// mulGFNI_8x8_64Xor takes 8 inputs and produces 8 outputs.
1980
//
1981
//go:noescape
1982
func mulGFNI_8x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
1983

1984
// mulAvxTwo_8x8Xor takes 8 inputs and produces 8 outputs.
1985
//
1986
//go:noescape
1987
func mulAvxTwo_8x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1988

1989
// mulAvxTwo_8x9 takes 8 inputs and produces 9 outputs.
1990
// The output is initialized to 0.
1991
//
1992
//go:noescape
1993
func mulAvxTwo_8x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
1994

1995
// mulGFNI_8x9_64 takes 8 inputs and produces 9 outputs.
1996
// The output is initialized to 0.
1997
//
1998
//go:noescape
1999
func mulGFNI_8x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2000

2001
// mulGFNI_8x9_64Xor takes 8 inputs and produces 9 outputs.
2002
//
2003
//go:noescape
2004
func mulGFNI_8x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2005

2006
// mulAvxTwo_8x9Xor takes 8 inputs and produces 9 outputs.
2007
//
2008
//go:noescape
2009
func mulAvxTwo_8x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2010

2011
// mulAvxTwo_8x10 takes 8 inputs and produces 10 outputs.
2012
// The output is initialized to 0.
2013
//
2014
//go:noescape
2015
func mulAvxTwo_8x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2016

2017
// mulGFNI_8x10_64 takes 8 inputs and produces 10 outputs.
2018
// The output is initialized to 0.
2019
//
2020
//go:noescape
2021
func mulGFNI_8x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2022

2023
// mulGFNI_8x10_64Xor takes 8 inputs and produces 10 outputs.
2024
//
2025
//go:noescape
2026
func mulGFNI_8x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2027

2028
// mulAvxTwo_8x10Xor takes 8 inputs and produces 10 outputs.
2029
//
2030
//go:noescape
2031
func mulAvxTwo_8x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2032

2033
// mulAvxTwo_9x1 takes 9 inputs and produces 1 outputs.
2034
// The output is initialized to 0.
2035
//
2036
//go:noescape
2037
func mulAvxTwo_9x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2038

2039
// mulAvxTwo_9x1_64 takes 9 inputs and produces 1 outputs.
2040
// The output is initialized to 0.
2041
//
2042
//go:noescape
2043
func mulAvxTwo_9x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2044

2045
// mulGFNI_9x1_64 takes 9 inputs and produces 1 outputs.
2046
// The output is initialized to 0.
2047
//
2048
//go:noescape
2049
func mulGFNI_9x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2050

2051
// mulGFNI_9x1_64Xor takes 9 inputs and produces 1 outputs.
2052
//
2053
//go:noescape
2054
func mulGFNI_9x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2055

2056
// mulAvxTwo_9x1Xor takes 9 inputs and produces 1 outputs.
2057
//
2058
//go:noescape
2059
func mulAvxTwo_9x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2060

2061
// mulAvxTwo_9x1_64Xor takes 9 inputs and produces 1 outputs.
2062
//
2063
//go:noescape
2064
func mulAvxTwo_9x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2065

2066
// mulAvxTwo_9x2 takes 9 inputs and produces 2 outputs.
2067
// The output is initialized to 0.
2068
//
2069
//go:noescape
2070
func mulAvxTwo_9x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2071

2072
// mulAvxTwo_9x2_64 takes 9 inputs and produces 2 outputs.
2073
// The output is initialized to 0.
2074
//
2075
//go:noescape
2076
func mulAvxTwo_9x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2077

2078
// mulGFNI_9x2_64 takes 9 inputs and produces 2 outputs.
2079
// The output is initialized to 0.
2080
//
2081
//go:noescape
2082
func mulGFNI_9x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2083

2084
// mulGFNI_9x2_64Xor takes 9 inputs and produces 2 outputs.
2085
//
2086
//go:noescape
2087
func mulGFNI_9x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2088

2089
// mulAvxTwo_9x2Xor takes 9 inputs and produces 2 outputs.
2090
//
2091
//go:noescape
2092
func mulAvxTwo_9x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2093

2094
// mulAvxTwo_9x2_64Xor takes 9 inputs and produces 2 outputs.
2095
//
2096
//go:noescape
2097
func mulAvxTwo_9x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2098

2099
// mulAvxTwo_9x3 takes 9 inputs and produces 3 outputs.
2100
// The output is initialized to 0.
2101
//
2102
//go:noescape
2103
func mulAvxTwo_9x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2104

2105
// mulAvxTwo_9x3_64 takes 9 inputs and produces 3 outputs.
2106
// The output is initialized to 0.
2107
//
2108
//go:noescape
2109
func mulAvxTwo_9x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2110

2111
// mulGFNI_9x3_64 takes 9 inputs and produces 3 outputs.
2112
// The output is initialized to 0.
2113
//
2114
//go:noescape
2115
func mulGFNI_9x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2116

2117
// mulGFNI_9x3_64Xor takes 9 inputs and produces 3 outputs.
2118
//
2119
//go:noescape
2120
func mulGFNI_9x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2121

2122
// mulAvxTwo_9x3Xor takes 9 inputs and produces 3 outputs.
2123
//
2124
//go:noescape
2125
func mulAvxTwo_9x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2126

2127
// mulAvxTwo_9x3_64Xor takes 9 inputs and produces 3 outputs.
2128
//
2129
//go:noescape
2130
func mulAvxTwo_9x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2131

2132
// mulAvxTwo_9x4 takes 9 inputs and produces 4 outputs.
2133
// The output is initialized to 0.
2134
//
2135
//go:noescape
2136
func mulAvxTwo_9x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2137

2138
// mulGFNI_9x4_64 takes 9 inputs and produces 4 outputs.
2139
// The output is initialized to 0.
2140
//
2141
//go:noescape
2142
func mulGFNI_9x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2143

2144
// mulGFNI_9x4_64Xor takes 9 inputs and produces 4 outputs.
2145
//
2146
//go:noescape
2147
func mulGFNI_9x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2148

2149
// mulAvxTwo_9x4Xor takes 9 inputs and produces 4 outputs.
2150
//
2151
//go:noescape
2152
func mulAvxTwo_9x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2153

2154
// mulAvxTwo_9x5 takes 9 inputs and produces 5 outputs.
2155
// The output is initialized to 0.
2156
//
2157
//go:noescape
2158
func mulAvxTwo_9x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2159

2160
// mulGFNI_9x5_64 takes 9 inputs and produces 5 outputs.
2161
// The output is initialized to 0.
2162
//
2163
//go:noescape
2164
func mulGFNI_9x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2165

2166
// mulGFNI_9x5_64Xor takes 9 inputs and produces 5 outputs.
2167
//
2168
//go:noescape
2169
func mulGFNI_9x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2170

2171
// mulAvxTwo_9x5Xor takes 9 inputs and produces 5 outputs.
2172
//
2173
//go:noescape
2174
func mulAvxTwo_9x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2175

2176
// mulAvxTwo_9x6 takes 9 inputs and produces 6 outputs.
2177
// The output is initialized to 0.
2178
//
2179
//go:noescape
2180
func mulAvxTwo_9x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2181

2182
// mulGFNI_9x6_64 takes 9 inputs and produces 6 outputs.
2183
// The output is initialized to 0.
2184
//
2185
//go:noescape
2186
func mulGFNI_9x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2187

2188
// mulGFNI_9x6_64Xor takes 9 inputs and produces 6 outputs.
2189
//
2190
//go:noescape
2191
func mulGFNI_9x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2192

2193
// mulAvxTwo_9x6Xor takes 9 inputs and produces 6 outputs.
2194
//
2195
//go:noescape
2196
func mulAvxTwo_9x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2197

2198
// mulAvxTwo_9x7 takes 9 inputs and produces 7 outputs.
2199
// The output is initialized to 0.
2200
//
2201
//go:noescape
2202
func mulAvxTwo_9x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2203

2204
// mulGFNI_9x7_64 takes 9 inputs and produces 7 outputs.
2205
// The output is initialized to 0.
2206
//
2207
//go:noescape
2208
func mulGFNI_9x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2209

2210
// mulGFNI_9x7_64Xor takes 9 inputs and produces 7 outputs.
2211
//
2212
//go:noescape
2213
func mulGFNI_9x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2214

2215
// mulAvxTwo_9x7Xor takes 9 inputs and produces 7 outputs.
2216
//
2217
//go:noescape
2218
func mulAvxTwo_9x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2219

2220
// mulAvxTwo_9x8 takes 9 inputs and produces 8 outputs.
2221
// The output is initialized to 0.
2222
//
2223
//go:noescape
2224
func mulAvxTwo_9x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2225

2226
// mulGFNI_9x8_64 takes 9 inputs and produces 8 outputs.
2227
// The output is initialized to 0.
2228
//
2229
//go:noescape
2230
func mulGFNI_9x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2231

2232
// mulGFNI_9x8_64Xor takes 9 inputs and produces 8 outputs.
2233
//
2234
//go:noescape
2235
func mulGFNI_9x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2236

2237
// mulAvxTwo_9x8Xor takes 9 inputs and produces 8 outputs.
2238
//
2239
//go:noescape
2240
func mulAvxTwo_9x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2241

2242
// mulAvxTwo_9x9 takes 9 inputs and produces 9 outputs.
2243
// The output is initialized to 0.
2244
//
2245
//go:noescape
2246
func mulAvxTwo_9x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2247

2248
// mulGFNI_9x9_64 takes 9 inputs and produces 9 outputs.
2249
// The output is initialized to 0.
2250
//
2251
//go:noescape
2252
func mulGFNI_9x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2253

2254
// mulGFNI_9x9_64Xor takes 9 inputs and produces 9 outputs.
2255
//
2256
//go:noescape
2257
func mulGFNI_9x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2258

2259
// mulAvxTwo_9x9Xor takes 9 inputs and produces 9 outputs.
2260
//
2261
//go:noescape
2262
func mulAvxTwo_9x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2263

2264
// mulAvxTwo_9x10 takes 9 inputs and produces 10 outputs.
2265
// The output is initialized to 0.
2266
//
2267
//go:noescape
2268
func mulAvxTwo_9x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2269

2270
// mulGFNI_9x10_64 takes 9 inputs and produces 10 outputs.
2271
// The output is initialized to 0.
2272
//
2273
//go:noescape
2274
func mulGFNI_9x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2275

2276
// mulGFNI_9x10_64Xor takes 9 inputs and produces 10 outputs.
2277
//
2278
//go:noescape
2279
func mulGFNI_9x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2280

2281
// mulAvxTwo_9x10Xor takes 9 inputs and produces 10 outputs.
2282
//
2283
//go:noescape
2284
func mulAvxTwo_9x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2285

2286
// mulAvxTwo_10x1 takes 10 inputs and produces 1 outputs.
2287
// The output is initialized to 0.
2288
//
2289
//go:noescape
2290
func mulAvxTwo_10x1(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2291

2292
// mulAvxTwo_10x1_64 takes 10 inputs and produces 1 outputs.
2293
// The output is initialized to 0.
2294
//
2295
//go:noescape
2296
func mulAvxTwo_10x1_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2297

2298
// mulGFNI_10x1_64 takes 10 inputs and produces 1 outputs.
2299
// The output is initialized to 0.
2300
//
2301
//go:noescape
2302
func mulGFNI_10x1_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2303

2304
// mulGFNI_10x1_64Xor takes 10 inputs and produces 1 outputs.
2305
//
2306
//go:noescape
2307
func mulGFNI_10x1_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2308

2309
// mulAvxTwo_10x1Xor takes 10 inputs and produces 1 outputs.
2310
//
2311
//go:noescape
2312
func mulAvxTwo_10x1Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2313

2314
// mulAvxTwo_10x1_64Xor takes 10 inputs and produces 1 outputs.
2315
//
2316
//go:noescape
2317
func mulAvxTwo_10x1_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2318

2319
// mulAvxTwo_10x2 takes 10 inputs and produces 2 outputs.
2320
// The output is initialized to 0.
2321
//
2322
//go:noescape
2323
func mulAvxTwo_10x2(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2324

2325
// mulAvxTwo_10x2_64 takes 10 inputs and produces 2 outputs.
2326
// The output is initialized to 0.
2327
//
2328
//go:noescape
2329
func mulAvxTwo_10x2_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2330

2331
// mulGFNI_10x2_64 takes 10 inputs and produces 2 outputs.
2332
// The output is initialized to 0.
2333
//
2334
//go:noescape
2335
func mulGFNI_10x2_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2336

2337
// mulGFNI_10x2_64Xor takes 10 inputs and produces 2 outputs.
2338
//
2339
//go:noescape
2340
func mulGFNI_10x2_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2341

2342
// mulAvxTwo_10x2Xor takes 10 inputs and produces 2 outputs.
2343
//
2344
//go:noescape
2345
func mulAvxTwo_10x2Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2346

2347
// mulAvxTwo_10x2_64Xor takes 10 inputs and produces 2 outputs.
2348
//
2349
//go:noescape
2350
func mulAvxTwo_10x2_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2351

2352
// mulAvxTwo_10x3 takes 10 inputs and produces 3 outputs.
2353
// The output is initialized to 0.
2354
//
2355
//go:noescape
2356
func mulAvxTwo_10x3(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2357

2358
// mulAvxTwo_10x3_64 takes 10 inputs and produces 3 outputs.
2359
// The output is initialized to 0.
2360
//
2361
//go:noescape
2362
func mulAvxTwo_10x3_64(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2363

2364
// mulGFNI_10x3_64 takes 10 inputs and produces 3 outputs.
2365
// The output is initialized to 0.
2366
//
2367
//go:noescape
2368
func mulGFNI_10x3_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2369

2370
// mulGFNI_10x3_64Xor takes 10 inputs and produces 3 outputs.
2371
//
2372
//go:noescape
2373
func mulGFNI_10x3_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2374

2375
// mulAvxTwo_10x3Xor takes 10 inputs and produces 3 outputs.
2376
//
2377
//go:noescape
2378
func mulAvxTwo_10x3Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2379

2380
// mulAvxTwo_10x3_64Xor takes 10 inputs and produces 3 outputs.
2381
//
2382
//go:noescape
2383
func mulAvxTwo_10x3_64Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2384

2385
// mulAvxTwo_10x4 takes 10 inputs and produces 4 outputs.
2386
// The output is initialized to 0.
2387
//
2388
//go:noescape
2389
func mulAvxTwo_10x4(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2390

2391
// mulGFNI_10x4_64 takes 10 inputs and produces 4 outputs.
2392
// The output is initialized to 0.
2393
//
2394
//go:noescape
2395
func mulGFNI_10x4_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2396

2397
// mulGFNI_10x4_64Xor takes 10 inputs and produces 4 outputs.
2398
//
2399
//go:noescape
2400
func mulGFNI_10x4_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2401

2402
// mulAvxTwo_10x4Xor takes 10 inputs and produces 4 outputs.
2403
//
2404
//go:noescape
2405
func mulAvxTwo_10x4Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2406

2407
// mulAvxTwo_10x5 takes 10 inputs and produces 5 outputs.
2408
// The output is initialized to 0.
2409
//
2410
//go:noescape
2411
func mulAvxTwo_10x5(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2412

2413
// mulGFNI_10x5_64 takes 10 inputs and produces 5 outputs.
2414
// The output is initialized to 0.
2415
//
2416
//go:noescape
2417
func mulGFNI_10x5_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2418

2419
// mulGFNI_10x5_64Xor takes 10 inputs and produces 5 outputs.
2420
//
2421
//go:noescape
2422
func mulGFNI_10x5_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2423

2424
// mulAvxTwo_10x5Xor takes 10 inputs and produces 5 outputs.
2425
//
2426
//go:noescape
2427
func mulAvxTwo_10x5Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2428

2429
// mulAvxTwo_10x6 takes 10 inputs and produces 6 outputs.
2430
// The output is initialized to 0.
2431
//
2432
//go:noescape
2433
func mulAvxTwo_10x6(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2434

2435
// mulGFNI_10x6_64 takes 10 inputs and produces 6 outputs.
2436
// The output is initialized to 0.
2437
//
2438
//go:noescape
2439
func mulGFNI_10x6_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2440

2441
// mulGFNI_10x6_64Xor takes 10 inputs and produces 6 outputs.
2442
//
2443
//go:noescape
2444
func mulGFNI_10x6_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2445

2446
// mulAvxTwo_10x6Xor takes 10 inputs and produces 6 outputs.
2447
//
2448
//go:noescape
2449
func mulAvxTwo_10x6Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2450

2451
// mulAvxTwo_10x7 takes 10 inputs and produces 7 outputs.
2452
// The output is initialized to 0.
2453
//
2454
//go:noescape
2455
func mulAvxTwo_10x7(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2456

2457
// mulGFNI_10x7_64 takes 10 inputs and produces 7 outputs.
2458
// The output is initialized to 0.
2459
//
2460
//go:noescape
2461
func mulGFNI_10x7_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2462

2463
// mulGFNI_10x7_64Xor takes 10 inputs and produces 7 outputs.
2464
//
2465
//go:noescape
2466
func mulGFNI_10x7_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2467

2468
// mulAvxTwo_10x7Xor takes 10 inputs and produces 7 outputs.
2469
//
2470
//go:noescape
2471
func mulAvxTwo_10x7Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2472

2473
// mulAvxTwo_10x8 takes 10 inputs and produces 8 outputs.
2474
// The output is initialized to 0.
2475
//
2476
//go:noescape
2477
func mulAvxTwo_10x8(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2478

2479
// mulGFNI_10x8_64 takes 10 inputs and produces 8 outputs.
2480
// The output is initialized to 0.
2481
//
2482
//go:noescape
2483
func mulGFNI_10x8_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2484

2485
// mulGFNI_10x8_64Xor takes 10 inputs and produces 8 outputs.
2486
//
2487
//go:noescape
2488
func mulGFNI_10x8_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2489

2490
// mulAvxTwo_10x8Xor takes 10 inputs and produces 8 outputs.
2491
//
2492
//go:noescape
2493
func mulAvxTwo_10x8Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2494

2495
// mulAvxTwo_10x9 takes 10 inputs and produces 9 outputs.
2496
// The output is initialized to 0.
2497
//
2498
//go:noescape
2499
func mulAvxTwo_10x9(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2500

2501
// mulGFNI_10x9_64 takes 10 inputs and produces 9 outputs.
2502
// The output is initialized to 0.
2503
//
2504
//go:noescape
2505
func mulGFNI_10x9_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2506

2507
// mulGFNI_10x9_64Xor takes 10 inputs and produces 9 outputs.
2508
//
2509
//go:noescape
2510
func mulGFNI_10x9_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2511

2512
// mulAvxTwo_10x9Xor takes 10 inputs and produces 9 outputs.
2513
//
2514
//go:noescape
2515
func mulAvxTwo_10x9Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2516

2517
// mulAvxTwo_10x10 takes 10 inputs and produces 10 outputs.
2518
// The output is initialized to 0.
2519
//
2520
//go:noescape
2521
func mulAvxTwo_10x10(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2522

2523
// mulGFNI_10x10_64 takes 10 inputs and produces 10 outputs.
2524
// The output is initialized to 0.
2525
//
2526
//go:noescape
2527
func mulGFNI_10x10_64(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2528

2529
// mulGFNI_10x10_64Xor takes 10 inputs and produces 10 outputs.
2530
//
2531
//go:noescape
2532
func mulGFNI_10x10_64Xor(matrix []uint64, in [][]byte, out [][]byte, start int, n int)
2533

2534
// mulAvxTwo_10x10Xor takes 10 inputs and produces 10 outputs.
2535
//
2536
//go:noescape
2537
func mulAvxTwo_10x10Xor(matrix []byte, in [][]byte, out [][]byte, start int, n int)
2538

2539
//go:noescape
2540
func ifftDIT2_avx2(x []byte, y []byte, table *[128]uint8)
2541

2542
//go:noescape
2543
func fftDIT2_avx2(x []byte, y []byte, table *[128]uint8)
2544

2545
//go:noescape
2546
func mulgf16_avx2(x []byte, y []byte, table *[128]uint8)
2547

2548
//go:noescape
2549
func ifftDIT4_avx512_0(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2550

2551
//go:noescape
2552
func fftDIT4_avx512_0(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2553

2554
//go:noescape
2555
func ifftDIT4_avx512_1(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2556

2557
//go:noescape
2558
func fftDIT4_avx512_1(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2559

2560
//go:noescape
2561
func ifftDIT4_avx512_2(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2562

2563
//go:noescape
2564
func fftDIT4_avx512_2(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2565

2566
//go:noescape
2567
func ifftDIT4_avx512_3(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2568

2569
//go:noescape
2570
func fftDIT4_avx512_3(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2571

2572
//go:noescape
2573
func ifftDIT4_avx512_4(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2574

2575
//go:noescape
2576
func fftDIT4_avx512_4(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2577

2578
//go:noescape
2579
func ifftDIT4_avx512_5(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2580

2581
//go:noescape
2582
func fftDIT4_avx512_5(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2583

2584
//go:noescape
2585
func ifftDIT4_avx512_6(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2586

2587
//go:noescape
2588
func fftDIT4_avx512_6(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2589

2590
//go:noescape
2591
func ifftDIT4_avx512_7(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2592

2593
//go:noescape
2594
func fftDIT4_avx512_7(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2595

2596
//go:noescape
2597
func ifftDIT4_avx2_0(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2598

2599
//go:noescape
2600
func fftDIT4_avx2_0(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2601

2602
//go:noescape
2603
func ifftDIT4_avx2_1(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2604

2605
//go:noescape
2606
func fftDIT4_avx2_1(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2607

2608
//go:noescape
2609
func ifftDIT4_avx2_2(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2610

2611
//go:noescape
2612
func fftDIT4_avx2_2(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2613

2614
//go:noescape
2615
func ifftDIT4_avx2_3(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2616

2617
//go:noescape
2618
func fftDIT4_avx2_3(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2619

2620
//go:noescape
2621
func ifftDIT4_avx2_4(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2622

2623
//go:noescape
2624
func fftDIT4_avx2_4(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2625

2626
//go:noescape
2627
func ifftDIT4_avx2_5(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2628

2629
//go:noescape
2630
func fftDIT4_avx2_5(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2631

2632
//go:noescape
2633
func ifftDIT4_avx2_6(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2634

2635
//go:noescape
2636
func fftDIT4_avx2_6(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2637

2638
//go:noescape
2639
func ifftDIT4_avx2_7(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2640

2641
//go:noescape
2642
func fftDIT4_avx2_7(work [][]byte, dist int, table01 *[128]uint8, table23 *[128]uint8, table02 *[128]uint8)
2643

2644
//go:noescape
2645
func ifftDIT2_ssse3(x []byte, y []byte, table *[128]uint8)
2646

2647
//go:noescape
2648
func fftDIT2_ssse3(x []byte, y []byte, table *[128]uint8)
2649

2650
//go:noescape
2651
func mulgf16_ssse3(x []byte, y []byte, table *[128]uint8)
2652

2653
//go:noescape
2654
func ifftDIT28_avx2(x []byte, y []byte, table *[32]uint8)
2655

2656
//go:noescape
2657
func fftDIT28_avx2(x []byte, y []byte, table *[32]uint8)
2658

2659
//go:noescape
2660
func ifftDIT48_avx2_0(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2661

2662
//go:noescape
2663
func fftDIT48_avx2_0(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2664

2665
//go:noescape
2666
func ifftDIT48_avx2_1(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2667

2668
//go:noescape
2669
func fftDIT48_avx2_1(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2670

2671
//go:noescape
2672
func ifftDIT48_avx2_2(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2673

2674
//go:noescape
2675
func fftDIT48_avx2_2(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2676

2677
//go:noescape
2678
func ifftDIT48_avx2_3(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2679

2680
//go:noescape
2681
func fftDIT48_avx2_3(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2682

2683
//go:noescape
2684
func ifftDIT48_avx2_4(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2685

2686
//go:noescape
2687
func fftDIT48_avx2_4(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2688

2689
//go:noescape
2690
func ifftDIT48_avx2_5(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2691

2692
//go:noescape
2693
func fftDIT48_avx2_5(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2694

2695
//go:noescape
2696
func ifftDIT48_avx2_6(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2697

2698
//go:noescape
2699
func fftDIT48_avx2_6(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2700

2701
//go:noescape
2702
func ifftDIT48_avx2_7(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2703

2704
//go:noescape
2705
func fftDIT48_avx2_7(work [][]byte, dist int, t01 *[32]uint8, t23 *[32]uint8, t02 *[32]uint8)
2706

2707
//go:noescape
2708
func ifftDIT48_gfni_0(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2709

2710
//go:noescape
2711
func fftDIT48_gfni_0(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2712

2713
//go:noescape
2714
func ifftDIT48_gfni_1(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2715

2716
//go:noescape
2717
func fftDIT48_gfni_1(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2718

2719
//go:noescape
2720
func ifftDIT48_gfni_2(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2721

2722
//go:noescape
2723
func fftDIT48_gfni_2(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2724

2725
//go:noescape
2726
func ifftDIT48_gfni_3(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2727

2728
//go:noescape
2729
func fftDIT48_gfni_3(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2730

2731
//go:noescape
2732
func ifftDIT48_gfni_4(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2733

2734
//go:noescape
2735
func fftDIT48_gfni_4(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2736

2737
//go:noescape
2738
func ifftDIT48_gfni_5(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2739

2740
//go:noescape
2741
func fftDIT48_gfni_5(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2742

2743
//go:noescape
2744
func ifftDIT48_gfni_6(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2745

2746
//go:noescape
2747
func fftDIT48_gfni_6(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2748

2749
//go:noescape
2750
func ifftDIT48_gfni_7(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2751

2752
//go:noescape
2753
func fftDIT48_gfni_7(work [][]byte, dist int, t01 uint64, t23 uint64, t02 uint64)
2754

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.