Coverage Report

Created: 2024-01-17 10:31

/src/build/lib/Target/LoongArch/LoongArchGenAsmMatcher.inc
Line
Count
Source (jump to first uncovered line)
1
/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\
2
|*                                                                            *|
3
|* Assembly Matcher Source Fragment                                           *|
4
|*                                                                            *|
5
|* Automatically generated file, do not edit!                                 *|
6
|* From: LoongArch.td                                                         *|
7
|*                                                                            *|
8
\*===----------------------------------------------------------------------===*/
9
10
11
#ifdef GET_ASSEMBLER_HEADER
12
#undef GET_ASSEMBLER_HEADER
13
  // This should be included into the middle of the declaration of
14
  // your subclasses implementation of MCTargetAsmParser.
15
  FeatureBitset ComputeAvailableFeatures(const FeatureBitset &FB) const;
16
  void convertToMCInst(unsigned Kind, MCInst &Inst, unsigned Opcode,
17
                       const OperandVector &Operands);
18
  void convertToMapAndConstraints(unsigned Kind,
19
                           const OperandVector &Operands) override;
20
  unsigned MatchInstructionImpl(const OperandVector &Operands,
21
                                MCInst &Inst,
22
                                uint64_t &ErrorInfo,
23
                                FeatureBitset &MissingFeatures,
24
                                bool matchingInlineAsm,
25
                                unsigned VariantID = 0);
26
  unsigned MatchInstructionImpl(const OperandVector &Operands,
27
                                MCInst &Inst,
28
                                uint64_t &ErrorInfo,
29
                                bool matchingInlineAsm,
30
0
                                unsigned VariantID = 0) {
31
0
    FeatureBitset MissingFeatures;
32
0
    return MatchInstructionImpl(Operands, Inst, ErrorInfo, MissingFeatures,
33
0
                                matchingInlineAsm, VariantID);
34
0
  }
35
36
  ParseStatus MatchOperandParserImpl(
37
    OperandVector &Operands,
38
    StringRef Mnemonic,
39
    bool ParseForAllFeatures = false);
40
  ParseStatus tryCustomParseOperand(
41
    OperandVector &Operands,
42
    unsigned MCK);
43
44
#endif // GET_ASSEMBLER_HEADER
45
46
47
#ifdef GET_OPERAND_DIAGNOSTIC_TYPES
48
#undef GET_OPERAND_DIAGNOSTIC_TYPES
49
50
  Match_InvalidBareSymbol,
51
  Match_InvalidImm32,
52
  Match_InvalidSImm10,
53
  Match_InvalidSImm10lsl2,
54
  Match_InvalidSImm11lsl1,
55
  Match_InvalidSImm12,
56
  Match_InvalidSImm12addlike,
57
  Match_InvalidSImm12lu52id,
58
  Match_InvalidSImm13,
59
  Match_InvalidSImm14lsl2,
60
  Match_InvalidSImm16,
61
  Match_InvalidSImm16lsl2,
62
  Match_InvalidSImm20,
63
  Match_InvalidSImm20lu12iw,
64
  Match_InvalidSImm20lu32id,
65
  Match_InvalidSImm20pcaddu18i,
66
  Match_InvalidSImm20pcalau12i,
67
  Match_InvalidSImm21lsl2,
68
  Match_InvalidSImm26Operand,
69
  Match_InvalidSImm5,
70
  Match_InvalidSImm8,
71
  Match_InvalidSImm8lsl1,
72
  Match_InvalidSImm8lsl2,
73
  Match_InvalidSImm8lsl3,
74
  Match_InvalidSImm9lsl3,
75
  Match_InvalidUImm1,
76
  Match_InvalidUImm12,
77
  Match_InvalidUImm12ori,
78
  Match_InvalidUImm14,
79
  Match_InvalidUImm15,
80
  Match_InvalidUImm2,
81
  Match_InvalidUImm2plus1,
82
  Match_InvalidUImm3,
83
  Match_InvalidUImm4,
84
  Match_InvalidUImm5,
85
  Match_InvalidUImm6,
86
  Match_InvalidUImm7,
87
  Match_InvalidUImm8,
88
  END_OPERAND_DIAGNOSTIC_TYPES
89
#endif // GET_OPERAND_DIAGNOSTIC_TYPES
90
91
92
#ifdef GET_REGISTER_MATCHER
93
#undef GET_REGISTER_MATCHER
94
95
// Bits for subtarget features that participate in instruction matching.
96
enum SubtargetFeatureBits : uint8_t {
97
  Feature_IsLA64Bit = 4,
98
  Feature_IsLA32Bit = 3,
99
  Feature_HasLaGlobalWithPcrelBit = 1,
100
  Feature_HasLaGlobalWithAbsBit = 0,
101
  Feature_HasLaLocalWithAbsBit = 2,
102
};
103
104
0
static unsigned MatchRegisterName(StringRef Name) {
105
0
  switch (Name.size()) {
106
0
  default: break;
107
0
  case 2:  // 30 strings to match.
108
0
    switch (Name[0]) {
109
0
    default: break;
110
0
    case 'f':  // 20 strings to match.
111
0
      switch (Name[1]) {
112
0
      default: break;
113
0
      case '0':  // 2 strings to match.
114
0
        return 1;  // "f0"
115
0
      case '1':  // 2 strings to match.
116
0
        return 2;  // "f1"
117
0
      case '2':  // 2 strings to match.
118
0
        return 3;  // "f2"
119
0
      case '3':  // 2 strings to match.
120
0
        return 4;  // "f3"
121
0
      case '4':  // 2 strings to match.
122
0
        return 5;  // "f4"
123
0
      case '5':  // 2 strings to match.
124
0
        return 6;  // "f5"
125
0
      case '6':  // 2 strings to match.
126
0
        return 7;  // "f6"
127
0
      case '7':  // 2 strings to match.
128
0
        return 8;  // "f7"
129
0
      case '8':  // 2 strings to match.
130
0
        return 9;  // "f8"
131
0
      case '9':  // 2 strings to match.
132
0
        return 10;  // "f9"
133
0
      }
134
0
      break;
135
0
    case 'r':  // 10 strings to match.
136
0
      switch (Name[1]) {
137
0
      default: break;
138
0
      case '0':  // 1 string to match.
139
0
        return 45;  // "r0"
140
0
      case '1':  // 1 string to match.
141
0
        return 46;  // "r1"
142
0
      case '2':  // 1 string to match.
143
0
        return 47;  // "r2"
144
0
      case '3':  // 1 string to match.
145
0
        return 48;  // "r3"
146
0
      case '4':  // 1 string to match.
147
0
        return 49;  // "r4"
148
0
      case '5':  // 1 string to match.
149
0
        return 50;  // "r5"
150
0
      case '6':  // 1 string to match.
151
0
        return 51;  // "r6"
152
0
      case '7':  // 1 string to match.
153
0
        return 52;  // "r7"
154
0
      case '8':  // 1 string to match.
155
0
        return 53;  // "r8"
156
0
      case '9':  // 1 string to match.
157
0
        return 54;  // "r9"
158
0
      }
159
0
      break;
160
0
    }
161
0
    break;
162
0
  case 3:  // 86 strings to match.
163
0
    switch (Name[0]) {
164
0
    default: break;
165
0
    case 'f':  // 44 strings to match.
166
0
      switch (Name[1]) {
167
0
      default: break;
168
0
      case '1':  // 20 strings to match.
169
0
        switch (Name[2]) {
170
0
        default: break;
171
0
        case '0':  // 2 strings to match.
172
0
          return 11;  // "f10"
173
0
        case '1':  // 2 strings to match.
174
0
          return 12;  // "f11"
175
0
        case '2':  // 2 strings to match.
176
0
          return 13;  // "f12"
177
0
        case '3':  // 2 strings to match.
178
0
          return 14;  // "f13"
179
0
        case '4':  // 2 strings to match.
180
0
          return 15;  // "f14"
181
0
        case '5':  // 2 strings to match.
182
0
          return 16;  // "f15"
183
0
        case '6':  // 2 strings to match.
184
0
          return 17;  // "f16"
185
0
        case '7':  // 2 strings to match.
186
0
          return 18;  // "f17"
187
0
        case '8':  // 2 strings to match.
188
0
          return 19;  // "f18"
189
0
        case '9':  // 2 strings to match.
190
0
          return 20;  // "f19"
191
0
        }
192
0
        break;
193
0
      case '2':  // 20 strings to match.
194
0
        switch (Name[2]) {
195
0
        default: break;
196
0
        case '0':  // 2 strings to match.
197
0
          return 21;  // "f20"
198
0
        case '1':  // 2 strings to match.
199
0
          return 22;  // "f21"
200
0
        case '2':  // 2 strings to match.
201
0
          return 23;  // "f22"
202
0
        case '3':  // 2 strings to match.
203
0
          return 24;  // "f23"
204
0
        case '4':  // 2 strings to match.
205
0
          return 25;  // "f24"
206
0
        case '5':  // 2 strings to match.
207
0
          return 26;  // "f25"
208
0
        case '6':  // 2 strings to match.
209
0
          return 27;  // "f26"
210
0
        case '7':  // 2 strings to match.
211
0
          return 28;  // "f27"
212
0
        case '8':  // 2 strings to match.
213
0
          return 29;  // "f28"
214
0
        case '9':  // 2 strings to match.
215
0
          return 30;  // "f29"
216
0
        }
217
0
        break;
218
0
      case '3':  // 4 strings to match.
219
0
        switch (Name[2]) {
220
0
        default: break;
221
0
        case '0':  // 2 strings to match.
222
0
          return 31;  // "f30"
223
0
        case '1':  // 2 strings to match.
224
0
          return 32;  // "f31"
225
0
        }
226
0
        break;
227
0
      }
228
0
      break;
229
0
    case 'r':  // 22 strings to match.
230
0
      switch (Name[1]) {
231
0
      default: break;
232
0
      case '1':  // 10 strings to match.
233
0
        switch (Name[2]) {
234
0
        default: break;
235
0
        case '0':  // 1 string to match.
236
0
          return 55;  // "r10"
237
0
        case '1':  // 1 string to match.
238
0
          return 56;  // "r11"
239
0
        case '2':  // 1 string to match.
240
0
          return 57;  // "r12"
241
0
        case '3':  // 1 string to match.
242
0
          return 58;  // "r13"
243
0
        case '4':  // 1 string to match.
244
0
          return 59;  // "r14"
245
0
        case '5':  // 1 string to match.
246
0
          return 60;  // "r15"
247
0
        case '6':  // 1 string to match.
248
0
          return 61;  // "r16"
249
0
        case '7':  // 1 string to match.
250
0
          return 62;  // "r17"
251
0
        case '8':  // 1 string to match.
252
0
          return 63;  // "r18"
253
0
        case '9':  // 1 string to match.
254
0
          return 64;  // "r19"
255
0
        }
256
0
        break;
257
0
      case '2':  // 10 strings to match.
258
0
        switch (Name[2]) {
259
0
        default: break;
260
0
        case '0':  // 1 string to match.
261
0
          return 65;  // "r20"
262
0
        case '1':  // 1 string to match.
263
0
          return 66;  // "r21"
264
0
        case '2':  // 1 string to match.
265
0
          return 67;  // "r22"
266
0
        case '3':  // 1 string to match.
267
0
          return 68;  // "r23"
268
0
        case '4':  // 1 string to match.
269
0
          return 69;  // "r24"
270
0
        case '5':  // 1 string to match.
271
0
          return 70;  // "r25"
272
0
        case '6':  // 1 string to match.
273
0
          return 71;  // "r26"
274
0
        case '7':  // 1 string to match.
275
0
          return 72;  // "r27"
276
0
        case '8':  // 1 string to match.
277
0
          return 73;  // "r28"
278
0
        case '9':  // 1 string to match.
279
0
          return 74;  // "r29"
280
0
        }
281
0
        break;
282
0
      case '3':  // 2 strings to match.
283
0
        switch (Name[2]) {
284
0
        default: break;
285
0
        case '0':  // 1 string to match.
286
0
          return 75;  // "r30"
287
0
        case '1':  // 1 string to match.
288
0
          return 76;  // "r31"
289
0
        }
290
0
        break;
291
0
      }
292
0
      break;
293
0
    case 'v':  // 10 strings to match.
294
0
      if (Name[1] != 'r')
295
0
        break;
296
0
      switch (Name[2]) {
297
0
      default: break;
298
0
      case '0':  // 1 string to match.
299
0
        return 81;  // "vr0"
300
0
      case '1':  // 1 string to match.
301
0
        return 82;  // "vr1"
302
0
      case '2':  // 1 string to match.
303
0
        return 83;  // "vr2"
304
0
      case '3':  // 1 string to match.
305
0
        return 84;  // "vr3"
306
0
      case '4':  // 1 string to match.
307
0
        return 85;  // "vr4"
308
0
      case '5':  // 1 string to match.
309
0
        return 86;  // "vr5"
310
0
      case '6':  // 1 string to match.
311
0
        return 87;  // "vr6"
312
0
      case '7':  // 1 string to match.
313
0
        return 88;  // "vr7"
314
0
      case '8':  // 1 string to match.
315
0
        return 89;  // "vr8"
316
0
      case '9':  // 1 string to match.
317
0
        return 90;  // "vr9"
318
0
      }
319
0
      break;
320
0
    case 'x':  // 10 strings to match.
321
0
      if (Name[1] != 'r')
322
0
        break;
323
0
      switch (Name[2]) {
324
0
      default: break;
325
0
      case '0':  // 1 string to match.
326
0
        return 113;  // "xr0"
327
0
      case '1':  // 1 string to match.
328
0
        return 114;  // "xr1"
329
0
      case '2':  // 1 string to match.
330
0
        return 115;  // "xr2"
331
0
      case '3':  // 1 string to match.
332
0
        return 116;  // "xr3"
333
0
      case '4':  // 1 string to match.
334
0
        return 117;  // "xr4"
335
0
      case '5':  // 1 string to match.
336
0
        return 118;  // "xr5"
337
0
      case '6':  // 1 string to match.
338
0
        return 119;  // "xr6"
339
0
      case '7':  // 1 string to match.
340
0
        return 120;  // "xr7"
341
0
      case '8':  // 1 string to match.
342
0
        return 121;  // "xr8"
343
0
      case '9':  // 1 string to match.
344
0
        return 122;  // "xr9"
345
0
      }
346
0
      break;
347
0
    }
348
0
    break;
349
0
  case 4:  // 56 strings to match.
350
0
    switch (Name[0]) {
351
0
    default: break;
352
0
    case 'f':  // 8 strings to match.
353
0
      if (memcmp(Name.data()+1, "cc", 2) != 0)
354
0
        break;
355
0
      switch (Name[3]) {
356
0
      default: break;
357
0
      case '0':  // 1 string to match.
358
0
        return 33;  // "fcc0"
359
0
      case '1':  // 1 string to match.
360
0
        return 34;  // "fcc1"
361
0
      case '2':  // 1 string to match.
362
0
        return 35;  // "fcc2"
363
0
      case '3':  // 1 string to match.
364
0
        return 36;  // "fcc3"
365
0
      case '4':  // 1 string to match.
366
0
        return 37;  // "fcc4"
367
0
      case '5':  // 1 string to match.
368
0
        return 38;  // "fcc5"
369
0
      case '6':  // 1 string to match.
370
0
        return 39;  // "fcc6"
371
0
      case '7':  // 1 string to match.
372
0
        return 40;  // "fcc7"
373
0
      }
374
0
      break;
375
0
    case 's':  // 4 strings to match.
376
0
      if (memcmp(Name.data()+1, "cr", 2) != 0)
377
0
        break;
378
0
      switch (Name[3]) {
379
0
      default: break;
380
0
      case '0':  // 1 string to match.
381
0
        return 77;  // "scr0"
382
0
      case '1':  // 1 string to match.
383
0
        return 78;  // "scr1"
384
0
      case '2':  // 1 string to match.
385
0
        return 79;  // "scr2"
386
0
      case '3':  // 1 string to match.
387
0
        return 80;  // "scr3"
388
0
      }
389
0
      break;
390
0
    case 'v':  // 22 strings to match.
391
0
      if (Name[1] != 'r')
392
0
        break;
393
0
      switch (Name[2]) {
394
0
      default: break;
395
0
      case '1':  // 10 strings to match.
396
0
        switch (Name[3]) {
397
0
        default: break;
398
0
        case '0':  // 1 string to match.
399
0
          return 91;  // "vr10"
400
0
        case '1':  // 1 string to match.
401
0
          return 92;  // "vr11"
402
0
        case '2':  // 1 string to match.
403
0
          return 93;  // "vr12"
404
0
        case '3':  // 1 string to match.
405
0
          return 94;  // "vr13"
406
0
        case '4':  // 1 string to match.
407
0
          return 95;  // "vr14"
408
0
        case '5':  // 1 string to match.
409
0
          return 96;  // "vr15"
410
0
        case '6':  // 1 string to match.
411
0
          return 97;  // "vr16"
412
0
        case '7':  // 1 string to match.
413
0
          return 98;  // "vr17"
414
0
        case '8':  // 1 string to match.
415
0
          return 99;  // "vr18"
416
0
        case '9':  // 1 string to match.
417
0
          return 100;  // "vr19"
418
0
        }
419
0
        break;
420
0
      case '2':  // 10 strings to match.
421
0
        switch (Name[3]) {
422
0
        default: break;
423
0
        case '0':  // 1 string to match.
424
0
          return 101;  // "vr20"
425
0
        case '1':  // 1 string to match.
426
0
          return 102;  // "vr21"
427
0
        case '2':  // 1 string to match.
428
0
          return 103;  // "vr22"
429
0
        case '3':  // 1 string to match.
430
0
          return 104;  // "vr23"
431
0
        case '4':  // 1 string to match.
432
0
          return 105;  // "vr24"
433
0
        case '5':  // 1 string to match.
434
0
          return 106;  // "vr25"
435
0
        case '6':  // 1 string to match.
436
0
          return 107;  // "vr26"
437
0
        case '7':  // 1 string to match.
438
0
          return 108;  // "vr27"
439
0
        case '8':  // 1 string to match.
440
0
          return 109;  // "vr28"
441
0
        case '9':  // 1 string to match.
442
0
          return 110;  // "vr29"
443
0
        }
444
0
        break;
445
0
      case '3':  // 2 strings to match.
446
0
        switch (Name[3]) {
447
0
        default: break;
448
0
        case '0':  // 1 string to match.
449
0
          return 111;  // "vr30"
450
0
        case '1':  // 1 string to match.
451
0
          return 112;  // "vr31"
452
0
        }
453
0
        break;
454
0
      }
455
0
      break;
456
0
    case 'x':  // 22 strings to match.
457
0
      if (Name[1] != 'r')
458
0
        break;
459
0
      switch (Name[2]) {
460
0
      default: break;
461
0
      case '1':  // 10 strings to match.
462
0
        switch (Name[3]) {
463
0
        default: break;
464
0
        case '0':  // 1 string to match.
465
0
          return 123;  // "xr10"
466
0
        case '1':  // 1 string to match.
467
0
          return 124;  // "xr11"
468
0
        case '2':  // 1 string to match.
469
0
          return 125;  // "xr12"
470
0
        case '3':  // 1 string to match.
471
0
          return 126;  // "xr13"
472
0
        case '4':  // 1 string to match.
473
0
          return 127;  // "xr14"
474
0
        case '5':  // 1 string to match.
475
0
          return 128;  // "xr15"
476
0
        case '6':  // 1 string to match.
477
0
          return 129;  // "xr16"
478
0
        case '7':  // 1 string to match.
479
0
          return 130;  // "xr17"
480
0
        case '8':  // 1 string to match.
481
0
          return 131;  // "xr18"
482
0
        case '9':  // 1 string to match.
483
0
          return 132;  // "xr19"
484
0
        }
485
0
        break;
486
0
      case '2':  // 10 strings to match.
487
0
        switch (Name[3]) {
488
0
        default: break;
489
0
        case '0':  // 1 string to match.
490
0
          return 133;  // "xr20"
491
0
        case '1':  // 1 string to match.
492
0
          return 134;  // "xr21"
493
0
        case '2':  // 1 string to match.
494
0
          return 135;  // "xr22"
495
0
        case '3':  // 1 string to match.
496
0
          return 136;  // "xr23"
497
0
        case '4':  // 1 string to match.
498
0
          return 137;  // "xr24"
499
0
        case '5':  // 1 string to match.
500
0
          return 138;  // "xr25"
501
0
        case '6':  // 1 string to match.
502
0
          return 139;  // "xr26"
503
0
        case '7':  // 1 string to match.
504
0
          return 140;  // "xr27"
505
0
        case '8':  // 1 string to match.
506
0
          return 141;  // "xr28"
507
0
        case '9':  // 1 string to match.
508
0
          return 142;  // "xr29"
509
0
        }
510
0
        break;
511
0
      case '3':  // 2 strings to match.
512
0
        switch (Name[3]) {
513
0
        default: break;
514
0
        case '0':  // 1 string to match.
515
0
          return 143;  // "xr30"
516
0
        case '1':  // 1 string to match.
517
0
          return 144;  // "xr31"
518
0
        }
519
0
        break;
520
0
      }
521
0
      break;
522
0
    }
523
0
    break;
524
0
  case 5:  // 4 strings to match.
525
0
    if (memcmp(Name.data()+0, "fcsr", 4) != 0)
526
0
      break;
527
0
    switch (Name[4]) {
528
0
    default: break;
529
0
    case '0':  // 1 string to match.
530
0
      return 41;  // "fcsr0"
531
0
    case '1':  // 1 string to match.
532
0
      return 42;  // "fcsr1"
533
0
    case '2':  // 1 string to match.
534
0
      return 43;  // "fcsr2"
535
0
    case '3':  // 1 string to match.
536
0
      return 44;  // "fcsr3"
537
0
    }
538
0
    break;
539
0
  }
540
0
  return 0;
541
0
}
Unexecuted instantiation: LoongArchAsmParser.cpp:MatchRegisterName(llvm::StringRef)
Unexecuted instantiation: LoongArchISelLowering.cpp:MatchRegisterName(llvm::StringRef)
542
543
0
static unsigned MatchRegisterAltName(StringRef Name) {
544
0
  switch (Name.size()) {
545
0
  default: break;
546
0
  case 2:  // 31 strings to match.
547
0
    switch (Name[0]) {
548
0
    default: break;
549
0
    case 'a':  // 8 strings to match.
550
0
      switch (Name[1]) {
551
0
      default: break;
552
0
      case '0':  // 1 string to match.
553
0
        return 49;  // "a0"
554
0
      case '1':  // 1 string to match.
555
0
        return 50;  // "a1"
556
0
      case '2':  // 1 string to match.
557
0
        return 51;  // "a2"
558
0
      case '3':  // 1 string to match.
559
0
        return 52;  // "a3"
560
0
      case '4':  // 1 string to match.
561
0
        return 53;  // "a4"
562
0
      case '5':  // 1 string to match.
563
0
        return 54;  // "a5"
564
0
      case '6':  // 1 string to match.
565
0
        return 55;  // "a6"
566
0
      case '7':  // 1 string to match.
567
0
        return 56;  // "a7"
568
0
      }
569
0
      break;
570
0
    case 'f':  // 1 string to match.
571
0
      if (Name[1] != 'p')
572
0
        break;
573
0
      return 67;  // "fp"
574
0
    case 'r':  // 1 string to match.
575
0
      if (Name[1] != 'a')
576
0
        break;
577
0
      return 46;  // "ra"
578
0
    case 's':  // 11 strings to match.
579
0
      switch (Name[1]) {
580
0
      default: break;
581
0
      case '0':  // 1 string to match.
582
0
        return 68;  // "s0"
583
0
      case '1':  // 1 string to match.
584
0
        return 69;  // "s1"
585
0
      case '2':  // 1 string to match.
586
0
        return 70;  // "s2"
587
0
      case '3':  // 1 string to match.
588
0
        return 71;  // "s3"
589
0
      case '4':  // 1 string to match.
590
0
        return 72;  // "s4"
591
0
      case '5':  // 1 string to match.
592
0
        return 73;  // "s5"
593
0
      case '6':  // 1 string to match.
594
0
        return 74;  // "s6"
595
0
      case '7':  // 1 string to match.
596
0
        return 75;  // "s7"
597
0
      case '8':  // 1 string to match.
598
0
        return 76;  // "s8"
599
0
      case '9':  // 1 string to match.
600
0
        return 67;  // "s9"
601
0
      case 'p':  // 1 string to match.
602
0
        return 48;  // "sp"
603
0
      }
604
0
      break;
605
0
    case 't':  // 10 strings to match.
606
0
      switch (Name[1]) {
607
0
      default: break;
608
0
      case '0':  // 1 string to match.
609
0
        return 57;  // "t0"
610
0
      case '1':  // 1 string to match.
611
0
        return 58;  // "t1"
612
0
      case '2':  // 1 string to match.
613
0
        return 59;  // "t2"
614
0
      case '3':  // 1 string to match.
615
0
        return 60;  // "t3"
616
0
      case '4':  // 1 string to match.
617
0
        return 61;  // "t4"
618
0
      case '5':  // 1 string to match.
619
0
        return 62;  // "t5"
620
0
      case '6':  // 1 string to match.
621
0
        return 63;  // "t6"
622
0
      case '7':  // 1 string to match.
623
0
        return 64;  // "t7"
624
0
      case '8':  // 1 string to match.
625
0
        return 65;  // "t8"
626
0
      case 'p':  // 1 string to match.
627
0
        return 47;  // "tp"
628
0
      }
629
0
      break;
630
0
    }
631
0
    break;
632
0
  case 3:  // 52 strings to match.
633
0
    if (Name[0] != 'f')
634
0
      break;
635
0
    switch (Name[1]) {
636
0
    default: break;
637
0
    case 'a':  // 16 strings to match.
638
0
      switch (Name[2]) {
639
0
      default: break;
640
0
      case '0':  // 2 strings to match.
641
0
        return 1;  // "fa0"
642
0
      case '1':  // 2 strings to match.
643
0
        return 2;  // "fa1"
644
0
      case '2':  // 2 strings to match.
645
0
        return 3;  // "fa2"
646
0
      case '3':  // 2 strings to match.
647
0
        return 4;  // "fa3"
648
0
      case '4':  // 2 strings to match.
649
0
        return 5;  // "fa4"
650
0
      case '5':  // 2 strings to match.
651
0
        return 6;  // "fa5"
652
0
      case '6':  // 2 strings to match.
653
0
        return 7;  // "fa6"
654
0
      case '7':  // 2 strings to match.
655
0
        return 8;  // "fa7"
656
0
      }
657
0
      break;
658
0
    case 's':  // 16 strings to match.
659
0
      switch (Name[2]) {
660
0
      default: break;
661
0
      case '0':  // 2 strings to match.
662
0
        return 25;  // "fs0"
663
0
      case '1':  // 2 strings to match.
664
0
        return 26;  // "fs1"
665
0
      case '2':  // 2 strings to match.
666
0
        return 27;  // "fs2"
667
0
      case '3':  // 2 strings to match.
668
0
        return 28;  // "fs3"
669
0
      case '4':  // 2 strings to match.
670
0
        return 29;  // "fs4"
671
0
      case '5':  // 2 strings to match.
672
0
        return 30;  // "fs5"
673
0
      case '6':  // 2 strings to match.
674
0
        return 31;  // "fs6"
675
0
      case '7':  // 2 strings to match.
676
0
        return 32;  // "fs7"
677
0
      }
678
0
      break;
679
0
    case 't':  // 20 strings to match.
680
0
      switch (Name[2]) {
681
0
      default: break;
682
0
      case '0':  // 2 strings to match.
683
0
        return 9;  // "ft0"
684
0
      case '1':  // 2 strings to match.
685
0
        return 10;  // "ft1"
686
0
      case '2':  // 2 strings to match.
687
0
        return 11;  // "ft2"
688
0
      case '3':  // 2 strings to match.
689
0
        return 12;  // "ft3"
690
0
      case '4':  // 2 strings to match.
691
0
        return 13;  // "ft4"
692
0
      case '5':  // 2 strings to match.
693
0
        return 14;  // "ft5"
694
0
      case '6':  // 2 strings to match.
695
0
        return 15;  // "ft6"
696
0
      case '7':  // 2 strings to match.
697
0
        return 16;  // "ft7"
698
0
      case '8':  // 2 strings to match.
699
0
        return 17;  // "ft8"
700
0
      case '9':  // 2 strings to match.
701
0
        return 18;  // "ft9"
702
0
      }
703
0
      break;
704
0
    }
705
0
    break;
706
0
  case 4:  // 13 strings to match.
707
0
    switch (Name[0]) {
708
0
    default: break;
709
0
    case 'f':  // 12 strings to match.
710
0
      if (memcmp(Name.data()+1, "t1", 2) != 0)
711
0
        break;
712
0
      switch (Name[3]) {
713
0
      default: break;
714
0
      case '0':  // 2 strings to match.
715
0
        return 19;  // "ft10"
716
0
      case '1':  // 2 strings to match.
717
0
        return 20;  // "ft11"
718
0
      case '2':  // 2 strings to match.
719
0
        return 21;  // "ft12"
720
0
      case '3':  // 2 strings to match.
721
0
        return 22;  // "ft13"
722
0
      case '4':  // 2 strings to match.
723
0
        return 23;  // "ft14"
724
0
      case '5':  // 2 strings to match.
725
0
        return 24;  // "ft15"
726
0
      }
727
0
      break;
728
0
    case 'z':  // 1 string to match.
729
0
      if (memcmp(Name.data()+1, "ero", 3) != 0)
730
0
        break;
731
0
      return 45;  // "zero"
732
0
    }
733
0
    break;
734
0
  }
735
0
  return 0;
736
0
}
Unexecuted instantiation: LoongArchAsmParser.cpp:MatchRegisterAltName(llvm::StringRef)
Unexecuted instantiation: LoongArchISelLowering.cpp:MatchRegisterAltName(llvm::StringRef)
737
738
#endif // GET_REGISTER_MATCHER
739
740
741
#ifdef GET_SUBTARGET_FEATURE_NAME
742
#undef GET_SUBTARGET_FEATURE_NAME
743
744
// User-level names for subtarget features that participate in
745
// instruction matching.
746
0
static const char *getSubtargetFeatureName(uint64_t Val) {
747
0
  switch(Val) {
748
0
  case Feature_IsLA64Bit: return "LA64 Basic Integer and Privilege Instruction Set";
749
0
  case Feature_IsLA32Bit: return "LA32 Basic Integer and Privilege Instruction Set";
750
0
  case Feature_HasLaGlobalWithPcrelBit: return "Expand la.global as la.pcrel";
751
0
  case Feature_HasLaGlobalWithAbsBit: return "Expand la.global as la.abs";
752
0
  case Feature_HasLaLocalWithAbsBit: return "Expand la.local as la.abs";
753
0
  default: return "(unknown)";
754
0
  }
755
0
}
756
757
#endif // GET_SUBTARGET_FEATURE_NAME
758
759
760
#ifdef GET_MATCHER_IMPLEMENTATION
761
#undef GET_MATCHER_IMPLEMENTATION
762
763
enum {
764
  Tie0_1_1,
765
};
766
767
static const uint8_t TiedAsmOperandTable[][3] = {
768
  /* Tie0_1_1 */ { 0, 1, 1 },
769
};
770
771
namespace {
772
enum OperatorConversionKind {
773
  CVT_Done,
774
  CVT_Reg,
775
  CVT_Tied,
776
  CVT_95_Reg,
777
  CVT_95_addImmOperands,
778
  CVT_95_addRegOperands,
779
  CVT_regR0,
780
  CVT_imm_95_0,
781
  CVT_regR1,
782
  CVT_NUM_CONVERTERS
783
};
784
785
enum InstructionConversionKind {
786
  Convert__Reg1_0__Reg1_1__Reg1_2,
787
  Convert__Reg1_0__Reg1_1__SImm12addlike1_2,
788
  Convert__Reg1_0__Reg1_1__SImm51_2,
789
  Convert__Reg1_0__Reg1_1__SImm161_2,
790
  Convert__Reg1_0__Reg1_1__Reg1_2__UImm2plus11_3,
791
  Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2,
792
  Convert__Reg1_0__Reg1_1__UImm121_2,
793
  Convert__Reg1_0__Reg1_1__UImm41_2,
794
  Convert__Reg1_0__UImm81_1,
795
  Convert__Reg1_0__UImm41_1,
796
  Convert__Reg1_0__UImm51_1__UImm41_2,
797
  Convert__Reg1_0__Reg1_1,
798
  Convert__SImm26OperandB1_0,
799
  Convert__Reg1_0__SImm21lsl21_1,
800
  Convert__Reg1_0__Reg1_1__SImm16lsl21_2,
801
  Convert__Reg1_0__regR0__SImm16lsl21_1,
802
  Convert__Reg1_1__Reg1_0__SImm16lsl21_2,
803
  Convert__regR0__Reg1_0__SImm16lsl21_1,
804
  Convert__SImm26OperandBL1_0,
805
  Convert__UImm151_0,
806
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2__UImm61_3,
807
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2__UImm51_3,
808
  Convert__Reg1_0__Reg1_1__UImm61_2__UImm61_3,
809
  Convert__Reg1_0__Reg1_1__UImm51_2__UImm51_3,
810
  Convert__Reg1_0__Reg1_1__Reg1_2__UImm31_3,
811
  Convert__Reg1_0__Reg1_1__Reg1_2__UImm21_3,
812
  Convert__UImm51_0__Reg1_1__SImm121_2,
813
  Convert__BareSymbol1_0,
814
  Convert__Reg1_0__UImm141_1,
815
  Convert__Reg1_0__Tie0_1_1__UImm141_1,
816
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm141_2,
817
  Convert_NoOperands,
818
  Convert__Reg1_0__Reg1_1__SImm121_2,
819
  Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3,
820
  Convert__Reg1_2__Reg1_1__UImm51_0,
821
  Convert__SImm21lsl21_0,
822
  Convert__regR0__Reg1_0__imm_95_0,
823
  Convert__Reg1_0__BareSymbol1_1,
824
  Convert__Reg1_0__imm_95_0__BareSymbol1_1,
825
  Convert__Reg1_0__Reg1_1__BareSymbol1_2,
826
  Convert__Reg1_0__Reg1_1__UImm81_2,
827
  Convert__Reg1_0__Reg1_1__SImm14lsl21_2,
828
  Convert__Reg1_0__Imm1_1,
829
  Convert__Reg1_0__Imm321_1,
830
  Convert__Reg1_0__SImm20lu12iw1_1,
831
  Convert__Reg1_0__Tie0_1_1__SImm20lu32id1_1,
832
  Convert__Reg1_0__Reg1_1__SImm12lu52id1_2,
833
  Convert__Reg1_0__Reg1_1__regR0,
834
  Convert__Reg1_0__Tie0_1_1__Reg1_1,
835
  Convert__regR0__regR0__imm_95_0,
836
  Convert__Reg1_0__Reg1_1__UImm12ori1_2,
837
  Convert__Reg1_0__SImm201_1,
838
  Convert__Reg1_0__SImm20pcaddu18i1_1,
839
  Convert__Reg1_0__SImm20pcalau12i1_1,
840
  Convert__UImm51_0__Reg1_1__Reg1_2,
841
  Convert__Reg1_0__Reg1_1__UImm31_2,
842
  Convert__Reg1_0__Reg1_1__UImm61_2,
843
  Convert__Reg1_0__Reg1_1__UImm51_2,
844
  Convert__regR0__regR1__imm_95_0,
845
  Convert__Reg1_0__Tie0_1_1__Reg1_1__SImm14lsl21_2,
846
  Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2,
847
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2,
848
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2,
849
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2,
850
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm11_2,
851
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm31_2,
852
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm21_2,
853
  Convert__Reg1_0__SImm131_1,
854
  Convert__Reg1_0__Reg1_1__SImm9lsl31_2,
855
  Convert__Reg1_0__Reg1_1__SImm11lsl11_2,
856
  Convert__Reg1_0__Reg1_1__SImm10lsl21_2,
857
  Convert__Reg1_0__Reg1_1__UImm11_2,
858
  Convert__Reg1_0__Reg1_1__UImm21_2,
859
  Convert__Reg1_0__SImm101_1,
860
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2,
861
  Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2,
862
  Convert__Reg1_0__Reg1_1__SImm81_2__UImm41_3,
863
  Convert__Reg1_0__Reg1_1__SImm8lsl31_2__UImm11_3,
864
  Convert__Reg1_0__Reg1_1__SImm8lsl11_2__UImm31_3,
865
  Convert__Reg1_0__Reg1_1__SImm8lsl21_2__UImm21_3,
866
  Convert__Reg1_0,
867
  Convert__UImm31_0,
868
  Convert__Reg1_0__UImm31_1,
869
  Convert__Reg1_0__UImm61_1,
870
  Convert__Reg1_0__UImm51_1,
871
  Convert__Reg1_0__UImm51_1__UImm81_2,
872
  Convert__Reg1_0__Reg1_1__SImm81_2__UImm51_3,
873
  Convert__Reg1_0__Reg1_1__SImm8lsl31_2__UImm21_3,
874
  Convert__Reg1_0__Reg1_1__SImm8lsl11_2__UImm41_3,
875
  Convert__Reg1_0__Reg1_1__SImm8lsl21_2__UImm31_3,
876
  CVT_NUM_SIGNATURES
877
};
878
879
} // end anonymous namespace
880
881
static const uint8_t ConversionTable[CVT_NUM_SIGNATURES][11] = {
882
  // Convert__Reg1_0__Reg1_1__Reg1_2
883
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Done },
884
  // Convert__Reg1_0__Reg1_1__SImm12addlike1_2
885
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
886
  // Convert__Reg1_0__Reg1_1__SImm51_2
887
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
888
  // Convert__Reg1_0__Reg1_1__SImm161_2
889
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
890
  // Convert__Reg1_0__Reg1_1__Reg1_2__UImm2plus11_3
891
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_Done },
892
  // Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2
893
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addRegOperands, 3, CVT_Done },
894
  // Convert__Reg1_0__Reg1_1__UImm121_2
895
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
896
  // Convert__Reg1_0__Reg1_1__UImm41_2
897
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
898
  // Convert__Reg1_0__UImm81_1
899
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
900
  // Convert__Reg1_0__UImm41_1
901
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
902
  // Convert__Reg1_0__UImm51_1__UImm41_2
903
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_95_addImmOperands, 3, CVT_Done },
904
  // Convert__Reg1_0__Reg1_1
905
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_Done },
906
  // Convert__SImm26OperandB1_0
907
  { CVT_95_addImmOperands, 1, CVT_Done },
908
  // Convert__Reg1_0__SImm21lsl21_1
909
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
910
  // Convert__Reg1_0__Reg1_1__SImm16lsl21_2
911
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
912
  // Convert__Reg1_0__regR0__SImm16lsl21_1
913
  { CVT_95_Reg, 1, CVT_regR0, 0, CVT_95_addImmOperands, 2, CVT_Done },
914
  // Convert__Reg1_1__Reg1_0__SImm16lsl21_2
915
  { CVT_95_Reg, 2, CVT_95_Reg, 1, CVT_95_addImmOperands, 3, CVT_Done },
916
  // Convert__regR0__Reg1_0__SImm16lsl21_1
917
  { CVT_regR0, 0, CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
918
  // Convert__SImm26OperandBL1_0
919
  { CVT_95_addImmOperands, 1, CVT_Done },
920
  // Convert__UImm151_0
921
  { CVT_95_addImmOperands, 1, CVT_Done },
922
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2__UImm61_3
923
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
924
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2__UImm51_3
925
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
926
  // Convert__Reg1_0__Reg1_1__UImm61_2__UImm61_3
927
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
928
  // Convert__Reg1_0__Reg1_1__UImm51_2__UImm51_3
929
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
930
  // Convert__Reg1_0__Reg1_1__Reg1_2__UImm31_3
931
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_Done },
932
  // Convert__Reg1_0__Reg1_1__Reg1_2__UImm21_3
933
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_addImmOperands, 4, CVT_Done },
934
  // Convert__UImm51_0__Reg1_1__SImm121_2
935
  { CVT_95_addImmOperands, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
936
  // Convert__BareSymbol1_0
937
  { CVT_95_addImmOperands, 1, CVT_Done },
938
  // Convert__Reg1_0__UImm141_1
939
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
940
  // Convert__Reg1_0__Tie0_1_1__UImm141_1
941
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_addImmOperands, 2, CVT_Done },
942
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm141_2
943
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
944
  // Convert_NoOperands
945
  { CVT_Done },
946
  // Convert__Reg1_0__Reg1_1__SImm121_2
947
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
948
  // Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3
949
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_95_Reg, 4, CVT_Done },
950
  // Convert__Reg1_2__Reg1_1__UImm51_0
951
  { CVT_95_Reg, 3, CVT_95_Reg, 2, CVT_95_addImmOperands, 1, CVT_Done },
952
  // Convert__SImm21lsl21_0
953
  { CVT_95_addImmOperands, 1, CVT_Done },
954
  // Convert__regR0__Reg1_0__imm_95_0
955
  { CVT_regR0, 0, CVT_95_Reg, 1, CVT_imm_95_0, 0, CVT_Done },
956
  // Convert__Reg1_0__BareSymbol1_1
957
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
958
  // Convert__Reg1_0__imm_95_0__BareSymbol1_1
959
  { CVT_95_Reg, 1, CVT_imm_95_0, 0, CVT_95_addImmOperands, 2, CVT_Done },
960
  // Convert__Reg1_0__Reg1_1__BareSymbol1_2
961
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
962
  // Convert__Reg1_0__Reg1_1__UImm81_2
963
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
964
  // Convert__Reg1_0__Reg1_1__SImm14lsl21_2
965
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
966
  // Convert__Reg1_0__Imm1_1
967
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
968
  // Convert__Reg1_0__Imm321_1
969
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
970
  // Convert__Reg1_0__SImm20lu12iw1_1
971
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
972
  // Convert__Reg1_0__Tie0_1_1__SImm20lu32id1_1
973
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_addImmOperands, 2, CVT_Done },
974
  // Convert__Reg1_0__Reg1_1__SImm12lu52id1_2
975
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
976
  // Convert__Reg1_0__Reg1_1__regR0
977
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_regR0, 0, CVT_Done },
978
  // Convert__Reg1_0__Tie0_1_1__Reg1_1
979
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_Done },
980
  // Convert__regR0__regR0__imm_95_0
981
  { CVT_regR0, 0, CVT_regR0, 0, CVT_imm_95_0, 0, CVT_Done },
982
  // Convert__Reg1_0__Reg1_1__UImm12ori1_2
983
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
984
  // Convert__Reg1_0__SImm201_1
985
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
986
  // Convert__Reg1_0__SImm20pcaddu18i1_1
987
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
988
  // Convert__Reg1_0__SImm20pcalau12i1_1
989
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
990
  // Convert__UImm51_0__Reg1_1__Reg1_2
991
  { CVT_95_addImmOperands, 1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Done },
992
  // Convert__Reg1_0__Reg1_1__UImm31_2
993
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
994
  // Convert__Reg1_0__Reg1_1__UImm61_2
995
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
996
  // Convert__Reg1_0__Reg1_1__UImm51_2
997
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
998
  // Convert__regR0__regR1__imm_95_0
999
  { CVT_regR0, 0, CVT_regR1, 0, CVT_imm_95_0, 0, CVT_Done },
1000
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__SImm14lsl21_2
1001
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1002
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2
1003
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_Reg, 3, CVT_Done },
1004
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2
1005
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1006
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2
1007
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1008
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2
1009
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1010
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm11_2
1011
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1012
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm31_2
1013
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1014
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm21_2
1015
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1016
  // Convert__Reg1_0__SImm131_1
1017
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
1018
  // Convert__Reg1_0__Reg1_1__SImm9lsl31_2
1019
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1020
  // Convert__Reg1_0__Reg1_1__SImm11lsl11_2
1021
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1022
  // Convert__Reg1_0__Reg1_1__SImm10lsl21_2
1023
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1024
  // Convert__Reg1_0__Reg1_1__UImm11_2
1025
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1026
  // Convert__Reg1_0__Reg1_1__UImm21_2
1027
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1028
  // Convert__Reg1_0__SImm101_1
1029
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
1030
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2
1031
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1032
  // Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2
1033
  { CVT_95_Reg, 1, CVT_Tied, Tie0_1_1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_Done },
1034
  // Convert__Reg1_0__Reg1_1__SImm81_2__UImm41_3
1035
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1036
  // Convert__Reg1_0__Reg1_1__SImm8lsl31_2__UImm11_3
1037
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1038
  // Convert__Reg1_0__Reg1_1__SImm8lsl11_2__UImm31_3
1039
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1040
  // Convert__Reg1_0__Reg1_1__SImm8lsl21_2__UImm21_3
1041
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1042
  // Convert__Reg1_0
1043
  { CVT_95_Reg, 1, CVT_Done },
1044
  // Convert__UImm31_0
1045
  { CVT_95_addImmOperands, 1, CVT_Done },
1046
  // Convert__Reg1_0__UImm31_1
1047
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
1048
  // Convert__Reg1_0__UImm61_1
1049
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
1050
  // Convert__Reg1_0__UImm51_1
1051
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_Done },
1052
  // Convert__Reg1_0__UImm51_1__UImm81_2
1053
  { CVT_95_Reg, 1, CVT_95_addImmOperands, 2, CVT_95_addImmOperands, 3, CVT_Done },
1054
  // Convert__Reg1_0__Reg1_1__SImm81_2__UImm51_3
1055
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1056
  // Convert__Reg1_0__Reg1_1__SImm8lsl31_2__UImm21_3
1057
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1058
  // Convert__Reg1_0__Reg1_1__SImm8lsl11_2__UImm41_3
1059
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1060
  // Convert__Reg1_0__Reg1_1__SImm8lsl21_2__UImm31_3
1061
  { CVT_95_Reg, 1, CVT_95_Reg, 2, CVT_95_addImmOperands, 3, CVT_95_addImmOperands, 4, CVT_Done },
1062
};
1063
1064
void LoongArchAsmParser::
1065
convertToMCInst(unsigned Kind, MCInst &Inst, unsigned Opcode,
1066
0
                const OperandVector &Operands) {
1067
0
  assert(Kind < CVT_NUM_SIGNATURES && "Invalid signature!");
1068
0
  const uint8_t *Converter = ConversionTable[Kind];
1069
0
  unsigned OpIdx;
1070
0
  Inst.setOpcode(Opcode);
1071
0
  for (const uint8_t *p = Converter; *p; p += 2) {
1072
0
    OpIdx = *(p + 1);
1073
0
    switch (*p) {
1074
0
    default: llvm_unreachable("invalid conversion entry!");
1075
0
    case CVT_Reg:
1076
0
      static_cast<LoongArchOperand &>(*Operands[OpIdx]).addRegOperands(Inst, 1);
1077
0
      break;
1078
0
    case CVT_Tied: {
1079
0
      assert(OpIdx < (size_t)(std::end(TiedAsmOperandTable) -
1080
0
                              std::begin(TiedAsmOperandTable)) &&
1081
0
             "Tied operand not found");
1082
0
      unsigned TiedResOpnd = TiedAsmOperandTable[OpIdx][0];
1083
0
      if (TiedResOpnd != (uint8_t)-1)
1084
0
        Inst.addOperand(Inst.getOperand(TiedResOpnd));
1085
0
      break;
1086
0
    }
1087
0
    case CVT_95_Reg:
1088
0
      static_cast<LoongArchOperand &>(*Operands[OpIdx]).addRegOperands(Inst, 1);
1089
0
      break;
1090
0
    case CVT_95_addImmOperands:
1091
0
      static_cast<LoongArchOperand &>(*Operands[OpIdx]).addImmOperands(Inst, 1);
1092
0
      break;
1093
0
    case CVT_95_addRegOperands:
1094
0
      static_cast<LoongArchOperand &>(*Operands[OpIdx]).addRegOperands(Inst, 1);
1095
0
      break;
1096
0
    case CVT_regR0:
1097
0
      Inst.addOperand(MCOperand::createReg(LoongArch::R0));
1098
0
      break;
1099
0
    case CVT_imm_95_0:
1100
0
      Inst.addOperand(MCOperand::createImm(0));
1101
0
      break;
1102
0
    case CVT_regR1:
1103
0
      Inst.addOperand(MCOperand::createReg(LoongArch::R1));
1104
0
      break;
1105
0
    }
1106
0
  }
1107
0
}
1108
1109
void LoongArchAsmParser::
1110
convertToMapAndConstraints(unsigned Kind,
1111
0
                           const OperandVector &Operands) {
1112
0
  assert(Kind < CVT_NUM_SIGNATURES && "Invalid signature!");
1113
0
  unsigned NumMCOperands = 0;
1114
0
  const uint8_t *Converter = ConversionTable[Kind];
1115
0
  for (const uint8_t *p = Converter; *p; p += 2) {
1116
0
    switch (*p) {
1117
0
    default: llvm_unreachable("invalid conversion entry!");
1118
0
    case CVT_Reg:
1119
0
      Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
1120
0
      Operands[*(p + 1)]->setConstraint("r");
1121
0
      ++NumMCOperands;
1122
0
      break;
1123
0
    case CVT_Tied:
1124
0
      ++NumMCOperands;
1125
0
      break;
1126
0
    case CVT_95_Reg:
1127
0
      Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
1128
0
      Operands[*(p + 1)]->setConstraint("r");
1129
0
      NumMCOperands += 1;
1130
0
      break;
1131
0
    case CVT_95_addImmOperands:
1132
0
      Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
1133
0
      Operands[*(p + 1)]->setConstraint("m");
1134
0
      NumMCOperands += 1;
1135
0
      break;
1136
0
    case CVT_95_addRegOperands:
1137
0
      Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
1138
0
      Operands[*(p + 1)]->setConstraint("m");
1139
0
      NumMCOperands += 1;
1140
0
      break;
1141
0
    case CVT_regR0:
1142
0
      Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
1143
0
      Operands[*(p + 1)]->setConstraint("m");
1144
0
      ++NumMCOperands;
1145
0
      break;
1146
0
    case CVT_imm_95_0:
1147
0
      Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
1148
0
      Operands[*(p + 1)]->setConstraint("");
1149
0
      ++NumMCOperands;
1150
0
      break;
1151
0
    case CVT_regR1:
1152
0
      Operands[*(p + 1)]->setMCOperandNum(NumMCOperands);
1153
0
      Operands[*(p + 1)]->setConstraint("m");
1154
0
      ++NumMCOperands;
1155
0
      break;
1156
0
    }
1157
0
  }
1158
0
}
1159
1160
namespace {
1161
1162
/// MatchClassKind - The kinds of classes which participate in
1163
/// instruction matching.
1164
enum MatchClassKind {
1165
  InvalidMatchClass = 0,
1166
  OptionalMatchClass = 1,
1167
  MCK_LAST_TOKEN = OptionalMatchClass,
1168
  MCK_FCSR, // register class 'FCSR'
1169
  MCK_SCR, // register class 'SCR'
1170
  MCK_CFR, // register class 'CFR'
1171
  MCK_GPRT, // register class 'GPRT'
1172
  MCK_FPR32, // register class 'FPR32'
1173
  MCK_FPR64, // register class 'FPR64'
1174
  MCK_GPR, // register class 'GPR'
1175
  MCK_LASX256, // register class 'LASX256'
1176
  MCK_LSX128, // register class 'LSX128'
1177
  MCK_LAST_REGISTER = MCK_LSX128,
1178
  MCK_AtomicMemAsmOperand, // user defined class 'AtomicMemAsmOperand'
1179
  MCK_BareSymbol, // user defined class 'BareSymbol'
1180
  MCK_Imm, // user defined class 'ImmAsmOperand'
1181
  MCK_SImm26OperandB, // user defined class 'SImm26OperandB'
1182
  MCK_SImm26OperandBL, // user defined class 'SImm26OperandBL'
1183
  MCK_Imm32, // user defined class 'anonymous_7132'
1184
  MCK_UImm1, // user defined class 'anonymous_7133'
1185
  MCK_UImm2, // user defined class 'anonymous_7134'
1186
  MCK_UImm2plus1, // user defined class 'anonymous_7135'
1187
  MCK_UImm3, // user defined class 'anonymous_7136'
1188
  MCK_UImm4, // user defined class 'anonymous_7137'
1189
  MCK_UImm5, // user defined class 'anonymous_7138'
1190
  MCK_UImm6, // user defined class 'anonymous_7139'
1191
  MCK_UImm7, // user defined class 'anonymous_7140'
1192
  MCK_UImm8, // user defined class 'anonymous_7141'
1193
  MCK_UImm12, // user defined class 'anonymous_7142'
1194
  MCK_UImm12ori, // user defined class 'anonymous_7143'
1195
  MCK_UImm14, // user defined class 'anonymous_7144'
1196
  MCK_UImm15, // user defined class 'anonymous_7145'
1197
  MCK_SImm5, // user defined class 'anonymous_7146'
1198
  MCK_SImm8, // user defined class 'anonymous_7147'
1199
  MCK_SImm8lsl1, // user defined class 'anonymous_7148'
1200
  MCK_SImm8lsl2, // user defined class 'anonymous_7149'
1201
  MCK_SImm8lsl3, // user defined class 'anonymous_7150'
1202
  MCK_SImm9lsl3, // user defined class 'anonymous_7151'
1203
  MCK_SImm10, // user defined class 'anonymous_7152'
1204
  MCK_SImm10lsl2, // user defined class 'anonymous_7153'
1205
  MCK_SImm11lsl1, // user defined class 'anonymous_7154'
1206
  MCK_SImm12, // user defined class 'anonymous_7155'
1207
  MCK_SImm12addlike, // user defined class 'anonymous_7156'
1208
  MCK_SImm12lu52id, // user defined class 'anonymous_7157'
1209
  MCK_SImm13, // user defined class 'anonymous_7158'
1210
  MCK_SImm14lsl2, // user defined class 'anonymous_7159'
1211
  MCK_SImm16, // user defined class 'anonymous_7160'
1212
  MCK_SImm16lsl2, // user defined class 'anonymous_7161'
1213
  MCK_SImm20, // user defined class 'anonymous_7162'
1214
  MCK_SImm20pcalau12i, // user defined class 'anonymous_7163'
1215
  MCK_SImm20lu12iw, // user defined class 'anonymous_7164'
1216
  MCK_SImm20lu32id, // user defined class 'anonymous_7165'
1217
  MCK_SImm20pcaddu18i, // user defined class 'anonymous_7166'
1218
  MCK_SImm21lsl2, // user defined class 'anonymous_7167'
1219
  NumMatchClassKinds
1220
};
1221
1222
} // end anonymous namespace
1223
1224
0
static unsigned getDiagKindFromRegisterClass(MatchClassKind RegisterClass) {
1225
0
  return MCTargetAsmParser::Match_InvalidOperand;
1226
0
}
1227
1228
0
static MatchClassKind matchTokenString(StringRef Name) {
1229
0
  return InvalidMatchClass;
1230
0
}
1231
1232
/// isSubclass - Compute whether \p A is a subclass of \p B.
1233
0
static bool isSubclass(MatchClassKind A, MatchClassKind B) {
1234
0
  if (A == B)
1235
0
    return true;
1236
1237
0
  switch (A) {
1238
0
  default:
1239
0
    return false;
1240
1241
0
  case MCK_GPRT:
1242
0
    return B == MCK_GPR;
1243
0
  }
1244
0
}
1245
1246
0
static unsigned validateOperandClass(MCParsedAsmOperand &GOp, MatchClassKind Kind) {
1247
0
  LoongArchOperand &Operand = (LoongArchOperand &)GOp;
1248
0
  if (Kind == InvalidMatchClass)
1249
0
    return MCTargetAsmParser::Match_InvalidOperand;
1250
1251
0
  if (Operand.isToken() && Kind <= MCK_LAST_TOKEN)
1252
0
    return isSubclass(matchTokenString(Operand.getToken()), Kind) ?
1253
0
             MCTargetAsmParser::Match_Success :
1254
0
             MCTargetAsmParser::Match_InvalidOperand;
1255
1256
0
  switch (Kind) {
1257
0
  default: break;
1258
  // 'AtomicMemAsmOperand' class
1259
0
  case MCK_AtomicMemAsmOperand: {
1260
0
    DiagnosticPredicate DP(Operand.isGPR());
1261
0
    if (DP.isMatch())
1262
0
      return MCTargetAsmParser::Match_Success;
1263
0
    break;
1264
0
    }
1265
  // 'BareSymbol' class
1266
0
  case MCK_BareSymbol: {
1267
0
    DiagnosticPredicate DP(Operand.isBareSymbol());
1268
0
    if (DP.isMatch())
1269
0
      return MCTargetAsmParser::Match_Success;
1270
0
    if (DP.isNearMatch())
1271
0
      return LoongArchAsmParser::Match_InvalidBareSymbol;
1272
0
    break;
1273
0
    }
1274
  // 'Imm' class
1275
0
  case MCK_Imm: {
1276
0
    DiagnosticPredicate DP(Operand.isImm());
1277
0
    if (DP.isMatch())
1278
0
      return MCTargetAsmParser::Match_Success;
1279
0
    break;
1280
0
    }
1281
  // 'SImm26OperandB' class
1282
0
  case MCK_SImm26OperandB: {
1283
0
    DiagnosticPredicate DP(Operand.isSImm26Operand());
1284
0
    if (DP.isMatch())
1285
0
      return MCTargetAsmParser::Match_Success;
1286
0
    if (DP.isNearMatch())
1287
0
      return LoongArchAsmParser::Match_InvalidSImm26Operand;
1288
0
    break;
1289
0
    }
1290
  // 'SImm26OperandBL' class
1291
0
  case MCK_SImm26OperandBL: {
1292
0
    DiagnosticPredicate DP(Operand.isSImm26Operand());
1293
0
    if (DP.isMatch())
1294
0
      return MCTargetAsmParser::Match_Success;
1295
0
    if (DP.isNearMatch())
1296
0
      return LoongArchAsmParser::Match_InvalidSImm26Operand;
1297
0
    break;
1298
0
    }
1299
  // 'Imm32' class
1300
0
  case MCK_Imm32: {
1301
0
    DiagnosticPredicate DP(Operand.isImm32());
1302
0
    if (DP.isMatch())
1303
0
      return MCTargetAsmParser::Match_Success;
1304
0
    if (DP.isNearMatch())
1305
0
      return LoongArchAsmParser::Match_InvalidImm32;
1306
0
    break;
1307
0
    }
1308
  // 'UImm1' class
1309
0
  case MCK_UImm1: {
1310
0
    DiagnosticPredicate DP(Operand.isUImm1());
1311
0
    if (DP.isMatch())
1312
0
      return MCTargetAsmParser::Match_Success;
1313
0
    if (DP.isNearMatch())
1314
0
      return LoongArchAsmParser::Match_InvalidUImm1;
1315
0
    break;
1316
0
    }
1317
  // 'UImm2' class
1318
0
  case MCK_UImm2: {
1319
0
    DiagnosticPredicate DP(Operand.isUImm2());
1320
0
    if (DP.isMatch())
1321
0
      return MCTargetAsmParser::Match_Success;
1322
0
    if (DP.isNearMatch())
1323
0
      return LoongArchAsmParser::Match_InvalidUImm2;
1324
0
    break;
1325
0
    }
1326
  // 'UImm2plus1' class
1327
0
  case MCK_UImm2plus1: {
1328
0
    DiagnosticPredicate DP(Operand.isUImm2plus1());
1329
0
    if (DP.isMatch())
1330
0
      return MCTargetAsmParser::Match_Success;
1331
0
    if (DP.isNearMatch())
1332
0
      return LoongArchAsmParser::Match_InvalidUImm2plus1;
1333
0
    break;
1334
0
    }
1335
  // 'UImm3' class
1336
0
  case MCK_UImm3: {
1337
0
    DiagnosticPredicate DP(Operand.isUImm3());
1338
0
    if (DP.isMatch())
1339
0
      return MCTargetAsmParser::Match_Success;
1340
0
    if (DP.isNearMatch())
1341
0
      return LoongArchAsmParser::Match_InvalidUImm3;
1342
0
    break;
1343
0
    }
1344
  // 'UImm4' class
1345
0
  case MCK_UImm4: {
1346
0
    DiagnosticPredicate DP(Operand.isUImm4());
1347
0
    if (DP.isMatch())
1348
0
      return MCTargetAsmParser::Match_Success;
1349
0
    if (DP.isNearMatch())
1350
0
      return LoongArchAsmParser::Match_InvalidUImm4;
1351
0
    break;
1352
0
    }
1353
  // 'UImm5' class
1354
0
  case MCK_UImm5: {
1355
0
    DiagnosticPredicate DP(Operand.isUImm5());
1356
0
    if (DP.isMatch())
1357
0
      return MCTargetAsmParser::Match_Success;
1358
0
    if (DP.isNearMatch())
1359
0
      return LoongArchAsmParser::Match_InvalidUImm5;
1360
0
    break;
1361
0
    }
1362
  // 'UImm6' class
1363
0
  case MCK_UImm6: {
1364
0
    DiagnosticPredicate DP(Operand.isUImm6());
1365
0
    if (DP.isMatch())
1366
0
      return MCTargetAsmParser::Match_Success;
1367
0
    if (DP.isNearMatch())
1368
0
      return LoongArchAsmParser::Match_InvalidUImm6;
1369
0
    break;
1370
0
    }
1371
  // 'UImm7' class
1372
0
  case MCK_UImm7: {
1373
0
    DiagnosticPredicate DP(Operand.isUImm7());
1374
0
    if (DP.isMatch())
1375
0
      return MCTargetAsmParser::Match_Success;
1376
0
    if (DP.isNearMatch())
1377
0
      return LoongArchAsmParser::Match_InvalidUImm7;
1378
0
    break;
1379
0
    }
1380
  // 'UImm8' class
1381
0
  case MCK_UImm8: {
1382
0
    DiagnosticPredicate DP(Operand.isUImm8());
1383
0
    if (DP.isMatch())
1384
0
      return MCTargetAsmParser::Match_Success;
1385
0
    if (DP.isNearMatch())
1386
0
      return LoongArchAsmParser::Match_InvalidUImm8;
1387
0
    break;
1388
0
    }
1389
  // 'UImm12' class
1390
0
  case MCK_UImm12: {
1391
0
    DiagnosticPredicate DP(Operand.isUImm12());
1392
0
    if (DP.isMatch())
1393
0
      return MCTargetAsmParser::Match_Success;
1394
0
    if (DP.isNearMatch())
1395
0
      return LoongArchAsmParser::Match_InvalidUImm12;
1396
0
    break;
1397
0
    }
1398
  // 'UImm12ori' class
1399
0
  case MCK_UImm12ori: {
1400
0
    DiagnosticPredicate DP(Operand.isUImm12ori());
1401
0
    if (DP.isMatch())
1402
0
      return MCTargetAsmParser::Match_Success;
1403
0
    if (DP.isNearMatch())
1404
0
      return LoongArchAsmParser::Match_InvalidUImm12ori;
1405
0
    break;
1406
0
    }
1407
  // 'UImm14' class
1408
0
  case MCK_UImm14: {
1409
0
    DiagnosticPredicate DP(Operand.isUImm14());
1410
0
    if (DP.isMatch())
1411
0
      return MCTargetAsmParser::Match_Success;
1412
0
    if (DP.isNearMatch())
1413
0
      return LoongArchAsmParser::Match_InvalidUImm14;
1414
0
    break;
1415
0
    }
1416
  // 'UImm15' class
1417
0
  case MCK_UImm15: {
1418
0
    DiagnosticPredicate DP(Operand.isUImm15());
1419
0
    if (DP.isMatch())
1420
0
      return MCTargetAsmParser::Match_Success;
1421
0
    if (DP.isNearMatch())
1422
0
      return LoongArchAsmParser::Match_InvalidUImm15;
1423
0
    break;
1424
0
    }
1425
  // 'SImm5' class
1426
0
  case MCK_SImm5: {
1427
0
    DiagnosticPredicate DP(Operand.isSImm5());
1428
0
    if (DP.isMatch())
1429
0
      return MCTargetAsmParser::Match_Success;
1430
0
    if (DP.isNearMatch())
1431
0
      return LoongArchAsmParser::Match_InvalidSImm5;
1432
0
    break;
1433
0
    }
1434
  // 'SImm8' class
1435
0
  case MCK_SImm8: {
1436
0
    DiagnosticPredicate DP(Operand.isSImm8());
1437
0
    if (DP.isMatch())
1438
0
      return MCTargetAsmParser::Match_Success;
1439
0
    if (DP.isNearMatch())
1440
0
      return LoongArchAsmParser::Match_InvalidSImm8;
1441
0
    break;
1442
0
    }
1443
  // 'SImm8lsl1' class
1444
0
  case MCK_SImm8lsl1: {
1445
0
    DiagnosticPredicate DP(Operand.isSImm8lsl1());
1446
0
    if (DP.isMatch())
1447
0
      return MCTargetAsmParser::Match_Success;
1448
0
    if (DP.isNearMatch())
1449
0
      return LoongArchAsmParser::Match_InvalidSImm8lsl1;
1450
0
    break;
1451
0
    }
1452
  // 'SImm8lsl2' class
1453
0
  case MCK_SImm8lsl2: {
1454
0
    DiagnosticPredicate DP(Operand.isSImm8lsl2());
1455
0
    if (DP.isMatch())
1456
0
      return MCTargetAsmParser::Match_Success;
1457
0
    if (DP.isNearMatch())
1458
0
      return LoongArchAsmParser::Match_InvalidSImm8lsl2;
1459
0
    break;
1460
0
    }
1461
  // 'SImm8lsl3' class
1462
0
  case MCK_SImm8lsl3: {
1463
0
    DiagnosticPredicate DP(Operand.isSImm8lsl3());
1464
0
    if (DP.isMatch())
1465
0
      return MCTargetAsmParser::Match_Success;
1466
0
    if (DP.isNearMatch())
1467
0
      return LoongArchAsmParser::Match_InvalidSImm8lsl3;
1468
0
    break;
1469
0
    }
1470
  // 'SImm9lsl3' class
1471
0
  case MCK_SImm9lsl3: {
1472
0
    DiagnosticPredicate DP(Operand.isSImm9lsl3());
1473
0
    if (DP.isMatch())
1474
0
      return MCTargetAsmParser::Match_Success;
1475
0
    if (DP.isNearMatch())
1476
0
      return LoongArchAsmParser::Match_InvalidSImm9lsl3;
1477
0
    break;
1478
0
    }
1479
  // 'SImm10' class
1480
0
  case MCK_SImm10: {
1481
0
    DiagnosticPredicate DP(Operand.isSImm10());
1482
0
    if (DP.isMatch())
1483
0
      return MCTargetAsmParser::Match_Success;
1484
0
    if (DP.isNearMatch())
1485
0
      return LoongArchAsmParser::Match_InvalidSImm10;
1486
0
    break;
1487
0
    }
1488
  // 'SImm10lsl2' class
1489
0
  case MCK_SImm10lsl2: {
1490
0
    DiagnosticPredicate DP(Operand.isSImm10lsl2());
1491
0
    if (DP.isMatch())
1492
0
      return MCTargetAsmParser::Match_Success;
1493
0
    if (DP.isNearMatch())
1494
0
      return LoongArchAsmParser::Match_InvalidSImm10lsl2;
1495
0
    break;
1496
0
    }
1497
  // 'SImm11lsl1' class
1498
0
  case MCK_SImm11lsl1: {
1499
0
    DiagnosticPredicate DP(Operand.isSImm11lsl1());
1500
0
    if (DP.isMatch())
1501
0
      return MCTargetAsmParser::Match_Success;
1502
0
    if (DP.isNearMatch())
1503
0
      return LoongArchAsmParser::Match_InvalidSImm11lsl1;
1504
0
    break;
1505
0
    }
1506
  // 'SImm12' class
1507
0
  case MCK_SImm12: {
1508
0
    DiagnosticPredicate DP(Operand.isSImm12());
1509
0
    if (DP.isMatch())
1510
0
      return MCTargetAsmParser::Match_Success;
1511
0
    if (DP.isNearMatch())
1512
0
      return LoongArchAsmParser::Match_InvalidSImm12;
1513
0
    break;
1514
0
    }
1515
  // 'SImm12addlike' class
1516
0
  case MCK_SImm12addlike: {
1517
0
    DiagnosticPredicate DP(Operand.isSImm12addlike());
1518
0
    if (DP.isMatch())
1519
0
      return MCTargetAsmParser::Match_Success;
1520
0
    if (DP.isNearMatch())
1521
0
      return LoongArchAsmParser::Match_InvalidSImm12addlike;
1522
0
    break;
1523
0
    }
1524
  // 'SImm12lu52id' class
1525
0
  case MCK_SImm12lu52id: {
1526
0
    DiagnosticPredicate DP(Operand.isSImm12lu52id());
1527
0
    if (DP.isMatch())
1528
0
      return MCTargetAsmParser::Match_Success;
1529
0
    if (DP.isNearMatch())
1530
0
      return LoongArchAsmParser::Match_InvalidSImm12lu52id;
1531
0
    break;
1532
0
    }
1533
  // 'SImm13' class
1534
0
  case MCK_SImm13: {
1535
0
    DiagnosticPredicate DP(Operand.isSImm13());
1536
0
    if (DP.isMatch())
1537
0
      return MCTargetAsmParser::Match_Success;
1538
0
    if (DP.isNearMatch())
1539
0
      return LoongArchAsmParser::Match_InvalidSImm13;
1540
0
    break;
1541
0
    }
1542
  // 'SImm14lsl2' class
1543
0
  case MCK_SImm14lsl2: {
1544
0
    DiagnosticPredicate DP(Operand.isSImm14lsl2());
1545
0
    if (DP.isMatch())
1546
0
      return MCTargetAsmParser::Match_Success;
1547
0
    if (DP.isNearMatch())
1548
0
      return LoongArchAsmParser::Match_InvalidSImm14lsl2;
1549
0
    break;
1550
0
    }
1551
  // 'SImm16' class
1552
0
  case MCK_SImm16: {
1553
0
    DiagnosticPredicate DP(Operand.isSImm16());
1554
0
    if (DP.isMatch())
1555
0
      return MCTargetAsmParser::Match_Success;
1556
0
    if (DP.isNearMatch())
1557
0
      return LoongArchAsmParser::Match_InvalidSImm16;
1558
0
    break;
1559
0
    }
1560
  // 'SImm16lsl2' class
1561
0
  case MCK_SImm16lsl2: {
1562
0
    DiagnosticPredicate DP(Operand.isSImm16lsl2());
1563
0
    if (DP.isMatch())
1564
0
      return MCTargetAsmParser::Match_Success;
1565
0
    if (DP.isNearMatch())
1566
0
      return LoongArchAsmParser::Match_InvalidSImm16lsl2;
1567
0
    break;
1568
0
    }
1569
  // 'SImm20' class
1570
0
  case MCK_SImm20: {
1571
0
    DiagnosticPredicate DP(Operand.isSImm20());
1572
0
    if (DP.isMatch())
1573
0
      return MCTargetAsmParser::Match_Success;
1574
0
    if (DP.isNearMatch())
1575
0
      return LoongArchAsmParser::Match_InvalidSImm20;
1576
0
    break;
1577
0
    }
1578
  // 'SImm20pcalau12i' class
1579
0
  case MCK_SImm20pcalau12i: {
1580
0
    DiagnosticPredicate DP(Operand.isSImm20pcalau12i());
1581
0
    if (DP.isMatch())
1582
0
      return MCTargetAsmParser::Match_Success;
1583
0
    if (DP.isNearMatch())
1584
0
      return LoongArchAsmParser::Match_InvalidSImm20pcalau12i;
1585
0
    break;
1586
0
    }
1587
  // 'SImm20lu12iw' class
1588
0
  case MCK_SImm20lu12iw: {
1589
0
    DiagnosticPredicate DP(Operand.isSImm20lu12iw());
1590
0
    if (DP.isMatch())
1591
0
      return MCTargetAsmParser::Match_Success;
1592
0
    if (DP.isNearMatch())
1593
0
      return LoongArchAsmParser::Match_InvalidSImm20lu12iw;
1594
0
    break;
1595
0
    }
1596
  // 'SImm20lu32id' class
1597
0
  case MCK_SImm20lu32id: {
1598
0
    DiagnosticPredicate DP(Operand.isSImm20lu32id());
1599
0
    if (DP.isMatch())
1600
0
      return MCTargetAsmParser::Match_Success;
1601
0
    if (DP.isNearMatch())
1602
0
      return LoongArchAsmParser::Match_InvalidSImm20lu32id;
1603
0
    break;
1604
0
    }
1605
  // 'SImm20pcaddu18i' class
1606
0
  case MCK_SImm20pcaddu18i: {
1607
0
    DiagnosticPredicate DP(Operand.isSImm20pcaddu18i());
1608
0
    if (DP.isMatch())
1609
0
      return MCTargetAsmParser::Match_Success;
1610
0
    if (DP.isNearMatch())
1611
0
      return LoongArchAsmParser::Match_InvalidSImm20pcaddu18i;
1612
0
    break;
1613
0
    }
1614
  // 'SImm21lsl2' class
1615
0
  case MCK_SImm21lsl2: {
1616
0
    DiagnosticPredicate DP(Operand.isSImm21lsl2());
1617
0
    if (DP.isMatch())
1618
0
      return MCTargetAsmParser::Match_Success;
1619
0
    if (DP.isNearMatch())
1620
0
      return LoongArchAsmParser::Match_InvalidSImm21lsl2;
1621
0
    break;
1622
0
    }
1623
0
  } // end switch (Kind)
1624
1625
0
  if (Operand.isReg()) {
1626
0
    MatchClassKind OpKind;
1627
0
    switch (Operand.getReg()) {
1628
0
    default: OpKind = InvalidMatchClass; break;
1629
0
    case LoongArch::R0: OpKind = MCK_GPR; break;
1630
0
    case LoongArch::R1: OpKind = MCK_GPR; break;
1631
0
    case LoongArch::R2: OpKind = MCK_GPR; break;
1632
0
    case LoongArch::R3: OpKind = MCK_GPR; break;
1633
0
    case LoongArch::R4: OpKind = MCK_GPRT; break;
1634
0
    case LoongArch::R5: OpKind = MCK_GPRT; break;
1635
0
    case LoongArch::R6: OpKind = MCK_GPRT; break;
1636
0
    case LoongArch::R7: OpKind = MCK_GPRT; break;
1637
0
    case LoongArch::R8: OpKind = MCK_GPRT; break;
1638
0
    case LoongArch::R9: OpKind = MCK_GPRT; break;
1639
0
    case LoongArch::R10: OpKind = MCK_GPRT; break;
1640
0
    case LoongArch::R11: OpKind = MCK_GPRT; break;
1641
0
    case LoongArch::R12: OpKind = MCK_GPRT; break;
1642
0
    case LoongArch::R13: OpKind = MCK_GPRT; break;
1643
0
    case LoongArch::R14: OpKind = MCK_GPRT; break;
1644
0
    case LoongArch::R15: OpKind = MCK_GPRT; break;
1645
0
    case LoongArch::R16: OpKind = MCK_GPRT; break;
1646
0
    case LoongArch::R17: OpKind = MCK_GPRT; break;
1647
0
    case LoongArch::R18: OpKind = MCK_GPRT; break;
1648
0
    case LoongArch::R19: OpKind = MCK_GPRT; break;
1649
0
    case LoongArch::R20: OpKind = MCK_GPRT; break;
1650
0
    case LoongArch::R21: OpKind = MCK_GPR; break;
1651
0
    case LoongArch::R22: OpKind = MCK_GPR; break;
1652
0
    case LoongArch::R23: OpKind = MCK_GPR; break;
1653
0
    case LoongArch::R24: OpKind = MCK_GPR; break;
1654
0
    case LoongArch::R25: OpKind = MCK_GPR; break;
1655
0
    case LoongArch::R26: OpKind = MCK_GPR; break;
1656
0
    case LoongArch::R27: OpKind = MCK_GPR; break;
1657
0
    case LoongArch::R28: OpKind = MCK_GPR; break;
1658
0
    case LoongArch::R29: OpKind = MCK_GPR; break;
1659
0
    case LoongArch::R30: OpKind = MCK_GPR; break;
1660
0
    case LoongArch::R31: OpKind = MCK_GPR; break;
1661
0
    case LoongArch::F0: OpKind = MCK_FPR32; break;
1662
0
    case LoongArch::F1: OpKind = MCK_FPR32; break;
1663
0
    case LoongArch::F2: OpKind = MCK_FPR32; break;
1664
0
    case LoongArch::F3: OpKind = MCK_FPR32; break;
1665
0
    case LoongArch::F4: OpKind = MCK_FPR32; break;
1666
0
    case LoongArch::F5: OpKind = MCK_FPR32; break;
1667
0
    case LoongArch::F6: OpKind = MCK_FPR32; break;
1668
0
    case LoongArch::F7: OpKind = MCK_FPR32; break;
1669
0
    case LoongArch::F8: OpKind = MCK_FPR32; break;
1670
0
    case LoongArch::F9: OpKind = MCK_FPR32; break;
1671
0
    case LoongArch::F10: OpKind = MCK_FPR32; break;
1672
0
    case LoongArch::F11: OpKind = MCK_FPR32; break;
1673
0
    case LoongArch::F12: OpKind = MCK_FPR32; break;
1674
0
    case LoongArch::F13: OpKind = MCK_FPR32; break;
1675
0
    case LoongArch::F14: OpKind = MCK_FPR32; break;
1676
0
    case LoongArch::F15: OpKind = MCK_FPR32; break;
1677
0
    case LoongArch::F16: OpKind = MCK_FPR32; break;
1678
0
    case LoongArch::F17: OpKind = MCK_FPR32; break;
1679
0
    case LoongArch::F18: OpKind = MCK_FPR32; break;
1680
0
    case LoongArch::F19: OpKind = MCK_FPR32; break;
1681
0
    case LoongArch::F20: OpKind = MCK_FPR32; break;
1682
0
    case LoongArch::F21: OpKind = MCK_FPR32; break;
1683
0
    case LoongArch::F22: OpKind = MCK_FPR32; break;
1684
0
    case LoongArch::F23: OpKind = MCK_FPR32; break;
1685
0
    case LoongArch::F24: OpKind = MCK_FPR32; break;
1686
0
    case LoongArch::F25: OpKind = MCK_FPR32; break;
1687
0
    case LoongArch::F26: OpKind = MCK_FPR32; break;
1688
0
    case LoongArch::F27: OpKind = MCK_FPR32; break;
1689
0
    case LoongArch::F28: OpKind = MCK_FPR32; break;
1690
0
    case LoongArch::F29: OpKind = MCK_FPR32; break;
1691
0
    case LoongArch::F30: OpKind = MCK_FPR32; break;
1692
0
    case LoongArch::F31: OpKind = MCK_FPR32; break;
1693
0
    case LoongArch::F0_64: OpKind = MCK_FPR64; break;
1694
0
    case LoongArch::F1_64: OpKind = MCK_FPR64; break;
1695
0
    case LoongArch::F2_64: OpKind = MCK_FPR64; break;
1696
0
    case LoongArch::F3_64: OpKind = MCK_FPR64; break;
1697
0
    case LoongArch::F4_64: OpKind = MCK_FPR64; break;
1698
0
    case LoongArch::F5_64: OpKind = MCK_FPR64; break;
1699
0
    case LoongArch::F6_64: OpKind = MCK_FPR64; break;
1700
0
    case LoongArch::F7_64: OpKind = MCK_FPR64; break;
1701
0
    case LoongArch::F8_64: OpKind = MCK_FPR64; break;
1702
0
    case LoongArch::F9_64: OpKind = MCK_FPR64; break;
1703
0
    case LoongArch::F10_64: OpKind = MCK_FPR64; break;
1704
0
    case LoongArch::F11_64: OpKind = MCK_FPR64; break;
1705
0
    case LoongArch::F12_64: OpKind = MCK_FPR64; break;
1706
0
    case LoongArch::F13_64: OpKind = MCK_FPR64; break;
1707
0
    case LoongArch::F14_64: OpKind = MCK_FPR64; break;
1708
0
    case LoongArch::F15_64: OpKind = MCK_FPR64; break;
1709
0
    case LoongArch::F16_64: OpKind = MCK_FPR64; break;
1710
0
    case LoongArch::F17_64: OpKind = MCK_FPR64; break;
1711
0
    case LoongArch::F18_64: OpKind = MCK_FPR64; break;
1712
0
    case LoongArch::F19_64: OpKind = MCK_FPR64; break;
1713
0
    case LoongArch::F20_64: OpKind = MCK_FPR64; break;
1714
0
    case LoongArch::F21_64: OpKind = MCK_FPR64; break;
1715
0
    case LoongArch::F22_64: OpKind = MCK_FPR64; break;
1716
0
    case LoongArch::F23_64: OpKind = MCK_FPR64; break;
1717
0
    case LoongArch::F24_64: OpKind = MCK_FPR64; break;
1718
0
    case LoongArch::F25_64: OpKind = MCK_FPR64; break;
1719
0
    case LoongArch::F26_64: OpKind = MCK_FPR64; break;
1720
0
    case LoongArch::F27_64: OpKind = MCK_FPR64; break;
1721
0
    case LoongArch::F28_64: OpKind = MCK_FPR64; break;
1722
0
    case LoongArch::F29_64: OpKind = MCK_FPR64; break;
1723
0
    case LoongArch::F30_64: OpKind = MCK_FPR64; break;
1724
0
    case LoongArch::F31_64: OpKind = MCK_FPR64; break;
1725
0
    case LoongArch::FCC0: OpKind = MCK_CFR; break;
1726
0
    case LoongArch::FCC1: OpKind = MCK_CFR; break;
1727
0
    case LoongArch::FCC2: OpKind = MCK_CFR; break;
1728
0
    case LoongArch::FCC3: OpKind = MCK_CFR; break;
1729
0
    case LoongArch::FCC4: OpKind = MCK_CFR; break;
1730
0
    case LoongArch::FCC5: OpKind = MCK_CFR; break;
1731
0
    case LoongArch::FCC6: OpKind = MCK_CFR; break;
1732
0
    case LoongArch::FCC7: OpKind = MCK_CFR; break;
1733
0
    case LoongArch::FCSR0: OpKind = MCK_FCSR; break;
1734
0
    case LoongArch::FCSR1: OpKind = MCK_FCSR; break;
1735
0
    case LoongArch::FCSR2: OpKind = MCK_FCSR; break;
1736
0
    case LoongArch::FCSR3: OpKind = MCK_FCSR; break;
1737
0
    case LoongArch::VR0: OpKind = MCK_LSX128; break;
1738
0
    case LoongArch::VR1: OpKind = MCK_LSX128; break;
1739
0
    case LoongArch::VR2: OpKind = MCK_LSX128; break;
1740
0
    case LoongArch::VR3: OpKind = MCK_LSX128; break;
1741
0
    case LoongArch::VR4: OpKind = MCK_LSX128; break;
1742
0
    case LoongArch::VR5: OpKind = MCK_LSX128; break;
1743
0
    case LoongArch::VR6: OpKind = MCK_LSX128; break;
1744
0
    case LoongArch::VR7: OpKind = MCK_LSX128; break;
1745
0
    case LoongArch::VR8: OpKind = MCK_LSX128; break;
1746
0
    case LoongArch::VR9: OpKind = MCK_LSX128; break;
1747
0
    case LoongArch::VR10: OpKind = MCK_LSX128; break;
1748
0
    case LoongArch::VR11: OpKind = MCK_LSX128; break;
1749
0
    case LoongArch::VR12: OpKind = MCK_LSX128; break;
1750
0
    case LoongArch::VR13: OpKind = MCK_LSX128; break;
1751
0
    case LoongArch::VR14: OpKind = MCK_LSX128; break;
1752
0
    case LoongArch::VR15: OpKind = MCK_LSX128; break;
1753
0
    case LoongArch::VR16: OpKind = MCK_LSX128; break;
1754
0
    case LoongArch::VR17: OpKind = MCK_LSX128; break;
1755
0
    case LoongArch::VR18: OpKind = MCK_LSX128; break;
1756
0
    case LoongArch::VR19: OpKind = MCK_LSX128; break;
1757
0
    case LoongArch::VR20: OpKind = MCK_LSX128; break;
1758
0
    case LoongArch::VR21: OpKind = MCK_LSX128; break;
1759
0
    case LoongArch::VR22: OpKind = MCK_LSX128; break;
1760
0
    case LoongArch::VR23: OpKind = MCK_LSX128; break;
1761
0
    case LoongArch::VR24: OpKind = MCK_LSX128; break;
1762
0
    case LoongArch::VR25: OpKind = MCK_LSX128; break;
1763
0
    case LoongArch::VR26: OpKind = MCK_LSX128; break;
1764
0
    case LoongArch::VR27: OpKind = MCK_LSX128; break;
1765
0
    case LoongArch::VR28: OpKind = MCK_LSX128; break;
1766
0
    case LoongArch::VR29: OpKind = MCK_LSX128; break;
1767
0
    case LoongArch::VR30: OpKind = MCK_LSX128; break;
1768
0
    case LoongArch::VR31: OpKind = MCK_LSX128; break;
1769
0
    case LoongArch::XR0: OpKind = MCK_LASX256; break;
1770
0
    case LoongArch::XR1: OpKind = MCK_LASX256; break;
1771
0
    case LoongArch::XR2: OpKind = MCK_LASX256; break;
1772
0
    case LoongArch::XR3: OpKind = MCK_LASX256; break;
1773
0
    case LoongArch::XR4: OpKind = MCK_LASX256; break;
1774
0
    case LoongArch::XR5: OpKind = MCK_LASX256; break;
1775
0
    case LoongArch::XR6: OpKind = MCK_LASX256; break;
1776
0
    case LoongArch::XR7: OpKind = MCK_LASX256; break;
1777
0
    case LoongArch::XR8: OpKind = MCK_LASX256; break;
1778
0
    case LoongArch::XR9: OpKind = MCK_LASX256; break;
1779
0
    case LoongArch::XR10: OpKind = MCK_LASX256; break;
1780
0
    case LoongArch::XR11: OpKind = MCK_LASX256; break;
1781
0
    case LoongArch::XR12: OpKind = MCK_LASX256; break;
1782
0
    case LoongArch::XR13: OpKind = MCK_LASX256; break;
1783
0
    case LoongArch::XR14: OpKind = MCK_LASX256; break;
1784
0
    case LoongArch::XR15: OpKind = MCK_LASX256; break;
1785
0
    case LoongArch::XR16: OpKind = MCK_LASX256; break;
1786
0
    case LoongArch::XR17: OpKind = MCK_LASX256; break;
1787
0
    case LoongArch::XR18: OpKind = MCK_LASX256; break;
1788
0
    case LoongArch::XR19: OpKind = MCK_LASX256; break;
1789
0
    case LoongArch::XR20: OpKind = MCK_LASX256; break;
1790
0
    case LoongArch::XR21: OpKind = MCK_LASX256; break;
1791
0
    case LoongArch::XR22: OpKind = MCK_LASX256; break;
1792
0
    case LoongArch::XR23: OpKind = MCK_LASX256; break;
1793
0
    case LoongArch::XR24: OpKind = MCK_LASX256; break;
1794
0
    case LoongArch::XR25: OpKind = MCK_LASX256; break;
1795
0
    case LoongArch::XR26: OpKind = MCK_LASX256; break;
1796
0
    case LoongArch::XR27: OpKind = MCK_LASX256; break;
1797
0
    case LoongArch::XR28: OpKind = MCK_LASX256; break;
1798
0
    case LoongArch::XR29: OpKind = MCK_LASX256; break;
1799
0
    case LoongArch::XR30: OpKind = MCK_LASX256; break;
1800
0
    case LoongArch::XR31: OpKind = MCK_LASX256; break;
1801
0
    case LoongArch::SCR0: OpKind = MCK_SCR; break;
1802
0
    case LoongArch::SCR1: OpKind = MCK_SCR; break;
1803
0
    case LoongArch::SCR2: OpKind = MCK_SCR; break;
1804
0
    case LoongArch::SCR3: OpKind = MCK_SCR; break;
1805
0
    }
1806
0
    return isSubclass(OpKind, Kind) ? (unsigned)MCTargetAsmParser::Match_Success :
1807
0
                                      getDiagKindFromRegisterClass(Kind);
1808
0
  }
1809
1810
0
  if (Kind > MCK_LAST_TOKEN && Kind <= MCK_LAST_REGISTER)
1811
0
    return getDiagKindFromRegisterClass(Kind);
1812
1813
0
  return MCTargetAsmParser::Match_InvalidOperand;
1814
0
}
1815
1816
#ifndef NDEBUG
1817
0
const char *getMatchClassName(MatchClassKind Kind) {
1818
0
  switch (Kind) {
1819
0
  case InvalidMatchClass: return "InvalidMatchClass";
1820
0
  case OptionalMatchClass: return "OptionalMatchClass";
1821
0
  case MCK_FCSR: return "MCK_FCSR";
1822
0
  case MCK_SCR: return "MCK_SCR";
1823
0
  case MCK_CFR: return "MCK_CFR";
1824
0
  case MCK_GPRT: return "MCK_GPRT";
1825
0
  case MCK_FPR32: return "MCK_FPR32";
1826
0
  case MCK_FPR64: return "MCK_FPR64";
1827
0
  case MCK_GPR: return "MCK_GPR";
1828
0
  case MCK_LASX256: return "MCK_LASX256";
1829
0
  case MCK_LSX128: return "MCK_LSX128";
1830
0
  case MCK_AtomicMemAsmOperand: return "MCK_AtomicMemAsmOperand";
1831
0
  case MCK_BareSymbol: return "MCK_BareSymbol";
1832
0
  case MCK_Imm: return "MCK_Imm";
1833
0
  case MCK_SImm26OperandB: return "MCK_SImm26OperandB";
1834
0
  case MCK_SImm26OperandBL: return "MCK_SImm26OperandBL";
1835
0
  case MCK_Imm32: return "MCK_Imm32";
1836
0
  case MCK_UImm1: return "MCK_UImm1";
1837
0
  case MCK_UImm2: return "MCK_UImm2";
1838
0
  case MCK_UImm2plus1: return "MCK_UImm2plus1";
1839
0
  case MCK_UImm3: return "MCK_UImm3";
1840
0
  case MCK_UImm4: return "MCK_UImm4";
1841
0
  case MCK_UImm5: return "MCK_UImm5";
1842
0
  case MCK_UImm6: return "MCK_UImm6";
1843
0
  case MCK_UImm7: return "MCK_UImm7";
1844
0
  case MCK_UImm8: return "MCK_UImm8";
1845
0
  case MCK_UImm12: return "MCK_UImm12";
1846
0
  case MCK_UImm12ori: return "MCK_UImm12ori";
1847
0
  case MCK_UImm14: return "MCK_UImm14";
1848
0
  case MCK_UImm15: return "MCK_UImm15";
1849
0
  case MCK_SImm5: return "MCK_SImm5";
1850
0
  case MCK_SImm8: return "MCK_SImm8";
1851
0
  case MCK_SImm8lsl1: return "MCK_SImm8lsl1";
1852
0
  case MCK_SImm8lsl2: return "MCK_SImm8lsl2";
1853
0
  case MCK_SImm8lsl3: return "MCK_SImm8lsl3";
1854
0
  case MCK_SImm9lsl3: return "MCK_SImm9lsl3";
1855
0
  case MCK_SImm10: return "MCK_SImm10";
1856
0
  case MCK_SImm10lsl2: return "MCK_SImm10lsl2";
1857
0
  case MCK_SImm11lsl1: return "MCK_SImm11lsl1";
1858
0
  case MCK_SImm12: return "MCK_SImm12";
1859
0
  case MCK_SImm12addlike: return "MCK_SImm12addlike";
1860
0
  case MCK_SImm12lu52id: return "MCK_SImm12lu52id";
1861
0
  case MCK_SImm13: return "MCK_SImm13";
1862
0
  case MCK_SImm14lsl2: return "MCK_SImm14lsl2";
1863
0
  case MCK_SImm16: return "MCK_SImm16";
1864
0
  case MCK_SImm16lsl2: return "MCK_SImm16lsl2";
1865
0
  case MCK_SImm20: return "MCK_SImm20";
1866
0
  case MCK_SImm20pcalau12i: return "MCK_SImm20pcalau12i";
1867
0
  case MCK_SImm20lu12iw: return "MCK_SImm20lu12iw";
1868
0
  case MCK_SImm20lu32id: return "MCK_SImm20lu32id";
1869
0
  case MCK_SImm20pcaddu18i: return "MCK_SImm20pcaddu18i";
1870
0
  case MCK_SImm21lsl2: return "MCK_SImm21lsl2";
1871
0
  case NumMatchClassKinds: return "NumMatchClassKinds";
1872
0
  }
1873
0
  llvm_unreachable("unhandled MatchClassKind!");
1874
0
}
1875
1876
#endif // NDEBUG
1877
FeatureBitset LoongArchAsmParser::
1878
0
ComputeAvailableFeatures(const FeatureBitset &FB) const {
1879
0
  FeatureBitset Features;
1880
0
  if (FB[LoongArch::Feature64Bit])
1881
0
    Features.set(Feature_IsLA64Bit);
1882
0
  if (!FB[LoongArch::Feature64Bit])
1883
0
    Features.set(Feature_IsLA32Bit);
1884
0
  if (FB[LoongArch::LaGlobalWithPcrel])
1885
0
    Features.set(Feature_HasLaGlobalWithPcrelBit);
1886
0
  if (FB[LoongArch::LaGlobalWithAbs])
1887
0
    Features.set(Feature_HasLaGlobalWithAbsBit);
1888
0
  if (FB[LoongArch::LaLocalWithAbs])
1889
0
    Features.set(Feature_HasLaLocalWithAbsBit);
1890
0
  return Features;
1891
0
}
1892
1893
static bool checkAsmTiedOperandConstraints(const LoongArchAsmParser&AsmParser,
1894
                               unsigned Kind,
1895
                               const OperandVector &Operands,
1896
0
                               uint64_t &ErrorInfo) {
1897
0
  assert(Kind < CVT_NUM_SIGNATURES && "Invalid signature!");
1898
0
  const uint8_t *Converter = ConversionTable[Kind];
1899
0
  for (const uint8_t *p = Converter; *p; p += 2) {
1900
0
    switch (*p) {
1901
0
    case CVT_Tied: {
1902
0
      unsigned OpIdx = *(p + 1);
1903
0
      assert(OpIdx < (size_t)(std::end(TiedAsmOperandTable) -
1904
0
                              std::begin(TiedAsmOperandTable)) &&
1905
0
             "Tied operand not found");
1906
0
      unsigned OpndNum1 = TiedAsmOperandTable[OpIdx][1];
1907
0
      unsigned OpndNum2 = TiedAsmOperandTable[OpIdx][2];
1908
0
      if (OpndNum1 != OpndNum2) {
1909
0
        auto &SrcOp1 = Operands[OpndNum1];
1910
0
        auto &SrcOp2 = Operands[OpndNum2];
1911
0
        if (!AsmParser.areEqualRegs(*SrcOp1, *SrcOp2)) {
1912
0
          ErrorInfo = OpndNum2;
1913
0
          return false;
1914
0
        }
1915
0
      }
1916
0
      break;
1917
0
    }
1918
0
    default:
1919
0
      break;
1920
0
    }
1921
0
  }
1922
0
  return true;
1923
0
}
1924
1925
static const char MnemonicTable[] =
1926
    "\005adc.b\005adc.d\005adc.h\005adc.w\005add.d\005add.w\006addi.d\006add"
1927
    "i.w\taddu12i.d\taddu12i.w\taddu16i.d\006alsl.d\006alsl.w\007alsl.wu\007"
1928
    "amadd.b\007amadd.d\007amadd.h\007amadd.w\namadd_db.b\namadd_db.d\namadd"
1929
    "_db.h\namadd_db.w\007amand.d\007amand.w\namand_db.d\namand_db.w\007amca"
1930
    "s.b\007amcas.d\007amcas.h\007amcas.w\namcas_db.b\namcas_db.d\namcas_db."
1931
    "h\namcas_db.w\007ammax.d\010ammax.du\007ammax.w\010ammax.wu\nammax_db.d"
1932
    "\013ammax_db.du\nammax_db.w\013ammax_db.wu\007ammin.d\010ammin.du\007am"
1933
    "min.w\010ammin.wu\nammin_db.d\013ammin_db.du\nammin_db.w\013ammin_db.wu"
1934
    "\006amor.d\006amor.w\tamor_db.d\tamor_db.w\010amswap.b\010amswap.d\010a"
1935
    "mswap.h\010amswap.w\013amswap_db.b\013amswap_db.d\013amswap_db.h\013ams"
1936
    "wap_db.w\007amxor.d\007amxor.w\namxor_db.d\namxor_db.w\003and\004andi\004"
1937
    "andn\010armadc.w\010armadd.w\010armand.w\tarmmfflag\010armmov.d\010armm"
1938
    "ov.w\007armmove\tarmmtflag\010armnot.w\007armor.w\tarmrotr.w\narmrotri."
1939
    "w\010armrrx.w\010armsbc.w\010armsll.w\tarmslli.w\010armsra.w\tarmsrai.w"
1940
    "\010armsrl.w\tarmsrli.w\010armsub.w\010armxor.w\010asrtgt.d\010asrtle.d"
1941
    "\001b\005bceqz\005bcnez\003beq\004beqz\003bge\004bgeu\004bgez\003bgt\004"
1942
    "bgtu\004bgtz\tbitrev.4b\tbitrev.8b\010bitrev.d\010bitrev.w\002bl\003ble"
1943
    "\004bleu\004blez\003blt\004bltu\004bltz\003bne\004bnez\005break\tbstrin"
1944
    "s.d\tbstrins.w\nbstrpick.d\nbstrpick.w\nbytepick.d\nbytepick.w\005cacop"
1945
    "\006call36\005clo.d\005clo.w\005clz.d\005clz.w\006cpucfg\tcrc.w.b.w\tcr"
1946
    "c.w.d.w\tcrc.w.h.w\tcrc.w.w.w\ncrcc.w.b.w\ncrcc.w.d.w\ncrcc.w.h.w\ncrcc"
1947
    ".w.w.w\005csrrd\005csrwr\007csrxchg\005cto.d\005cto.w\005ctz.d\005ctz.w"
1948
    "\004dbar\004dbcl\005div.d\006div.du\005div.w\006div.wu\004ertn\007ext.w"
1949
    ".b\007ext.w.h\006fabs.d\006fabs.s\006fadd.d\006fadd.s\010fclass.d\010fc"
1950
    "lass.s\nfcmp.caf.d\nfcmp.caf.s\nfcmp.ceq.d\nfcmp.ceq.s\nfcmp.cle.d\nfcm"
1951
    "p.cle.s\nfcmp.clt.d\nfcmp.clt.s\nfcmp.cne.d\nfcmp.cne.s\nfcmp.cor.d\nfc"
1952
    "mp.cor.s\013fcmp.cueq.d\013fcmp.cueq.s\013fcmp.cule.d\013fcmp.cule.s\013"
1953
    "fcmp.cult.d\013fcmp.cult.s\nfcmp.cun.d\nfcmp.cun.s\013fcmp.cune.d\013fc"
1954
    "mp.cune.s\nfcmp.saf.d\nfcmp.saf.s\nfcmp.seq.d\nfcmp.seq.s\nfcmp.sle.d\n"
1955
    "fcmp.sle.s\nfcmp.slt.d\nfcmp.slt.s\nfcmp.sne.d\nfcmp.sne.s\nfcmp.sor.d\n"
1956
    "fcmp.sor.s\013fcmp.sueq.d\013fcmp.sueq.s\013fcmp.sule.d\013fcmp.sule.s\013"
1957
    "fcmp.sult.d\013fcmp.sult.s\nfcmp.sun.d\nfcmp.sun.s\013fcmp.sune.d\013fc"
1958
    "mp.sune.s\013fcopysign.d\013fcopysign.s\tfcvt.d.ld\010fcvt.d.s\tfcvt.ld"
1959
    ".d\010fcvt.s.d\tfcvt.ud.d\006fdiv.d\006fdiv.s\tffint.d.l\tffint.d.w\tff"
1960
    "int.s.l\tffint.s.w\005fld.d\005fld.s\007fldgt.d\007fldgt.s\007fldle.d\007"
1961
    "fldle.s\006fldx.d\006fldx.s\007flogb.d\007flogb.s\007fmadd.d\007fmadd.s"
1962
    "\006fmax.d\006fmax.s\007fmaxa.d\007fmaxa.s\006fmin.d\006fmin.s\007fmina"
1963
    ".d\007fmina.s\006fmov.d\006fmov.s\007fmsub.d\007fmsub.s\006fmul.d\006fm"
1964
    "ul.s\006fneg.d\006fneg.s\010fnmadd.d\010fnmadd.s\010fnmsub.d\010fnmsub."
1965
    "s\010frecip.d\010frecip.s\tfrecipe.d\tfrecipe.s\007frint.d\007frint.s\010"
1966
    "frsqrt.d\010frsqrt.s\tfrsqrte.d\tfrsqrte.s\tfscaleb.d\tfscaleb.s\004fse"
1967
    "l\007fsqrt.d\007fsqrt.s\005fst.d\005fst.s\007fstgt.d\007fstgt.s\007fstl"
1968
    "e.d\007fstle.s\006fstx.d\006fstx.s\006fsub.d\006fsub.s\tftint.l.d\tftin"
1969
    "t.l.s\tftint.w.d\tftint.w.s\013ftintrm.l.d\013ftintrm.l.s\013ftintrm.w."
1970
    "d\013ftintrm.w.s\014ftintrne.l.d\014ftintrne.l.s\014ftintrne.w.d\014fti"
1971
    "ntrne.w.s\013ftintrp.l.d\013ftintrp.l.s\013ftintrp.w.d\013ftintrp.w.s\013"
1972
    "ftintrz.l.d\013ftintrz.l.s\013ftintrz.w.d\013ftintrz.w.s\006gcsrrd\006g"
1973
    "csrwr\010gcsrxchg\tgtlbflush\004hvcl\004ibar\004idle\006invtlb\tiocsrrd"
1974
    ".b\tiocsrrd.d\tiocsrrd.h\tiocsrrd.w\tiocsrwr.b\tiocsrwr.d\tiocsrwr.h\ti"
1975
    "ocsrwr.w\004jirl\006jiscr0\006jiscr1\002jr\002la\006la.abs\tla.global\006"
1976
    "la.got\010la.local\010la.pcrel\tla.tls.gd\tla.tls.ie\tla.tls.ld\tla.tls"
1977
    ".le\004ld.b\005ld.bu\004ld.d\004ld.h\005ld.hu\004ld.w\005ld.wu\005lddir"
1978
    "\006ldgt.b\006ldgt.d\006ldgt.h\006ldgt.w\005ldl.d\005ldl.w\006ldle.b\006"
1979
    "ldle.d\006ldle.h\006ldle.w\005ldpte\007ldptr.d\007ldptr.w\005ldr.d\005l"
1980
    "dr.w\005ldx.b\006ldx.bu\005ldx.d\005ldx.h\006ldx.hu\005ldx.w\006ldx.wu\004"
1981
    "li.d\004li.w\004ll.d\004ll.w\007llacq.d\007llacq.w\007lu12i.w\007lu32i."
1982
    "d\007lu52i.d\007maskeqz\007masknez\005mod.d\006mod.du\005mod.w\006mod.w"
1983
    "u\010movcf2fr\010movcf2gr\004move\nmovfcsr2gr\010movfr2cf\nmovfr2gr.d\n"
1984
    "movfr2gr.s\013movfrh2gr.s\010movgr2cf\nmovgr2fcsr\nmovgr2fr.d\nmovgr2fr"
1985
    ".w\013movgr2frh.w\tmovgr2scr\tmovscr2gr\005mul.d\005mul.w\006mulh.d\007"
1986
    "mulh.du\006mulh.w\007mulh.wu\010mulw.d.w\tmulw.d.wu\003nop\003nor\002or"
1987
    "\003ori\003orn\006pcaddi\tpcaddu12i\tpcaddu18i\tpcalau12i\005preld\006p"
1988
    "reldx\005rcr.b\005rcr.d\005rcr.h\005rcr.w\006rcri.b\006rcri.d\006rcri.h"
1989
    "\006rcri.w\010rdtime.d\trdtimeh.w\trdtimel.w\003ret\007revb.2h\007revb."
1990
    "2w\007revb.4h\006revb.d\007revh.2w\006revh.d\006rotr.b\006rotr.d\006rot"
1991
    "r.h\006rotr.w\007rotri.b\007rotri.d\007rotri.h\007rotri.w\005sbc.b\005s"
1992
    "bc.d\005sbc.h\005sbc.w\004sc.d\004sc.q\004sc.w\007screl.d\007screl.w\007"
1993
    "setarmj\007setx86j\013setx86loope\014setx86loopne\005sll.d\005sll.w\006"
1994
    "slli.d\006slli.w\003slt\004slti\004sltu\005sltui\005sra.d\005sra.w\006s"
1995
    "rai.d\006srai.w\005srl.d\005srl.w\006srli.d\006srli.w\004st.b\004st.d\004"
1996
    "st.h\004st.w\006stgt.b\006stgt.d\006stgt.h\006stgt.w\005stl.d\005stl.w\006"
1997
    "stle.b\006stle.d\006stle.h\006stle.w\007stptr.d\007stptr.w\005str.d\005"
1998
    "str.w\005stx.b\005stx.d\005stx.h\005stx.w\005sub.d\005sub.w\007syscall\006"
1999
    "tail36\006tlbclr\007tlbfill\010tlbflush\005tlbrd\007tlbsrch\005tlbwr\007"
2000
    "vabsd.b\010vabsd.bu\007vabsd.d\010vabsd.du\007vabsd.h\010vabsd.hu\007va"
2001
    "bsd.w\010vabsd.wu\006vadd.b\006vadd.d\006vadd.h\006vadd.q\006vadd.w\007"
2002
    "vadda.b\007vadda.d\007vadda.h\007vadda.w\010vaddi.bu\010vaddi.du\010vad"
2003
    "di.hu\010vaddi.wu\013vaddwev.d.w\014vaddwev.d.wu\016vaddwev.d.wu.w\013v"
2004
    "addwev.h.b\014vaddwev.h.bu\016vaddwev.h.bu.b\013vaddwev.q.d\014vaddwev."
2005
    "q.du\016vaddwev.q.du.d\013vaddwev.w.h\014vaddwev.w.hu\016vaddwev.w.hu.h"
2006
    "\013vaddwod.d.w\014vaddwod.d.wu\016vaddwod.d.wu.w\013vaddwod.h.b\014vad"
2007
    "dwod.h.bu\016vaddwod.h.bu.b\013vaddwod.q.d\014vaddwod.q.du\016vaddwod.q"
2008
    ".du.d\013vaddwod.w.h\014vaddwod.w.hu\016vaddwod.w.hu.h\006vand.v\007van"
2009
    "di.b\007vandn.v\006vavg.b\007vavg.bu\006vavg.d\007vavg.du\006vavg.h\007"
2010
    "vavg.hu\006vavg.w\007vavg.wu\007vavgr.b\010vavgr.bu\007vavgr.d\010vavgr"
2011
    ".du\007vavgr.h\010vavgr.hu\007vavgr.w\010vavgr.wu\tvbitclr.b\tvbitclr.d"
2012
    "\tvbitclr.h\tvbitclr.w\nvbitclri.b\nvbitclri.d\nvbitclri.h\nvbitclri.w\t"
2013
    "vbitrev.b\tvbitrev.d\tvbitrev.h\tvbitrev.w\nvbitrevi.b\nvbitrevi.d\nvbi"
2014
    "trevi.h\nvbitrevi.w\tvbitsel.v\nvbitseli.b\tvbitset.b\tvbitset.d\tvbits"
2015
    "et.h\tvbitset.w\nvbitseti.b\nvbitseti.d\nvbitseti.h\nvbitseti.w\007vbsl"
2016
    "l.v\007vbsrl.v\006vclo.b\006vclo.d\006vclo.h\006vclo.w\006vclz.b\006vcl"
2017
    "z.d\006vclz.h\006vclz.w\006vdiv.b\007vdiv.bu\006vdiv.d\007vdiv.du\006vd"
2018
    "iv.h\007vdiv.hu\006vdiv.w\007vdiv.wu\013vext2xv.d.b\013vext2xv.d.h\013v"
2019
    "ext2xv.d.w\015vext2xv.du.bu\015vext2xv.du.hu\015vext2xv.du.wu\013vext2x"
2020
    "v.h.b\015vext2xv.hu.bu\013vext2xv.w.b\013vext2xv.w.h\015vext2xv.wu.bu\015"
2021
    "vext2xv.wu.hu\tvexth.d.w\013vexth.du.wu\tvexth.h.b\013vexth.hu.bu\tvext"
2022
    "h.q.d\013vexth.qu.du\tvexth.w.h\013vexth.wu.hu\tvextl.q.d\013vextl.qu.d"
2023
    "u\nvextrins.b\nvextrins.d\nvextrins.h\nvextrins.w\007vfadd.d\007vfadd.s"
2024
    "\tvfclass.d\tvfclass.s\013vfcmp.caf.d\013vfcmp.caf.s\013vfcmp.ceq.d\013"
2025
    "vfcmp.ceq.s\013vfcmp.cle.d\013vfcmp.cle.s\013vfcmp.clt.d\013vfcmp.clt.s"
2026
    "\013vfcmp.cne.d\013vfcmp.cne.s\013vfcmp.cor.d\013vfcmp.cor.s\014vfcmp.c"
2027
    "ueq.d\014vfcmp.cueq.s\014vfcmp.cule.d\014vfcmp.cule.s\014vfcmp.cult.d\014"
2028
    "vfcmp.cult.s\013vfcmp.cun.d\013vfcmp.cun.s\014vfcmp.cune.d\014vfcmp.cun"
2029
    "e.s\013vfcmp.saf.d\013vfcmp.saf.s\013vfcmp.seq.d\013vfcmp.seq.s\013vfcm"
2030
    "p.sle.d\013vfcmp.sle.s\013vfcmp.slt.d\013vfcmp.slt.s\013vfcmp.sne.d\013"
2031
    "vfcmp.sne.s\013vfcmp.sor.d\013vfcmp.sor.s\014vfcmp.sueq.d\014vfcmp.sueq"
2032
    ".s\014vfcmp.sule.d\014vfcmp.sule.s\014vfcmp.sult.d\014vfcmp.sult.s\013v"
2033
    "fcmp.sun.d\013vfcmp.sun.s\014vfcmp.sune.d\014vfcmp.sune.s\tvfcvt.h.s\tv"
2034
    "fcvt.s.d\nvfcvth.d.s\nvfcvth.s.h\nvfcvtl.d.s\nvfcvtl.s.h\007vfdiv.d\007"
2035
    "vfdiv.s\nvffint.d.l\013vffint.d.lu\nvffint.s.l\nvffint.s.w\013vffint.s."
2036
    "wu\013vffinth.d.w\013vffintl.d.w\010vflogb.d\010vflogb.s\010vfmadd.d\010"
2037
    "vfmadd.s\007vfmax.d\007vfmax.s\010vfmaxa.d\010vfmaxa.s\007vfmin.d\007vf"
2038
    "min.s\010vfmina.d\010vfmina.s\010vfmsub.d\010vfmsub.s\007vfmul.d\007vfm"
2039
    "ul.s\tvfnmadd.d\tvfnmadd.s\tvfnmsub.d\tvfnmsub.s\tvfrecip.d\tvfrecip.s\n"
2040
    "vfrecipe.d\nvfrecipe.s\010vfrint.d\010vfrint.s\nvfrintrm.d\nvfrintrm.s\013"
2041
    "vfrintrne.d\013vfrintrne.s\nvfrintrp.d\nvfrintrp.s\nvfrintrz.d\nvfrintr"
2042
    "z.s\tvfrsqrt.d\tvfrsqrt.s\nvfrsqrte.d\nvfrsqrte.s\010vfrstp.b\010vfrstp"
2043
    ".h\tvfrstpi.b\tvfrstpi.h\010vfsqrt.d\010vfsqrt.s\007vfsub.d\007vfsub.s\n"
2044
    "vftint.l.d\013vftint.lu.d\nvftint.w.d\nvftint.w.s\013vftint.wu.s\013vft"
2045
    "inth.l.s\013vftintl.l.s\014vftintrm.l.d\014vftintrm.w.d\014vftintrm.w.s"
2046
    "\015vftintrmh.l.s\015vftintrml.l.s\015vftintrne.l.d\015vftintrne.w.d\015"
2047
    "vftintrne.w.s\016vftintrneh.l.s\016vftintrnel.l.s\014vftintrp.l.d\014vf"
2048
    "tintrp.w.d\014vftintrp.w.s\015vftintrph.l.s\015vftintrpl.l.s\014vftintr"
2049
    "z.l.d\015vftintrz.lu.d\014vftintrz.w.d\014vftintrz.w.s\015vftintrz.wu.s"
2050
    "\015vftintrzh.l.s\015vftintrzl.l.s\nvhaddw.d.w\014vhaddw.du.wu\nvhaddw."
2051
    "h.b\014vhaddw.hu.bu\nvhaddw.q.d\014vhaddw.qu.du\nvhaddw.w.h\014vhaddw.w"
2052
    "u.hu\nvhsubw.d.w\014vhsubw.du.wu\nvhsubw.h.b\014vhsubw.hu.bu\nvhsubw.q."
2053
    "d\014vhsubw.qu.du\nvhsubw.w.h\014vhsubw.wu.hu\007vilvh.b\007vilvh.d\007"
2054
    "vilvh.h\007vilvh.w\007vilvl.b\007vilvl.d\007vilvl.h\007vilvl.w\013vinsg"
2055
    "r2vr.b\013vinsgr2vr.d\013vinsgr2vr.h\013vinsgr2vr.w\003vld\004vldi\tvld"
2056
    "repl.b\tvldrepl.d\tvldrepl.h\tvldrepl.w\004vldx\007vmadd.b\007vmadd.d\007"
2057
    "vmadd.h\007vmadd.w\014vmaddwev.d.w\015vmaddwev.d.wu\017vmaddwev.d.wu.w\014"
2058
    "vmaddwev.h.b\015vmaddwev.h.bu\017vmaddwev.h.bu.b\014vmaddwev.q.d\015vma"
2059
    "ddwev.q.du\017vmaddwev.q.du.d\014vmaddwev.w.h\015vmaddwev.w.hu\017vmadd"
2060
    "wev.w.hu.h\014vmaddwod.d.w\015vmaddwod.d.wu\017vmaddwod.d.wu.w\014vmadd"
2061
    "wod.h.b\015vmaddwod.h.bu\017vmaddwod.h.bu.b\014vmaddwod.q.d\015vmaddwod"
2062
    ".q.du\017vmaddwod.q.du.d\014vmaddwod.w.h\015vmaddwod.w.hu\017vmaddwod.w"
2063
    ".hu.h\006vmax.b\007vmax.bu\006vmax.d\007vmax.du\006vmax.h\007vmax.hu\006"
2064
    "vmax.w\007vmax.wu\007vmaxi.b\010vmaxi.bu\007vmaxi.d\010vmaxi.du\007vmax"
2065
    "i.h\010vmaxi.hu\007vmaxi.w\010vmaxi.wu\006vmin.b\007vmin.bu\006vmin.d\007"
2066
    "vmin.du\006vmin.h\007vmin.hu\006vmin.w\007vmin.wu\007vmini.b\010vmini.b"
2067
    "u\007vmini.d\010vmini.du\007vmini.h\010vmini.hu\007vmini.w\010vmini.wu\006"
2068
    "vmod.b\007vmod.bu\006vmod.d\007vmod.du\006vmod.h\007vmod.hu\006vmod.w\007"
2069
    "vmod.wu\tvmskgez.b\tvmskltz.b\tvmskltz.d\tvmskltz.h\tvmskltz.w\010vmskn"
2070
    "z.b\007vmsub.b\007vmsub.d\007vmsub.h\007vmsub.w\006vmuh.b\007vmuh.bu\006"
2071
    "vmuh.d\007vmuh.du\006vmuh.h\007vmuh.hu\006vmuh.w\007vmuh.wu\006vmul.b\006"
2072
    "vmul.d\006vmul.h\006vmul.w\013vmulwev.d.w\014vmulwev.d.wu\016vmulwev.d."
2073
    "wu.w\013vmulwev.h.b\014vmulwev.h.bu\016vmulwev.h.bu.b\013vmulwev.q.d\014"
2074
    "vmulwev.q.du\016vmulwev.q.du.d\013vmulwev.w.h\014vmulwev.w.hu\016vmulwe"
2075
    "v.w.hu.h\013vmulwod.d.w\014vmulwod.d.wu\016vmulwod.d.wu.w\013vmulwod.h."
2076
    "b\014vmulwod.h.bu\016vmulwod.h.bu.b\013vmulwod.q.d\014vmulwod.q.du\016v"
2077
    "mulwod.q.du.d\013vmulwod.w.h\014vmulwod.w.hu\016vmulwod.w.hu.h\006vneg."
2078
    "b\006vneg.d\006vneg.h\006vneg.w\006vnor.v\007vnori.b\005vor.v\006vori.b"
2079
    "\006vorn.v\tvpackev.b\tvpackev.d\tvpackev.h\tvpackev.w\tvpackod.b\tvpac"
2080
    "kod.d\tvpackod.h\tvpackod.w\007vpcnt.b\007vpcnt.d\007vpcnt.h\007vpcnt.w"
2081
    "\010vpermi.w\tvpickev.b\tvpickev.d\tvpickev.h\tvpickev.w\tvpickod.b\tvp"
2082
    "ickod.d\tvpickod.h\tvpickod.w\014vpickve2gr.b\015vpickve2gr.bu\014vpick"
2083
    "ve2gr.d\015vpickve2gr.du\014vpickve2gr.h\015vpickve2gr.hu\014vpickve2gr"
2084
    ".w\015vpickve2gr.wu\014vreplgr2vr.b\014vreplgr2vr.d\014vreplgr2vr.h\014"
2085
    "vreplgr2vr.w\010vrepli.b\010vrepli.d\010vrepli.h\010vrepli.w\tvreplve.b"
2086
    "\tvreplve.d\tvreplve.h\tvreplve.w\nvreplvei.b\nvreplvei.d\nvreplvei.h\n"
2087
    "vreplvei.w\007vrotr.b\007vrotr.d\007vrotr.h\007vrotr.w\010vrotri.b\010v"
2088
    "rotri.d\010vrotri.h\010vrotri.w\007vsadd.b\010vsadd.bu\007vsadd.d\010vs"
2089
    "add.du\007vsadd.h\010vsadd.hu\007vsadd.w\010vsadd.wu\006vsat.b\007vsat."
2090
    "bu\006vsat.d\007vsat.du\006vsat.h\007vsat.hu\006vsat.w\007vsat.wu\006vs"
2091
    "eq.b\006vseq.d\006vseq.h\006vseq.w\007vseqi.b\007vseqi.d\007vseqi.h\007"
2092
    "vseqi.w\014vsetallnez.b\014vsetallnez.d\014vsetallnez.h\014vsetallnez.w"
2093
    "\014vsetanyeqz.b\014vsetanyeqz.d\014vsetanyeqz.h\014vsetanyeqz.w\tvsete"
2094
    "qz.v\tvsetnez.v\007vshuf.b\007vshuf.d\007vshuf.h\007vshuf.w\tvshuf4i.b\t"
2095
    "vshuf4i.d\tvshuf4i.h\tvshuf4i.w\nvsigncov.b\nvsigncov.d\nvsigncov.h\nvs"
2096
    "igncov.w\006vsle.b\007vsle.bu\006vsle.d\007vsle.du\006vsle.h\007vsle.hu"
2097
    "\006vsle.w\007vsle.wu\007vslei.b\010vslei.bu\007vslei.d\010vslei.du\007"
2098
    "vslei.h\010vslei.hu\007vslei.w\010vslei.wu\006vsll.b\006vsll.d\006vsll."
2099
    "h\006vsll.w\007vslli.b\007vslli.d\007vslli.h\007vslli.w\013vsllwil.d.w\015"
2100
    "vsllwil.du.wu\013vsllwil.h.b\015vsllwil.hu.bu\013vsllwil.w.h\015vsllwil"
2101
    ".wu.hu\006vslt.b\007vslt.bu\006vslt.d\007vslt.du\006vslt.h\007vslt.hu\006"
2102
    "vslt.w\007vslt.wu\007vslti.b\010vslti.bu\007vslti.d\010vslti.du\007vslt"
2103
    "i.h\010vslti.hu\007vslti.w\010vslti.wu\006vsra.b\006vsra.d\006vsra.h\006"
2104
    "vsra.w\007vsrai.b\007vsrai.d\007vsrai.h\007vsrai.w\tvsran.b.h\tvsran.h."
2105
    "w\tvsran.w.d\nvsrani.b.h\nvsrani.d.q\nvsrani.h.w\nvsrani.w.d\007vsrar.b"
2106
    "\007vsrar.d\007vsrar.h\007vsrar.w\010vsrari.b\010vsrari.d\010vsrari.h\010"
2107
    "vsrari.w\nvsrarn.b.h\nvsrarn.h.w\nvsrarn.w.d\013vsrarni.b.h\013vsrarni."
2108
    "d.q\013vsrarni.h.w\013vsrarni.w.d\006vsrl.b\006vsrl.d\006vsrl.h\006vsrl"
2109
    ".w\007vsrli.b\007vsrli.d\007vsrli.h\007vsrli.w\tvsrln.b.h\tvsrln.h.w\tv"
2110
    "srln.w.d\nvsrlni.b.h\nvsrlni.d.q\nvsrlni.h.w\nvsrlni.w.d\007vsrlr.b\007"
2111
    "vsrlr.d\007vsrlr.h\007vsrlr.w\010vsrlri.b\010vsrlri.d\010vsrlri.h\010vs"
2112
    "rlri.w\nvsrlrn.b.h\nvsrlrn.h.w\nvsrlrn.w.d\013vsrlrni.b.h\013vsrlrni.d."
2113
    "q\013vsrlrni.h.w\013vsrlrni.w.d\nvssran.b.h\013vssran.bu.h\nvssran.h.w\013"
2114
    "vssran.hu.w\nvssran.w.d\013vssran.wu.d\013vssrani.b.h\014vssrani.bu.h\013"
2115
    "vssrani.d.q\014vssrani.du.q\013vssrani.h.w\014vssrani.hu.w\013vssrani.w"
2116
    ".d\014vssrani.wu.d\013vssrarn.b.h\014vssrarn.bu.h\013vssrarn.h.w\014vss"
2117
    "rarn.hu.w\013vssrarn.w.d\014vssrarn.wu.d\014vssrarni.b.h\015vssrarni.bu"
2118
    ".h\014vssrarni.d.q\015vssrarni.du.q\014vssrarni.h.w\015vssrarni.hu.w\014"
2119
    "vssrarni.w.d\015vssrarni.wu.d\nvssrln.b.h\013vssrln.bu.h\nvssrln.h.w\013"
2120
    "vssrln.hu.w\nvssrln.w.d\013vssrln.wu.d\013vssrlni.b.h\014vssrlni.bu.h\013"
2121
    "vssrlni.d.q\014vssrlni.du.q\013vssrlni.h.w\014vssrlni.hu.w\013vssrlni.w"
2122
    ".d\014vssrlni.wu.d\013vssrlrn.b.h\014vssrlrn.bu.h\013vssrlrn.h.w\014vss"
2123
    "rlrn.hu.w\013vssrlrn.w.d\014vssrlrn.wu.d\014vssrlrni.b.h\015vssrlrni.bu"
2124
    ".h\014vssrlrni.d.q\015vssrlrni.du.q\014vssrlrni.h.w\015vssrlrni.hu.w\014"
2125
    "vssrlrni.w.d\015vssrlrni.wu.d\007vssub.b\010vssub.bu\007vssub.d\010vssu"
2126
    "b.du\007vssub.h\010vssub.hu\007vssub.w\010vssub.wu\003vst\010vstelm.b\010"
2127
    "vstelm.d\010vstelm.h\010vstelm.w\004vstx\006vsub.b\006vsub.d\006vsub.h\006"
2128
    "vsub.q\006vsub.w\010vsubi.bu\010vsubi.du\010vsubi.hu\010vsubi.wu\013vsu"
2129
    "bwev.d.w\014vsubwev.d.wu\013vsubwev.h.b\014vsubwev.h.bu\013vsubwev.q.d\014"
2130
    "vsubwev.q.du\013vsubwev.w.h\014vsubwev.w.hu\013vsubwod.d.w\014vsubwod.d"
2131
    ".wu\013vsubwod.h.b\014vsubwod.h.bu\013vsubwod.q.d\014vsubwod.q.du\013vs"
2132
    "ubwod.w.h\014vsubwod.w.hu\006vxor.v\007vxori.b\010x86adc.b\010x86adc.d\010"
2133
    "x86adc.h\010x86adc.w\010x86add.b\010x86add.d\tx86add.du\010x86add.h\010"
2134
    "x86add.w\tx86add.wu\010x86and.b\010x86and.d\010x86and.h\010x86and.w\010"
2135
    "x86clrtm\010x86dec.b\010x86dec.d\010x86dec.h\010x86dec.w\tx86dectop\010"
2136
    "x86inc.b\010x86inc.d\010x86inc.h\010x86inc.w\tx86inctop\tx86mfflag\010x"
2137
    "86mftop\tx86mtflag\010x86mttop\010x86mul.b\tx86mul.bu\010x86mul.d\tx86m"
2138
    "ul.du\010x86mul.h\tx86mul.hu\010x86mul.w\tx86mul.wu\007x86or.b\007x86or"
2139
    ".d\007x86or.h\007x86or.w\010x86rcl.b\010x86rcl.d\010x86rcl.h\010x86rcl."
2140
    "w\tx86rcli.b\tx86rcli.d\tx86rcli.h\tx86rcli.w\010x86rcr.b\010x86rcr.d\010"
2141
    "x86rcr.h\010x86rcr.w\tx86rcri.b\tx86rcri.d\tx86rcri.h\tx86rcri.w\tx86ro"
2142
    "tl.b\tx86rotl.d\tx86rotl.h\tx86rotl.w\nx86rotli.b\nx86rotli.d\nx86rotli"
2143
    ".h\nx86rotli.w\tx86rotr.b\tx86rotr.d\tx86rotr.h\tx86rotr.w\nx86rotri.b\n"
2144
    "x86rotri.d\nx86rotri.h\nx86rotri.w\010x86sbc.b\010x86sbc.d\010x86sbc.h\010"
2145
    "x86sbc.w\tx86settag\010x86settm\010x86sll.b\010x86sll.d\010x86sll.h\010"
2146
    "x86sll.w\tx86slli.b\tx86slli.d\tx86slli.h\tx86slli.w\010x86sra.b\010x86"
2147
    "sra.d\010x86sra.h\010x86sra.w\tx86srai.b\tx86srai.d\tx86srai.h\tx86srai"
2148
    ".w\010x86srl.b\010x86srl.d\010x86srl.h\010x86srl.w\tx86srli.b\tx86srli."
2149
    "d\tx86srli.h\tx86srli.w\010x86sub.b\010x86sub.d\tx86sub.du\010x86sub.h\010"
2150
    "x86sub.w\tx86sub.wu\010x86xor.b\010x86xor.d\010x86xor.h\010x86xor.w\003"
2151
    "xor\004xori\010xvabsd.b\txvabsd.bu\010xvabsd.d\txvabsd.du\010xvabsd.h\t"
2152
    "xvabsd.hu\010xvabsd.w\txvabsd.wu\007xvadd.b\007xvadd.d\007xvadd.h\007xv"
2153
    "add.q\007xvadd.w\010xvadda.b\010xvadda.d\010xvadda.h\010xvadda.w\txvadd"
2154
    "i.bu\txvaddi.du\txvaddi.hu\txvaddi.wu\014xvaddwev.d.w\015xvaddwev.d.wu\017"
2155
    "xvaddwev.d.wu.w\014xvaddwev.h.b\015xvaddwev.h.bu\017xvaddwev.h.bu.b\014"
2156
    "xvaddwev.q.d\015xvaddwev.q.du\017xvaddwev.q.du.d\014xvaddwev.w.h\015xva"
2157
    "ddwev.w.hu\017xvaddwev.w.hu.h\014xvaddwod.d.w\015xvaddwod.d.wu\017xvadd"
2158
    "wod.d.wu.w\014xvaddwod.h.b\015xvaddwod.h.bu\017xvaddwod.h.bu.b\014xvadd"
2159
    "wod.q.d\015xvaddwod.q.du\017xvaddwod.q.du.d\014xvaddwod.w.h\015xvaddwod"
2160
    ".w.hu\017xvaddwod.w.hu.h\007xvand.v\010xvandi.b\010xvandn.v\007xvavg.b\010"
2161
    "xvavg.bu\007xvavg.d\010xvavg.du\007xvavg.h\010xvavg.hu\007xvavg.w\010xv"
2162
    "avg.wu\010xvavgr.b\txvavgr.bu\010xvavgr.d\txvavgr.du\010xvavgr.h\txvavg"
2163
    "r.hu\010xvavgr.w\txvavgr.wu\nxvbitclr.b\nxvbitclr.d\nxvbitclr.h\nxvbitc"
2164
    "lr.w\013xvbitclri.b\013xvbitclri.d\013xvbitclri.h\013xvbitclri.w\nxvbit"
2165
    "rev.b\nxvbitrev.d\nxvbitrev.h\nxvbitrev.w\013xvbitrevi.b\013xvbitrevi.d"
2166
    "\013xvbitrevi.h\013xvbitrevi.w\nxvbitsel.v\013xvbitseli.b\nxvbitset.b\n"
2167
    "xvbitset.d\nxvbitset.h\nxvbitset.w\013xvbitseti.b\013xvbitseti.d\013xvb"
2168
    "itseti.h\013xvbitseti.w\010xvbsll.v\010xvbsrl.v\007xvclo.b\007xvclo.d\007"
2169
    "xvclo.h\007xvclo.w\007xvclz.b\007xvclz.d\007xvclz.h\007xvclz.w\007xvdiv"
2170
    ".b\010xvdiv.bu\007xvdiv.d\010xvdiv.du\007xvdiv.h\010xvdiv.hu\007xvdiv.w"
2171
    "\010xvdiv.wu\nxvexth.d.w\014xvexth.du.wu\nxvexth.h.b\014xvexth.hu.bu\nx"
2172
    "vexth.q.d\014xvexth.qu.du\nxvexth.w.h\014xvexth.wu.hu\nxvextl.q.d\014xv"
2173
    "extl.qu.du\013xvextrins.b\013xvextrins.d\013xvextrins.h\013xvextrins.w\010"
2174
    "xvfadd.d\010xvfadd.s\nxvfclass.d\nxvfclass.s\014xvfcmp.caf.d\014xvfcmp."
2175
    "caf.s\014xvfcmp.ceq.d\014xvfcmp.ceq.s\014xvfcmp.cle.d\014xvfcmp.cle.s\014"
2176
    "xvfcmp.clt.d\014xvfcmp.clt.s\014xvfcmp.cne.d\014xvfcmp.cne.s\014xvfcmp."
2177
    "cor.d\014xvfcmp.cor.s\015xvfcmp.cueq.d\015xvfcmp.cueq.s\015xvfcmp.cule."
2178
    "d\015xvfcmp.cule.s\015xvfcmp.cult.d\015xvfcmp.cult.s\014xvfcmp.cun.d\014"
2179
    "xvfcmp.cun.s\015xvfcmp.cune.d\015xvfcmp.cune.s\014xvfcmp.saf.d\014xvfcm"
2180
    "p.saf.s\014xvfcmp.seq.d\014xvfcmp.seq.s\014xvfcmp.sle.d\014xvfcmp.sle.s"
2181
    "\014xvfcmp.slt.d\014xvfcmp.slt.s\014xvfcmp.sne.d\014xvfcmp.sne.s\014xvf"
2182
    "cmp.sor.d\014xvfcmp.sor.s\015xvfcmp.sueq.d\015xvfcmp.sueq.s\015xvfcmp.s"
2183
    "ule.d\015xvfcmp.sule.s\015xvfcmp.sult.d\015xvfcmp.sult.s\014xvfcmp.sun."
2184
    "d\014xvfcmp.sun.s\015xvfcmp.sune.d\015xvfcmp.sune.s\nxvfcvt.h.s\nxvfcvt"
2185
    ".s.d\013xvfcvth.d.s\013xvfcvth.s.h\013xvfcvtl.d.s\013xvfcvtl.s.h\010xvf"
2186
    "div.d\010xvfdiv.s\013xvffint.d.l\014xvffint.d.lu\013xvffint.s.l\013xvff"
2187
    "int.s.w\014xvffint.s.wu\014xvffinth.d.w\014xvffintl.d.w\txvflogb.d\txvf"
2188
    "logb.s\txvfmadd.d\txvfmadd.s\010xvfmax.d\010xvfmax.s\txvfmaxa.d\txvfmax"
2189
    "a.s\010xvfmin.d\010xvfmin.s\txvfmina.d\txvfmina.s\txvfmsub.d\txvfmsub.s"
2190
    "\010xvfmul.d\010xvfmul.s\nxvfnmadd.d\nxvfnmadd.s\nxvfnmsub.d\nxvfnmsub."
2191
    "s\nxvfrecip.d\nxvfrecip.s\013xvfrecipe.d\013xvfrecipe.s\txvfrint.d\txvf"
2192
    "rint.s\013xvfrintrm.d\013xvfrintrm.s\014xvfrintrne.d\014xvfrintrne.s\013"
2193
    "xvfrintrp.d\013xvfrintrp.s\013xvfrintrz.d\013xvfrintrz.s\nxvfrsqrt.d\nx"
2194
    "vfrsqrt.s\013xvfrsqrte.d\013xvfrsqrte.s\txvfrstp.b\txvfrstp.h\nxvfrstpi"
2195
    ".b\nxvfrstpi.h\txvfsqrt.d\txvfsqrt.s\010xvfsub.d\010xvfsub.s\013xvftint"
2196
    ".l.d\014xvftint.lu.d\013xvftint.w.d\013xvftint.w.s\014xvftint.wu.s\014x"
2197
    "vftinth.l.s\014xvftintl.l.s\015xvftintrm.l.d\015xvftintrm.w.d\015xvftin"
2198
    "trm.w.s\016xvftintrmh.l.s\016xvftintrml.l.s\016xvftintrne.l.d\016xvftin"
2199
    "trne.w.d\016xvftintrne.w.s\017xvftintrneh.l.s\017xvftintrnel.l.s\015xvf"
2200
    "tintrp.l.d\015xvftintrp.w.d\015xvftintrp.w.s\016xvftintrph.l.s\016xvfti"
2201
    "ntrpl.l.s\015xvftintrz.l.d\016xvftintrz.lu.d\015xvftintrz.w.d\015xvftin"
2202
    "trz.w.s\016xvftintrz.wu.s\016xvftintrzh.l.s\016xvftintrzl.l.s\013xvhadd"
2203
    "w.d.w\015xvhaddw.du.wu\013xvhaddw.h.b\015xvhaddw.hu.bu\013xvhaddw.q.d\015"
2204
    "xvhaddw.qu.du\013xvhaddw.w.h\015xvhaddw.wu.hu\txvhseli.d\013xvhsubw.d.w"
2205
    "\015xvhsubw.du.wu\013xvhsubw.h.b\015xvhsubw.hu.bu\013xvhsubw.q.d\015xvh"
2206
    "subw.qu.du\013xvhsubw.w.h\015xvhsubw.wu.hu\010xvilvh.b\010xvilvh.d\010x"
2207
    "vilvh.h\010xvilvh.w\010xvilvl.b\010xvilvl.d\010xvilvl.h\010xvilvl.w\014"
2208
    "xvinsgr2vr.d\014xvinsgr2vr.w\nxvinsve0.d\nxvinsve0.w\004xvld\005xvldi\n"
2209
    "xvldrepl.b\nxvldrepl.d\nxvldrepl.h\nxvldrepl.w\005xvldx\010xvmadd.b\010"
2210
    "xvmadd.d\010xvmadd.h\010xvmadd.w\015xvmaddwev.d.w\016xvmaddwev.d.wu\020"
2211
    "xvmaddwev.d.wu.w\015xvmaddwev.h.b\016xvmaddwev.h.bu\020xvmaddwev.h.bu.b"
2212
    "\015xvmaddwev.q.d\016xvmaddwev.q.du\020xvmaddwev.q.du.d\015xvmaddwev.w."
2213
    "h\016xvmaddwev.w.hu\020xvmaddwev.w.hu.h\015xvmaddwod.d.w\016xvmaddwod.d"
2214
    ".wu\020xvmaddwod.d.wu.w\015xvmaddwod.h.b\016xvmaddwod.h.bu\020xvmaddwod"
2215
    ".h.bu.b\015xvmaddwod.q.d\016xvmaddwod.q.du\020xvmaddwod.q.du.d\015xvmad"
2216
    "dwod.w.h\016xvmaddwod.w.hu\020xvmaddwod.w.hu.h\007xvmax.b\010xvmax.bu\007"
2217
    "xvmax.d\010xvmax.du\007xvmax.h\010xvmax.hu\007xvmax.w\010xvmax.wu\010xv"
2218
    "maxi.b\txvmaxi.bu\010xvmaxi.d\txvmaxi.du\010xvmaxi.h\txvmaxi.hu\010xvma"
2219
    "xi.w\txvmaxi.wu\007xvmin.b\010xvmin.bu\007xvmin.d\010xvmin.du\007xvmin."
2220
    "h\010xvmin.hu\007xvmin.w\010xvmin.wu\010xvmini.b\txvmini.bu\010xvmini.d"
2221
    "\txvmini.du\010xvmini.h\txvmini.hu\010xvmini.w\txvmini.wu\007xvmod.b\010"
2222
    "xvmod.bu\007xvmod.d\010xvmod.du\007xvmod.h\010xvmod.hu\007xvmod.w\010xv"
2223
    "mod.wu\nxvmskgez.b\nxvmskltz.b\nxvmskltz.d\nxvmskltz.h\nxvmskltz.w\txvm"
2224
    "sknz.b\010xvmsub.b\010xvmsub.d\010xvmsub.h\010xvmsub.w\007xvmuh.b\010xv"
2225
    "muh.bu\007xvmuh.d\010xvmuh.du\007xvmuh.h\010xvmuh.hu\007xvmuh.w\010xvmu"
2226
    "h.wu\007xvmul.b\007xvmul.d\007xvmul.h\007xvmul.w\014xvmulwev.d.w\015xvm"
2227
    "ulwev.d.wu\017xvmulwev.d.wu.w\014xvmulwev.h.b\015xvmulwev.h.bu\017xvmul"
2228
    "wev.h.bu.b\014xvmulwev.q.d\015xvmulwev.q.du\017xvmulwev.q.du.d\014xvmul"
2229
    "wev.w.h\015xvmulwev.w.hu\017xvmulwev.w.hu.h\014xvmulwod.d.w\015xvmulwod"
2230
    ".d.wu\017xvmulwod.d.wu.w\014xvmulwod.h.b\015xvmulwod.h.bu\017xvmulwod.h"
2231
    ".bu.b\014xvmulwod.q.d\015xvmulwod.q.du\017xvmulwod.q.du.d\014xvmulwod.w"
2232
    ".h\015xvmulwod.w.hu\017xvmulwod.w.hu.h\007xvneg.b\007xvneg.d\007xvneg.h"
2233
    "\007xvneg.w\007xvnor.v\010xvnori.b\006xvor.v\007xvori.b\007xvorn.v\nxvp"
2234
    "ackev.b\nxvpackev.d\nxvpackev.h\nxvpackev.w\nxvpackod.b\nxvpackod.d\nxv"
2235
    "packod.h\nxvpackod.w\010xvpcnt.b\010xvpcnt.d\010xvpcnt.h\010xvpcnt.w\010"
2236
    "xvperm.w\txvpermi.d\txvpermi.q\txvpermi.w\nxvpickev.b\nxvpickev.d\nxvpi"
2237
    "ckev.h\nxvpickev.w\nxvpickod.b\nxvpickod.d\nxvpickod.h\nxvpickod.w\nxvp"
2238
    "ickve.d\nxvpickve.w\015xvpickve2gr.d\016xvpickve2gr.du\015xvpickve2gr.w"
2239
    "\016xvpickve2gr.wu\016xvrepl128vei.b\016xvrepl128vei.d\016xvrepl128vei."
2240
    "h\016xvrepl128vei.w\015xvreplgr2vr.b\015xvreplgr2vr.d\015xvreplgr2vr.h\015"
2241
    "xvreplgr2vr.w\txvrepli.b\txvrepli.d\txvrepli.h\txvrepli.w\nxvreplve.b\n"
2242
    "xvreplve.d\nxvreplve.h\nxvreplve.w\013xvreplve0.b\013xvreplve0.d\013xvr"
2243
    "eplve0.h\013xvreplve0.q\013xvreplve0.w\010xvrotr.b\010xvrotr.d\010xvrot"
2244
    "r.h\010xvrotr.w\txvrotri.b\txvrotri.d\txvrotri.h\txvrotri.w\010xvsadd.b"
2245
    "\txvsadd.bu\010xvsadd.d\txvsadd.du\010xvsadd.h\txvsadd.hu\010xvsadd.w\t"
2246
    "xvsadd.wu\007xvsat.b\010xvsat.bu\007xvsat.d\010xvsat.du\007xvsat.h\010x"
2247
    "vsat.hu\007xvsat.w\010xvsat.wu\007xvseq.b\007xvseq.d\007xvseq.h\007xvse"
2248
    "q.w\010xvseqi.b\010xvseqi.d\010xvseqi.h\010xvseqi.w\015xvsetallnez.b\015"
2249
    "xvsetallnez.d\015xvsetallnez.h\015xvsetallnez.w\015xvsetanyeqz.b\015xvs"
2250
    "etanyeqz.d\015xvsetanyeqz.h\015xvsetanyeqz.w\nxvseteqz.v\nxvsetnez.v\010"
2251
    "xvshuf.b\010xvshuf.d\010xvshuf.h\010xvshuf.w\nxvshuf4i.b\nxvshuf4i.d\nx"
2252
    "vshuf4i.h\nxvshuf4i.w\013xvsigncov.b\013xvsigncov.d\013xvsigncov.h\013x"
2253
    "vsigncov.w\007xvsle.b\010xvsle.bu\007xvsle.d\010xvsle.du\007xvsle.h\010"
2254
    "xvsle.hu\007xvsle.w\010xvsle.wu\010xvslei.b\txvslei.bu\010xvslei.d\txvs"
2255
    "lei.du\010xvslei.h\txvslei.hu\010xvslei.w\txvslei.wu\007xvsll.b\007xvsl"
2256
    "l.d\007xvsll.h\007xvsll.w\010xvslli.b\010xvslli.d\010xvslli.h\010xvslli"
2257
    ".w\014xvsllwil.d.w\016xvsllwil.du.wu\014xvsllwil.h.b\016xvsllwil.hu.bu\014"
2258
    "xvsllwil.w.h\016xvsllwil.wu.hu\007xvslt.b\010xvslt.bu\007xvslt.d\010xvs"
2259
    "lt.du\007xvslt.h\010xvslt.hu\007xvslt.w\010xvslt.wu\010xvslti.b\txvslti"
2260
    ".bu\010xvslti.d\txvslti.du\010xvslti.h\txvslti.hu\010xvslti.w\txvslti.w"
2261
    "u\007xvsra.b\007xvsra.d\007xvsra.h\007xvsra.w\010xvsrai.b\010xvsrai.d\010"
2262
    "xvsrai.h\010xvsrai.w\nxvsran.b.h\nxvsran.h.w\nxvsran.w.d\013xvsrani.b.h"
2263
    "\013xvsrani.d.q\013xvsrani.h.w\013xvsrani.w.d\010xvsrar.b\010xvsrar.d\010"
2264
    "xvsrar.h\010xvsrar.w\txvsrari.b\txvsrari.d\txvsrari.h\txvsrari.w\013xvs"
2265
    "rarn.b.h\013xvsrarn.h.w\013xvsrarn.w.d\014xvsrarni.b.h\014xvsrarni.d.q\014"
2266
    "xvsrarni.h.w\014xvsrarni.w.d\007xvsrl.b\007xvsrl.d\007xvsrl.h\007xvsrl."
2267
    "w\010xvsrli.b\010xvsrli.d\010xvsrli.h\010xvsrli.w\nxvsrln.b.h\nxvsrln.h"
2268
    ".w\nxvsrln.w.d\013xvsrlni.b.h\013xvsrlni.d.q\013xvsrlni.h.w\013xvsrlni."
2269
    "w.d\010xvsrlr.b\010xvsrlr.d\010xvsrlr.h\010xvsrlr.w\txvsrlri.b\txvsrlri"
2270
    ".d\txvsrlri.h\txvsrlri.w\013xvsrlrn.b.h\013xvsrlrn.h.w\013xvsrlrn.w.d\014"
2271
    "xvsrlrni.b.h\014xvsrlrni.d.q\014xvsrlrni.h.w\014xvsrlrni.w.d\013xvssran"
2272
    ".b.h\014xvssran.bu.h\013xvssran.h.w\014xvssran.hu.w\013xvssran.w.d\014x"
2273
    "vssran.wu.d\014xvssrani.b.h\015xvssrani.bu.h\014xvssrani.d.q\015xvssran"
2274
    "i.du.q\014xvssrani.h.w\015xvssrani.hu.w\014xvssrani.w.d\015xvssrani.wu."
2275
    "d\014xvssrarn.b.h\015xvssrarn.bu.h\014xvssrarn.h.w\015xvssrarn.hu.w\014"
2276
    "xvssrarn.w.d\015xvssrarn.wu.d\015xvssrarni.b.h\016xvssrarni.bu.h\015xvs"
2277
    "srarni.d.q\016xvssrarni.du.q\015xvssrarni.h.w\016xvssrarni.hu.w\015xvss"
2278
    "rarni.w.d\016xvssrarni.wu.d\013xvssrln.b.h\014xvssrln.bu.h\013xvssrln.h"
2279
    ".w\014xvssrln.hu.w\013xvssrln.w.d\014xvssrln.wu.d\014xvssrlni.b.h\015xv"
2280
    "ssrlni.bu.h\014xvssrlni.d.q\015xvssrlni.du.q\014xvssrlni.h.w\015xvssrln"
2281
    "i.hu.w\014xvssrlni.w.d\015xvssrlni.wu.d\014xvssrlrn.b.h\015xvssrlrn.bu."
2282
    "h\014xvssrlrn.h.w\015xvssrlrn.hu.w\014xvssrlrn.w.d\015xvssrlrn.wu.d\015"
2283
    "xvssrlrni.b.h\016xvssrlrni.bu.h\015xvssrlrni.d.q\016xvssrlrni.du.q\015x"
2284
    "vssrlrni.h.w\016xvssrlrni.hu.w\015xvssrlrni.w.d\016xvssrlrni.wu.d\010xv"
2285
    "ssub.b\txvssub.bu\010xvssub.d\txvssub.du\010xvssub.h\txvssub.hu\010xvss"
2286
    "ub.w\txvssub.wu\004xvst\txvstelm.b\txvstelm.d\txvstelm.h\txvstelm.w\005"
2287
    "xvstx\007xvsub.b\007xvsub.d\007xvsub.h\007xvsub.q\007xvsub.w\txvsubi.bu"
2288
    "\txvsubi.du\txvsubi.hu\txvsubi.wu\014xvsubwev.d.w\015xvsubwev.d.wu\014x"
2289
    "vsubwev.h.b\015xvsubwev.h.bu\014xvsubwev.q.d\015xvsubwev.q.du\014xvsubw"
2290
    "ev.w.h\015xvsubwev.w.hu\014xvsubwod.d.w\015xvsubwod.d.wu\014xvsubwod.h."
2291
    "b\015xvsubwod.h.bu\014xvsubwod.q.d\015xvsubwod.q.du\014xvsubwod.w.h\015"
2292
    "xvsubwod.w.hu\007xvxor.v\010xvxori.b";
2293
2294
// Feature bitsets.
2295
enum : uint8_t {
2296
  AMFBS_None,
2297
  AMFBS_HasLaGlobalWithAbs,
2298
  AMFBS_HasLaGlobalWithPcrel,
2299
  AMFBS_HasLaLocalWithAbs,
2300
  AMFBS_IsLA64,
2301
};
2302
2303
static constexpr FeatureBitset FeatureBitsets[] = {
2304
  {}, // AMFBS_None
2305
  {Feature_HasLaGlobalWithAbsBit, },
2306
  {Feature_HasLaGlobalWithPcrelBit, },
2307
  {Feature_HasLaLocalWithAbsBit, },
2308
  {Feature_IsLA64Bit, },
2309
};
2310
2311
namespace {
2312
  struct MatchEntry {
2313
    uint16_t Mnemonic;
2314
    uint16_t Opcode;
2315
    uint8_t ConvertFn;
2316
    uint8_t RequiredFeaturesIdx;
2317
    uint8_t Classes[4];
2318
0
    StringRef getMnemonic() const {
2319
0
      return StringRef(MnemonicTable + Mnemonic + 1,
2320
0
                       MnemonicTable[Mnemonic]);
2321
0
    }
2322
  };
2323
2324
  // Predicate for searching for an opcode.
2325
  struct LessOpcode {
2326
0
    bool operator()(const MatchEntry &LHS, StringRef RHS) {
2327
0
      return LHS.getMnemonic() < RHS;
2328
0
    }
2329
0
    bool operator()(StringRef LHS, const MatchEntry &RHS) {
2330
0
      return LHS < RHS.getMnemonic();
2331
0
    }
2332
0
    bool operator()(const MatchEntry &LHS, const MatchEntry &RHS) {
2333
0
      return LHS.getMnemonic() < RHS.getMnemonic();
2334
0
    }
2335
  };
2336
} // end anonymous namespace
2337
2338
static const MatchEntry MatchTable0[] = {
2339
  { 0 /* adc.b */, LoongArch::ADC_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2340
  { 6 /* adc.d */, LoongArch::ADC_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2341
  { 12 /* adc.h */, LoongArch::ADC_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2342
  { 18 /* adc.w */, LoongArch::ADC_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2343
  { 24 /* add.d */, LoongArch::ADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2344
  { 30 /* add.w */, LoongArch::ADD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2345
  { 36 /* addi.d */, LoongArch::ADDI_D, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2346
  { 43 /* addi.w */, LoongArch::ADDI_W, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2347
  { 50 /* addu12i.d */, LoongArch::ADDU12I_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm5 }, },
2348
  { 60 /* addu12i.w */, LoongArch::ADDU12I_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm5 }, },
2349
  { 70 /* addu16i.d */, LoongArch::ADDU16I_D, Convert__Reg1_0__Reg1_1__SImm161_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm16 }, },
2350
  { 80 /* alsl.d */, LoongArch::ALSL_D, Convert__Reg1_0__Reg1_1__Reg1_2__UImm2plus11_3, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR, MCK_UImm2plus1 }, },
2351
  { 87 /* alsl.w */, LoongArch::ALSL_W, Convert__Reg1_0__Reg1_1__Reg1_2__UImm2plus11_3, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR, MCK_UImm2plus1 }, },
2352
  { 94 /* alsl.wu */, LoongArch::ALSL_WU, Convert__Reg1_0__Reg1_1__Reg1_2__UImm2plus11_3, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR, MCK_UImm2plus1 }, },
2353
  { 102 /* amadd.b */, LoongArch::AMADD_B, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2354
  { 110 /* amadd.d */, LoongArch::AMADD_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2355
  { 118 /* amadd.h */, LoongArch::AMADD_H, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2356
  { 126 /* amadd.w */, LoongArch::AMADD_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2357
  { 134 /* amadd_db.b */, LoongArch::AMADD__DB_B, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2358
  { 145 /* amadd_db.d */, LoongArch::AMADD__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2359
  { 156 /* amadd_db.h */, LoongArch::AMADD__DB_H, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2360
  { 167 /* amadd_db.w */, LoongArch::AMADD__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2361
  { 178 /* amand.d */, LoongArch::AMAND_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2362
  { 186 /* amand.w */, LoongArch::AMAND_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2363
  { 194 /* amand_db.d */, LoongArch::AMAND__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2364
  { 205 /* amand_db.w */, LoongArch::AMAND__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2365
  { 216 /* amcas.b */, LoongArch::AMCAS_B, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2366
  { 224 /* amcas.d */, LoongArch::AMCAS_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2367
  { 232 /* amcas.h */, LoongArch::AMCAS_H, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2368
  { 240 /* amcas.w */, LoongArch::AMCAS_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2369
  { 248 /* amcas_db.b */, LoongArch::AMCAS__DB_B, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2370
  { 259 /* amcas_db.d */, LoongArch::AMCAS__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2371
  { 270 /* amcas_db.h */, LoongArch::AMCAS__DB_H, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2372
  { 281 /* amcas_db.w */, LoongArch::AMCAS__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2373
  { 292 /* ammax.d */, LoongArch::AMMAX_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2374
  { 300 /* ammax.du */, LoongArch::AMMAX_DU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2375
  { 309 /* ammax.w */, LoongArch::AMMAX_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2376
  { 317 /* ammax.wu */, LoongArch::AMMAX_WU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2377
  { 326 /* ammax_db.d */, LoongArch::AMMAX__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2378
  { 337 /* ammax_db.du */, LoongArch::AMMAX__DB_DU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2379
  { 349 /* ammax_db.w */, LoongArch::AMMAX__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2380
  { 360 /* ammax_db.wu */, LoongArch::AMMAX__DB_WU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2381
  { 372 /* ammin.d */, LoongArch::AMMIN_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2382
  { 380 /* ammin.du */, LoongArch::AMMIN_DU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2383
  { 389 /* ammin.w */, LoongArch::AMMIN_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2384
  { 397 /* ammin.wu */, LoongArch::AMMIN_WU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2385
  { 406 /* ammin_db.d */, LoongArch::AMMIN__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2386
  { 417 /* ammin_db.du */, LoongArch::AMMIN__DB_DU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2387
  { 429 /* ammin_db.w */, LoongArch::AMMIN__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2388
  { 440 /* ammin_db.wu */, LoongArch::AMMIN__DB_WU, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2389
  { 452 /* amor.d */, LoongArch::AMOR_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2390
  { 459 /* amor.w */, LoongArch::AMOR_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2391
  { 466 /* amor_db.d */, LoongArch::AMOR__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2392
  { 476 /* amor_db.w */, LoongArch::AMOR__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2393
  { 486 /* amswap.b */, LoongArch::AMSWAP_B, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2394
  { 495 /* amswap.d */, LoongArch::AMSWAP_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2395
  { 504 /* amswap.h */, LoongArch::AMSWAP_H, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2396
  { 513 /* amswap.w */, LoongArch::AMSWAP_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2397
  { 522 /* amswap_db.b */, LoongArch::AMSWAP__DB_B, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2398
  { 534 /* amswap_db.d */, LoongArch::AMSWAP__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2399
  { 546 /* amswap_db.h */, LoongArch::AMSWAP__DB_H, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2400
  { 558 /* amswap_db.w */, LoongArch::AMSWAP__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2401
  { 570 /* amxor.d */, LoongArch::AMXOR_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2402
  { 578 /* amxor.w */, LoongArch::AMXOR_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2403
  { 586 /* amxor_db.d */, LoongArch::AMXOR__DB_D, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2404
  { 597 /* amxor_db.w */, LoongArch::AMXOR__DB_W, Convert__Reg1_0__Reg1_1__AtomicMemAsmOperand1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_AtomicMemAsmOperand }, },
2405
  { 608 /* and */, LoongArch::AND, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2406
  { 612 /* andi */, LoongArch::ANDI, Convert__Reg1_0__Reg1_1__UImm121_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm12 }, },
2407
  { 617 /* andn */, LoongArch::ANDN, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2408
  { 622 /* armadc.w */, LoongArch::ARMADC_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2409
  { 631 /* armadd.w */, LoongArch::ARMADD_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2410
  { 640 /* armand.w */, LoongArch::ARMAND_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2411
  { 649 /* armmfflag */, LoongArch::ARMMFFLAG, Convert__Reg1_0__UImm81_1, AMFBS_None, { MCK_GPR, MCK_UImm8 }, },
2412
  { 659 /* armmov.d */, LoongArch::ARMMOV_D, Convert__Reg1_0__UImm41_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm4 }, },
2413
  { 668 /* armmov.w */, LoongArch::ARMMOV_W, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
2414
  { 677 /* armmove */, LoongArch::ARMMOVE, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2415
  { 685 /* armmtflag */, LoongArch::ARMMTFLAG, Convert__Reg1_0__UImm81_1, AMFBS_None, { MCK_GPR, MCK_UImm8 }, },
2416
  { 695 /* armnot.w */, LoongArch::ARMNOT_W, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
2417
  { 704 /* armor.w */, LoongArch::ARMOR_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2418
  { 712 /* armrotr.w */, LoongArch::ARMROTR_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2419
  { 722 /* armrotri.w */, LoongArch::ARMROTRI_W, Convert__Reg1_0__UImm51_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_UImm5, MCK_UImm4 }, },
2420
  { 733 /* armrrx.w */, LoongArch::ARMRRX_W, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
2421
  { 742 /* armsbc.w */, LoongArch::ARMSBC_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2422
  { 751 /* armsll.w */, LoongArch::ARMSLL_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2423
  { 760 /* armslli.w */, LoongArch::ARMSLLI_W, Convert__Reg1_0__UImm51_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_UImm5, MCK_UImm4 }, },
2424
  { 770 /* armsra.w */, LoongArch::ARMSRA_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2425
  { 779 /* armsrai.w */, LoongArch::ARMSRAI_W, Convert__Reg1_0__UImm51_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_UImm5, MCK_UImm4 }, },
2426
  { 789 /* armsrl.w */, LoongArch::ARMSRL_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2427
  { 798 /* armsrli.w */, LoongArch::ARMSRLI_W, Convert__Reg1_0__UImm51_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_UImm5, MCK_UImm4 }, },
2428
  { 808 /* armsub.w */, LoongArch::ARMSUB_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2429
  { 817 /* armxor.w */, LoongArch::ARMXOR_W, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2430
  { 826 /* asrtgt.d */, LoongArch::ASRTGT_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2431
  { 835 /* asrtle.d */, LoongArch::ASRTLE_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2432
  { 844 /* b */, LoongArch::B, Convert__SImm26OperandB1_0, AMFBS_None, { MCK_SImm26OperandB }, },
2433
  { 846 /* bceqz */, LoongArch::BCEQZ, Convert__Reg1_0__SImm21lsl21_1, AMFBS_None, { MCK_CFR, MCK_SImm21lsl2 }, },
2434
  { 852 /* bcnez */, LoongArch::BCNEZ, Convert__Reg1_0__SImm21lsl21_1, AMFBS_None, { MCK_CFR, MCK_SImm21lsl2 }, },
2435
  { 858 /* beq */, LoongArch::BEQ, Convert__Reg1_0__Reg1_1__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2436
  { 862 /* beqz */, LoongArch::BEQZ, Convert__Reg1_0__SImm21lsl21_1, AMFBS_None, { MCK_GPR, MCK_SImm21lsl2 }, },
2437
  { 867 /* bge */, LoongArch::BGE, Convert__Reg1_0__Reg1_1__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2438
  { 871 /* bgeu */, LoongArch::BGEU, Convert__Reg1_0__Reg1_1__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2439
  { 876 /* bgez */, LoongArch::BGE, Convert__Reg1_0__regR0__SImm16lsl21_1, AMFBS_None, { MCK_GPR, MCK_SImm16lsl2 }, },
2440
  { 881 /* bgt */, LoongArch::BLT, Convert__Reg1_1__Reg1_0__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2441
  { 885 /* bgtu */, LoongArch::BLTU, Convert__Reg1_1__Reg1_0__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2442
  { 890 /* bgtz */, LoongArch::BLT, Convert__regR0__Reg1_0__SImm16lsl21_1, AMFBS_None, { MCK_GPR, MCK_SImm16lsl2 }, },
2443
  { 895 /* bitrev.4b */, LoongArch::BITREV_4B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2444
  { 905 /* bitrev.8b */, LoongArch::BITREV_8B, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2445
  { 915 /* bitrev.d */, LoongArch::BITREV_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2446
  { 924 /* bitrev.w */, LoongArch::BITREV_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2447
  { 933 /* bl */, LoongArch::BL, Convert__SImm26OperandBL1_0, AMFBS_None, { MCK_SImm26OperandBL }, },
2448
  { 936 /* ble */, LoongArch::BGE, Convert__Reg1_1__Reg1_0__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2449
  { 940 /* bleu */, LoongArch::BGEU, Convert__Reg1_1__Reg1_0__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2450
  { 945 /* blez */, LoongArch::BGE, Convert__regR0__Reg1_0__SImm16lsl21_1, AMFBS_None, { MCK_GPR, MCK_SImm16lsl2 }, },
2451
  { 950 /* blt */, LoongArch::BLT, Convert__Reg1_0__Reg1_1__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2452
  { 954 /* bltu */, LoongArch::BLTU, Convert__Reg1_0__Reg1_1__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2453
  { 959 /* bltz */, LoongArch::BLT, Convert__Reg1_0__regR0__SImm16lsl21_1, AMFBS_None, { MCK_GPR, MCK_SImm16lsl2 }, },
2454
  { 964 /* bne */, LoongArch::BNE, Convert__Reg1_0__Reg1_1__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2455
  { 968 /* bnez */, LoongArch::BNEZ, Convert__Reg1_0__SImm21lsl21_1, AMFBS_None, { MCK_GPR, MCK_SImm21lsl2 }, },
2456
  { 973 /* break */, LoongArch::BREAK, Convert__UImm151_0, AMFBS_None, { MCK_UImm15 }, },
2457
  { 979 /* bstrins.d */, LoongArch::BSTRINS_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2__UImm61_3, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_UImm6, MCK_UImm6 }, },
2458
  { 989 /* bstrins.w */, LoongArch::BSTRINS_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2__UImm51_3, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm5, MCK_UImm5 }, },
2459
  { 999 /* bstrpick.d */, LoongArch::BSTRPICK_D, Convert__Reg1_0__Reg1_1__UImm61_2__UImm61_3, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_UImm6, MCK_UImm6 }, },
2460
  { 1010 /* bstrpick.w */, LoongArch::BSTRPICK_W, Convert__Reg1_0__Reg1_1__UImm51_2__UImm51_3, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm5, MCK_UImm5 }, },
2461
  { 1021 /* bytepick.d */, LoongArch::BYTEPICK_D, Convert__Reg1_0__Reg1_1__Reg1_2__UImm31_3, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR, MCK_UImm3 }, },
2462
  { 1032 /* bytepick.w */, LoongArch::BYTEPICK_W, Convert__Reg1_0__Reg1_1__Reg1_2__UImm21_3, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR, MCK_UImm2 }, },
2463
  { 1043 /* cacop */, LoongArch::CACOP, Convert__UImm51_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_UImm5, MCK_GPR, MCK_SImm12 }, },
2464
  { 1049 /* call36 */, LoongArch::PseudoCALL36, Convert__BareSymbol1_0, AMFBS_IsLA64, { MCK_BareSymbol }, },
2465
  { 1056 /* clo.d */, LoongArch::CLO_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2466
  { 1062 /* clo.w */, LoongArch::CLO_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2467
  { 1068 /* clz.d */, LoongArch::CLZ_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2468
  { 1074 /* clz.w */, LoongArch::CLZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2469
  { 1080 /* cpucfg */, LoongArch::CPUCFG, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2470
  { 1087 /* crc.w.b.w */, LoongArch::CRC_W_B_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2471
  { 1097 /* crc.w.d.w */, LoongArch::CRC_W_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2472
  { 1107 /* crc.w.h.w */, LoongArch::CRC_W_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2473
  { 1117 /* crc.w.w.w */, LoongArch::CRC_W_W_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2474
  { 1127 /* crcc.w.b.w */, LoongArch::CRCC_W_B_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2475
  { 1138 /* crcc.w.d.w */, LoongArch::CRCC_W_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2476
  { 1149 /* crcc.w.h.w */, LoongArch::CRCC_W_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2477
  { 1160 /* crcc.w.w.w */, LoongArch::CRCC_W_W_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2478
  { 1171 /* csrrd */, LoongArch::CSRRD, Convert__Reg1_0__UImm141_1, AMFBS_None, { MCK_GPR, MCK_UImm14 }, },
2479
  { 1177 /* csrwr */, LoongArch::CSRWR, Convert__Reg1_0__Tie0_1_1__UImm141_1, AMFBS_None, { MCK_GPR, MCK_UImm14 }, },
2480
  { 1183 /* csrxchg */, LoongArch::CSRXCHG, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm141_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm14 }, },
2481
  { 1191 /* cto.d */, LoongArch::CTO_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2482
  { 1197 /* cto.w */, LoongArch::CTO_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2483
  { 1203 /* ctz.d */, LoongArch::CTZ_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2484
  { 1209 /* ctz.w */, LoongArch::CTZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2485
  { 1215 /* dbar */, LoongArch::DBAR, Convert__UImm151_0, AMFBS_None, { MCK_UImm15 }, },
2486
  { 1220 /* dbcl */, LoongArch::DBCL, Convert__UImm151_0, AMFBS_None, { MCK_UImm15 }, },
2487
  { 1225 /* div.d */, LoongArch::DIV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2488
  { 1231 /* div.du */, LoongArch::DIV_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2489
  { 1238 /* div.w */, LoongArch::DIV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2490
  { 1244 /* div.wu */, LoongArch::DIV_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2491
  { 1251 /* ertn */, LoongArch::ERTN, Convert_NoOperands, AMFBS_None, {  }, },
2492
  { 1256 /* ext.w.b */, LoongArch::EXT_W_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2493
  { 1264 /* ext.w.h */, LoongArch::EXT_W_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2494
  { 1272 /* fabs.d */, LoongArch::FABS_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2495
  { 1279 /* fabs.s */, LoongArch::FABS_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2496
  { 1286 /* fadd.d */, LoongArch::FADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2497
  { 1293 /* fadd.s */, LoongArch::FADD_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2498
  { 1300 /* fclass.d */, LoongArch::FCLASS_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2499
  { 1309 /* fclass.s */, LoongArch::FCLASS_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2500
  { 1318 /* fcmp.caf.d */, LoongArch::FCMP_CAF_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2501
  { 1329 /* fcmp.caf.s */, LoongArch::FCMP_CAF_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2502
  { 1340 /* fcmp.ceq.d */, LoongArch::FCMP_CEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2503
  { 1351 /* fcmp.ceq.s */, LoongArch::FCMP_CEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2504
  { 1362 /* fcmp.cle.d */, LoongArch::FCMP_CLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2505
  { 1373 /* fcmp.cle.s */, LoongArch::FCMP_CLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2506
  { 1384 /* fcmp.clt.d */, LoongArch::FCMP_CLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2507
  { 1395 /* fcmp.clt.s */, LoongArch::FCMP_CLT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2508
  { 1406 /* fcmp.cne.d */, LoongArch::FCMP_CNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2509
  { 1417 /* fcmp.cne.s */, LoongArch::FCMP_CNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2510
  { 1428 /* fcmp.cor.d */, LoongArch::FCMP_COR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2511
  { 1439 /* fcmp.cor.s */, LoongArch::FCMP_COR_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2512
  { 1450 /* fcmp.cueq.d */, LoongArch::FCMP_CUEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2513
  { 1462 /* fcmp.cueq.s */, LoongArch::FCMP_CUEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2514
  { 1474 /* fcmp.cule.d */, LoongArch::FCMP_CULE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2515
  { 1486 /* fcmp.cule.s */, LoongArch::FCMP_CULE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2516
  { 1498 /* fcmp.cult.d */, LoongArch::FCMP_CULT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2517
  { 1510 /* fcmp.cult.s */, LoongArch::FCMP_CULT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2518
  { 1522 /* fcmp.cun.d */, LoongArch::FCMP_CUN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2519
  { 1533 /* fcmp.cun.s */, LoongArch::FCMP_CUN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2520
  { 1544 /* fcmp.cune.d */, LoongArch::FCMP_CUNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2521
  { 1556 /* fcmp.cune.s */, LoongArch::FCMP_CUNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2522
  { 1568 /* fcmp.saf.d */, LoongArch::FCMP_SAF_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2523
  { 1579 /* fcmp.saf.s */, LoongArch::FCMP_SAF_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2524
  { 1590 /* fcmp.seq.d */, LoongArch::FCMP_SEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2525
  { 1601 /* fcmp.seq.s */, LoongArch::FCMP_SEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2526
  { 1612 /* fcmp.sle.d */, LoongArch::FCMP_SLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2527
  { 1623 /* fcmp.sle.s */, LoongArch::FCMP_SLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2528
  { 1634 /* fcmp.slt.d */, LoongArch::FCMP_SLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2529
  { 1645 /* fcmp.slt.s */, LoongArch::FCMP_SLT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2530
  { 1656 /* fcmp.sne.d */, LoongArch::FCMP_SNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2531
  { 1667 /* fcmp.sne.s */, LoongArch::FCMP_SNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2532
  { 1678 /* fcmp.sor.d */, LoongArch::FCMP_SOR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2533
  { 1689 /* fcmp.sor.s */, LoongArch::FCMP_SOR_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2534
  { 1700 /* fcmp.sueq.d */, LoongArch::FCMP_SUEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2535
  { 1712 /* fcmp.sueq.s */, LoongArch::FCMP_SUEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2536
  { 1724 /* fcmp.sule.d */, LoongArch::FCMP_SULE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2537
  { 1736 /* fcmp.sule.s */, LoongArch::FCMP_SULE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2538
  { 1748 /* fcmp.sult.d */, LoongArch::FCMP_SULT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2539
  { 1760 /* fcmp.sult.s */, LoongArch::FCMP_SULT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2540
  { 1772 /* fcmp.sun.d */, LoongArch::FCMP_SUN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2541
  { 1783 /* fcmp.sun.s */, LoongArch::FCMP_SUN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2542
  { 1794 /* fcmp.sune.d */, LoongArch::FCMP_SUNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR64, MCK_FPR64 }, },
2543
  { 1806 /* fcmp.sune.s */, LoongArch::FCMP_SUNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_CFR, MCK_FPR32, MCK_FPR32 }, },
2544
  { 1818 /* fcopysign.d */, LoongArch::FCOPYSIGN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2545
  { 1830 /* fcopysign.s */, LoongArch::FCOPYSIGN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2546
  { 1842 /* fcvt.d.ld */, LoongArch::FCVT_D_LD, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2547
  { 1852 /* fcvt.d.s */, LoongArch::FCVT_D_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR32 }, },
2548
  { 1861 /* fcvt.ld.d */, LoongArch::FCVT_LD_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2549
  { 1871 /* fcvt.s.d */, LoongArch::FCVT_S_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR64 }, },
2550
  { 1880 /* fcvt.ud.d */, LoongArch::FCVT_UD_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2551
  { 1890 /* fdiv.d */, LoongArch::FDIV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2552
  { 1897 /* fdiv.s */, LoongArch::FDIV_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2553
  { 1904 /* ffint.d.l */, LoongArch::FFINT_D_L, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2554
  { 1914 /* ffint.d.w */, LoongArch::FFINT_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR32 }, },
2555
  { 1924 /* ffint.s.l */, LoongArch::FFINT_S_L, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR64 }, },
2556
  { 1934 /* ffint.s.w */, LoongArch::FFINT_S_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2557
  { 1944 /* fld.d */, LoongArch::FLD_D, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_SImm12 }, },
2558
  { 1950 /* fld.s */, LoongArch::FLD_S, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_SImm12 }, },
2559
  { 1956 /* fldgt.d */, LoongArch::FLDGT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_GPR }, },
2560
  { 1964 /* fldgt.s */, LoongArch::FLDGT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_GPR }, },
2561
  { 1972 /* fldle.d */, LoongArch::FLDLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_GPR }, },
2562
  { 1980 /* fldle.s */, LoongArch::FLDLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_GPR }, },
2563
  { 1988 /* fldx.d */, LoongArch::FLDX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_GPR }, },
2564
  { 1995 /* fldx.s */, LoongArch::FLDX_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_GPR }, },
2565
  { 2002 /* flogb.d */, LoongArch::FLOGB_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2566
  { 2010 /* flogb.s */, LoongArch::FLOGB_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2567
  { 2018 /* fmadd.d */, LoongArch::FMADD_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2568
  { 2026 /* fmadd.s */, LoongArch::FMADD_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2569
  { 2034 /* fmax.d */, LoongArch::FMAX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2570
  { 2041 /* fmax.s */, LoongArch::FMAX_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2571
  { 2048 /* fmaxa.d */, LoongArch::FMAXA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2572
  { 2056 /* fmaxa.s */, LoongArch::FMAXA_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2573
  { 2064 /* fmin.d */, LoongArch::FMIN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2574
  { 2071 /* fmin.s */, LoongArch::FMIN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2575
  { 2078 /* fmina.d */, LoongArch::FMINA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2576
  { 2086 /* fmina.s */, LoongArch::FMINA_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2577
  { 2094 /* fmov.d */, LoongArch::FMOV_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2578
  { 2101 /* fmov.s */, LoongArch::FMOV_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2579
  { 2108 /* fmsub.d */, LoongArch::FMSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2580
  { 2116 /* fmsub.s */, LoongArch::FMSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2581
  { 2124 /* fmul.d */, LoongArch::FMUL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2582
  { 2131 /* fmul.s */, LoongArch::FMUL_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2583
  { 2138 /* fneg.d */, LoongArch::FNEG_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2584
  { 2145 /* fneg.s */, LoongArch::FNEG_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2585
  { 2152 /* fnmadd.d */, LoongArch::FNMADD_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2586
  { 2161 /* fnmadd.s */, LoongArch::FNMADD_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2587
  { 2170 /* fnmsub.d */, LoongArch::FNMSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2588
  { 2179 /* fnmsub.s */, LoongArch::FNMSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2589
  { 2188 /* frecip.d */, LoongArch::FRECIP_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2590
  { 2197 /* frecip.s */, LoongArch::FRECIP_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2591
  { 2206 /* frecipe.d */, LoongArch::FRECIPE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2592
  { 2216 /* frecipe.s */, LoongArch::FRECIPE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2593
  { 2226 /* frint.d */, LoongArch::FRINT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2594
  { 2234 /* frint.s */, LoongArch::FRINT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2595
  { 2242 /* frsqrt.d */, LoongArch::FRSQRT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2596
  { 2251 /* frsqrt.s */, LoongArch::FRSQRT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2597
  { 2260 /* frsqrte.d */, LoongArch::FRSQRTE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2598
  { 2270 /* frsqrte.s */, LoongArch::FRSQRTE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2599
  { 2280 /* fscaleb.d */, LoongArch::FSCALEB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2600
  { 2290 /* fscaleb.s */, LoongArch::FSCALEB_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2601
  { 2300 /* fsel */, LoongArch::FSEL_xS, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32, MCK_CFR }, },
2602
  { 2305 /* fsqrt.d */, LoongArch::FSQRT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2603
  { 2313 /* fsqrt.s */, LoongArch::FSQRT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2604
  { 2321 /* fst.d */, LoongArch::FST_D, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_SImm12 }, },
2605
  { 2327 /* fst.s */, LoongArch::FST_S, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_SImm12 }, },
2606
  { 2333 /* fstgt.d */, LoongArch::FSTGT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_GPR }, },
2607
  { 2341 /* fstgt.s */, LoongArch::FSTGT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_GPR }, },
2608
  { 2349 /* fstle.d */, LoongArch::FSTLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_GPR }, },
2609
  { 2357 /* fstle.s */, LoongArch::FSTLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_GPR }, },
2610
  { 2365 /* fstx.d */, LoongArch::FSTX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_GPR, MCK_GPR }, },
2611
  { 2372 /* fstx.s */, LoongArch::FSTX_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_GPR, MCK_GPR }, },
2612
  { 2379 /* fsub.d */, LoongArch::FSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR64, MCK_FPR64, MCK_FPR64 }, },
2613
  { 2386 /* fsub.s */, LoongArch::FSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_FPR32, MCK_FPR32, MCK_FPR32 }, },
2614
  { 2393 /* ftint.l.d */, LoongArch::FTINT_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2615
  { 2403 /* ftint.l.s */, LoongArch::FTINT_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR32 }, },
2616
  { 2413 /* ftint.w.d */, LoongArch::FTINT_W_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR64 }, },
2617
  { 2423 /* ftint.w.s */, LoongArch::FTINT_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2618
  { 2433 /* ftintrm.l.d */, LoongArch::FTINTRM_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2619
  { 2445 /* ftintrm.l.s */, LoongArch::FTINTRM_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR32 }, },
2620
  { 2457 /* ftintrm.w.d */, LoongArch::FTINTRM_W_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR64 }, },
2621
  { 2469 /* ftintrm.w.s */, LoongArch::FTINTRM_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2622
  { 2481 /* ftintrne.l.d */, LoongArch::FTINTRNE_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2623
  { 2494 /* ftintrne.l.s */, LoongArch::FTINTRNE_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR32 }, },
2624
  { 2507 /* ftintrne.w.d */, LoongArch::FTINTRNE_W_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR64 }, },
2625
  { 2520 /* ftintrne.w.s */, LoongArch::FTINTRNE_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2626
  { 2533 /* ftintrp.l.d */, LoongArch::FTINTRP_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2627
  { 2545 /* ftintrp.l.s */, LoongArch::FTINTRP_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR32 }, },
2628
  { 2557 /* ftintrp.w.d */, LoongArch::FTINTRP_W_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR64 }, },
2629
  { 2569 /* ftintrp.w.s */, LoongArch::FTINTRP_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2630
  { 2581 /* ftintrz.l.d */, LoongArch::FTINTRZ_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR64 }, },
2631
  { 2593 /* ftintrz.l.s */, LoongArch::FTINTRZ_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_FPR32 }, },
2632
  { 2605 /* ftintrz.w.d */, LoongArch::FTINTRZ_W_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR64 }, },
2633
  { 2617 /* ftintrz.w.s */, LoongArch::FTINTRZ_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_FPR32 }, },
2634
  { 2629 /* gcsrrd */, LoongArch::GCSRRD, Convert__Reg1_0__UImm141_1, AMFBS_None, { MCK_GPR, MCK_UImm14 }, },
2635
  { 2636 /* gcsrwr */, LoongArch::GCSRWR, Convert__Reg1_0__Tie0_1_1__UImm141_1, AMFBS_None, { MCK_GPR, MCK_UImm14 }, },
2636
  { 2643 /* gcsrxchg */, LoongArch::GCSRXCHG, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm141_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm14 }, },
2637
  { 2652 /* gtlbflush */, LoongArch::GTLBFLUSH, Convert_NoOperands, AMFBS_None, {  }, },
2638
  { 2662 /* hvcl */, LoongArch::HVCL, Convert__UImm151_0, AMFBS_None, { MCK_UImm15 }, },
2639
  { 2667 /* ibar */, LoongArch::IBAR, Convert__UImm151_0, AMFBS_None, { MCK_UImm15 }, },
2640
  { 2672 /* idle */, LoongArch::IDLE, Convert__UImm151_0, AMFBS_None, { MCK_UImm15 }, },
2641
  { 2677 /* invtlb */, LoongArch::INVTLB, Convert__Reg1_2__Reg1_1__UImm51_0, AMFBS_None, { MCK_UImm5, MCK_GPR, MCK_GPR }, },
2642
  { 2684 /* iocsrrd.b */, LoongArch::IOCSRRD_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2643
  { 2694 /* iocsrrd.d */, LoongArch::IOCSRRD_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2644
  { 2704 /* iocsrrd.h */, LoongArch::IOCSRRD_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2645
  { 2714 /* iocsrrd.w */, LoongArch::IOCSRRD_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2646
  { 2724 /* iocsrwr.b */, LoongArch::IOCSRWR_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2647
  { 2734 /* iocsrwr.d */, LoongArch::IOCSRWR_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2648
  { 2744 /* iocsrwr.h */, LoongArch::IOCSRWR_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2649
  { 2754 /* iocsrwr.w */, LoongArch::IOCSRWR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2650
  { 2764 /* jirl */, LoongArch::JIRL, Convert__Reg1_0__Reg1_1__SImm16lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm16lsl2 }, },
2651
  { 2769 /* jiscr0 */, LoongArch::JISCR0, Convert__SImm21lsl21_0, AMFBS_None, { MCK_SImm21lsl2 }, },
2652
  { 2776 /* jiscr1 */, LoongArch::JISCR1, Convert__SImm21lsl21_0, AMFBS_None, { MCK_SImm21lsl2 }, },
2653
  { 2783 /* jr */, LoongArch::JIRL, Convert__regR0__Reg1_0__imm_95_0, AMFBS_None, { MCK_GPR }, },
2654
  { 2786 /* la */, LoongArch::PseudoLA_PCREL, Convert__Reg1_0__BareSymbol1_1, AMFBS_HasLaGlobalWithPcrel, { MCK_GPR, MCK_BareSymbol }, },
2655
  { 2786 /* la */, LoongArch::PseudoLA_ABS, Convert__Reg1_0__BareSymbol1_1, AMFBS_HasLaGlobalWithAbs, { MCK_GPR, MCK_BareSymbol }, },
2656
  { 2786 /* la */, LoongArch::PseudoLA_GOT, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2657
  { 2789 /* la.abs */, LoongArch::PseudoLA_ABS, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2658
  { 2789 /* la.abs */, LoongArch::PseudoLA_ABS_LARGE, Convert__Reg1_0__imm_95_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2659
  { 2796 /* la.global */, LoongArch::PseudoLA_PCREL, Convert__Reg1_0__BareSymbol1_1, AMFBS_HasLaGlobalWithPcrel, { MCK_GPR, MCK_BareSymbol }, },
2660
  { 2796 /* la.global */, LoongArch::PseudoLA_ABS, Convert__Reg1_0__BareSymbol1_1, AMFBS_HasLaGlobalWithAbs, { MCK_GPR, MCK_BareSymbol }, },
2661
  { 2796 /* la.global */, LoongArch::PseudoLA_GOT, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2662
  { 2796 /* la.global */, LoongArch::PseudoLA_PCREL_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_HasLaGlobalWithPcrel, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2663
  { 2796 /* la.global */, LoongArch::PseudoLA_ABS_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_HasLaGlobalWithAbs, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2664
  { 2796 /* la.global */, LoongArch::PseudoLA_GOT_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2665
  { 2806 /* la.got */, LoongArch::PseudoLA_GOT, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2666
  { 2806 /* la.got */, LoongArch::PseudoLA_GOT_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2667
  { 2813 /* la.local */, LoongArch::PseudoLA_ABS, Convert__Reg1_0__BareSymbol1_1, AMFBS_HasLaLocalWithAbs, { MCK_GPR, MCK_BareSymbol }, },
2668
  { 2813 /* la.local */, LoongArch::PseudoLA_PCREL, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2669
  { 2813 /* la.local */, LoongArch::PseudoLA_ABS_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_HasLaLocalWithAbs, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2670
  { 2813 /* la.local */, LoongArch::PseudoLA_PCREL_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2671
  { 2822 /* la.pcrel */, LoongArch::PseudoLA_PCREL, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2672
  { 2822 /* la.pcrel */, LoongArch::PseudoLA_PCREL_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2673
  { 2831 /* la.tls.gd */, LoongArch::PseudoLA_TLS_GD, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2674
  { 2831 /* la.tls.gd */, LoongArch::PseudoLA_TLS_GD_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2675
  { 2841 /* la.tls.ie */, LoongArch::PseudoLA_TLS_IE, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2676
  { 2841 /* la.tls.ie */, LoongArch::PseudoLA_TLS_IE_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2677
  { 2851 /* la.tls.ld */, LoongArch::PseudoLA_TLS_LD, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2678
  { 2851 /* la.tls.ld */, LoongArch::PseudoLA_TLS_LD_LARGE, Convert__Reg1_0__Reg1_1__BareSymbol1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_BareSymbol }, },
2679
  { 2861 /* la.tls.le */, LoongArch::PseudoLA_TLS_LE, Convert__Reg1_0__BareSymbol1_1, AMFBS_None, { MCK_GPR, MCK_BareSymbol }, },
2680
  { 2871 /* ld.b */, LoongArch::LD_B, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2681
  { 2876 /* ld.bu */, LoongArch::LD_BU, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2682
  { 2882 /* ld.d */, LoongArch::LD_D, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2683
  { 2887 /* ld.h */, LoongArch::LD_H, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2684
  { 2892 /* ld.hu */, LoongArch::LD_HU, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2685
  { 2898 /* ld.w */, LoongArch::LD_W, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2686
  { 2903 /* ld.wu */, LoongArch::LD_WU, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2687
  { 2909 /* lddir */, LoongArch::LDDIR, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm8 }, },
2688
  { 2915 /* ldgt.b */, LoongArch::LDGT_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2689
  { 2922 /* ldgt.d */, LoongArch::LDGT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2690
  { 2929 /* ldgt.h */, LoongArch::LDGT_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2691
  { 2936 /* ldgt.w */, LoongArch::LDGT_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2692
  { 2943 /* ldl.d */, LoongArch::LDL_D, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2693
  { 2949 /* ldl.w */, LoongArch::LDL_W, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2694
  { 2955 /* ldle.b */, LoongArch::LDLE_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2695
  { 2962 /* ldle.d */, LoongArch::LDLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2696
  { 2969 /* ldle.h */, LoongArch::LDLE_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2697
  { 2976 /* ldle.w */, LoongArch::LDLE_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2698
  { 2983 /* ldpte */, LoongArch::LDPTE, Convert__Reg1_0__UImm81_1, AMFBS_None, { MCK_GPR, MCK_UImm8 }, },
2699
  { 2989 /* ldptr.d */, LoongArch::LDPTR_D, Convert__Reg1_0__Reg1_1__SImm14lsl21_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2700
  { 2997 /* ldptr.w */, LoongArch::LDPTR_W, Convert__Reg1_0__Reg1_1__SImm14lsl21_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2701
  { 3005 /* ldr.d */, LoongArch::LDR_D, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2702
  { 3011 /* ldr.w */, LoongArch::LDR_W, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2703
  { 3017 /* ldx.b */, LoongArch::LDX_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2704
  { 3023 /* ldx.bu */, LoongArch::LDX_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2705
  { 3030 /* ldx.d */, LoongArch::LDX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2706
  { 3036 /* ldx.h */, LoongArch::LDX_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2707
  { 3042 /* ldx.hu */, LoongArch::LDX_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2708
  { 3049 /* ldx.w */, LoongArch::LDX_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2709
  { 3055 /* ldx.wu */, LoongArch::LDX_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2710
  { 3062 /* li.d */, LoongArch::PseudoLI_D, Convert__Reg1_0__Imm1_1, AMFBS_IsLA64, { MCK_GPR, MCK_Imm }, },
2711
  { 3067 /* li.w */, LoongArch::PseudoLI_W, Convert__Reg1_0__Imm321_1, AMFBS_None, { MCK_GPR, MCK_Imm32 }, },
2712
  { 3072 /* ll.d */, LoongArch::LL_D, Convert__Reg1_0__Reg1_1__SImm14lsl21_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2713
  { 3077 /* ll.w */, LoongArch::LL_W, Convert__Reg1_0__Reg1_1__SImm14lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2714
  { 3082 /* llacq.d */, LoongArch::LLACQ_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2715
  { 3090 /* llacq.w */, LoongArch::LLACQ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2716
  { 3098 /* lu12i.w */, LoongArch::LU12I_W, Convert__Reg1_0__SImm20lu12iw1_1, AMFBS_None, { MCK_GPR, MCK_SImm20lu12iw }, },
2717
  { 3106 /* lu32i.d */, LoongArch::LU32I_D, Convert__Reg1_0__Tie0_1_1__SImm20lu32id1_1, AMFBS_IsLA64, { MCK_GPR, MCK_SImm20lu32id }, },
2718
  { 3114 /* lu52i.d */, LoongArch::LU52I_D, Convert__Reg1_0__Reg1_1__SImm12lu52id1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12lu52id }, },
2719
  { 3122 /* maskeqz */, LoongArch::MASKEQZ, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2720
  { 3130 /* masknez */, LoongArch::MASKNEZ, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2721
  { 3138 /* mod.d */, LoongArch::MOD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2722
  { 3144 /* mod.du */, LoongArch::MOD_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2723
  { 3151 /* mod.w */, LoongArch::MOD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2724
  { 3157 /* mod.wu */, LoongArch::MOD_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2725
  { 3164 /* movcf2fr */, LoongArch::MOVCF2FR_xS, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_CFR }, },
2726
  { 3173 /* movcf2gr */, LoongArch::MOVCF2GR, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_CFR }, },
2727
  { 3182 /* move */, LoongArch::OR, Convert__Reg1_0__Reg1_1__regR0, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2728
  { 3187 /* movfcsr2gr */, LoongArch::MOVFCSR2GR, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_FCSR }, },
2729
  { 3198 /* movfr2cf */, LoongArch::MOVFR2CF_xS, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_FPR32 }, },
2730
  { 3207 /* movfr2gr.d */, LoongArch::MOVFR2GR_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_FPR64 }, },
2731
  { 3218 /* movfr2gr.s */, LoongArch::MOVFR2GR_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_FPR32 }, },
2732
  { 3229 /* movfrh2gr.s */, LoongArch::MOVFRH2GR_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_FPR64 }, },
2733
  { 3241 /* movgr2cf */, LoongArch::MOVGR2CF, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_GPR }, },
2734
  { 3250 /* movgr2fcsr */, LoongArch::MOVGR2FCSR, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FCSR, MCK_GPR }, },
2735
  { 3261 /* movgr2fr.d */, LoongArch::MOVGR2FR_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_FPR64, MCK_GPR }, },
2736
  { 3272 /* movgr2fr.w */, LoongArch::MOVGR2FR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_FPR32, MCK_GPR }, },
2737
  { 3283 /* movgr2frh.w */, LoongArch::MOVGR2FRH_W, Convert__Reg1_0__Tie0_1_1__Reg1_1, AMFBS_None, { MCK_FPR64, MCK_GPR }, },
2738
  { 3295 /* movgr2scr */, LoongArch::MOVGR2SCR, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_SCR, MCK_GPR }, },
2739
  { 3305 /* movscr2gr */, LoongArch::MOVSCR2GR, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_SCR }, },
2740
  { 3315 /* mul.d */, LoongArch::MUL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2741
  { 3321 /* mul.w */, LoongArch::MUL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2742
  { 3327 /* mulh.d */, LoongArch::MULH_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2743
  { 3334 /* mulh.du */, LoongArch::MULH_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2744
  { 3342 /* mulh.w */, LoongArch::MULH_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2745
  { 3349 /* mulh.wu */, LoongArch::MULH_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2746
  { 3357 /* mulw.d.w */, LoongArch::MULW_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2747
  { 3366 /* mulw.d.wu */, LoongArch::MULW_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2748
  { 3376 /* nop */, LoongArch::ANDI, Convert__regR0__regR0__imm_95_0, AMFBS_None, {  }, },
2749
  { 3380 /* nor */, LoongArch::NOR, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2750
  { 3384 /* or */, LoongArch::OR, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2751
  { 3387 /* ori */, LoongArch::ORI, Convert__Reg1_0__Reg1_1__UImm12ori1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm12ori }, },
2752
  { 3391 /* orn */, LoongArch::ORN, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2753
  { 3395 /* pcaddi */, LoongArch::PCADDI, Convert__Reg1_0__SImm201_1, AMFBS_None, { MCK_GPR, MCK_SImm20 }, },
2754
  { 3402 /* pcaddu12i */, LoongArch::PCADDU12I, Convert__Reg1_0__SImm201_1, AMFBS_None, { MCK_GPR, MCK_SImm20 }, },
2755
  { 3412 /* pcaddu18i */, LoongArch::PCADDU18I, Convert__Reg1_0__SImm20pcaddu18i1_1, AMFBS_IsLA64, { MCK_GPR, MCK_SImm20pcaddu18i }, },
2756
  { 3422 /* pcalau12i */, LoongArch::PCALAU12I, Convert__Reg1_0__SImm20pcalau12i1_1, AMFBS_None, { MCK_GPR, MCK_SImm20pcalau12i }, },
2757
  { 3432 /* preld */, LoongArch::PRELD, Convert__UImm51_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_UImm5, MCK_GPR, MCK_SImm12 }, },
2758
  { 3438 /* preldx */, LoongArch::PRELDX, Convert__UImm51_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_UImm5, MCK_GPR, MCK_GPR }, },
2759
  { 3445 /* rcr.b */, LoongArch::RCR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2760
  { 3451 /* rcr.d */, LoongArch::RCR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2761
  { 3457 /* rcr.h */, LoongArch::RCR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2762
  { 3463 /* rcr.w */, LoongArch::RCR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2763
  { 3469 /* rcri.b */, LoongArch::RCRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm3 }, },
2764
  { 3476 /* rcri.d */, LoongArch::RCRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_UImm6 }, },
2765
  { 3483 /* rcri.h */, LoongArch::RCRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2766
  { 3490 /* rcri.w */, LoongArch::RCRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm5 }, },
2767
  { 3497 /* rdtime.d */, LoongArch::RDTIME_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2768
  { 3506 /* rdtimeh.w */, LoongArch::RDTIMEH_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2769
  { 3516 /* rdtimel.w */, LoongArch::RDTIMEL_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2770
  { 3526 /* ret */, LoongArch::JIRL, Convert__regR0__regR1__imm_95_0, AMFBS_None, {  }, },
2771
  { 3530 /* revb.2h */, LoongArch::REVB_2H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2772
  { 3538 /* revb.2w */, LoongArch::REVB_2W, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2773
  { 3546 /* revb.4h */, LoongArch::REVB_4H, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2774
  { 3554 /* revb.d */, LoongArch::REVB_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2775
  { 3561 /* revh.2w */, LoongArch::REVH_2W, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2776
  { 3569 /* revh.d */, LoongArch::REVH_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2777
  { 3576 /* rotr.b */, LoongArch::ROTR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2778
  { 3583 /* rotr.d */, LoongArch::ROTR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2779
  { 3590 /* rotr.h */, LoongArch::ROTR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2780
  { 3597 /* rotr.w */, LoongArch::ROTR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2781
  { 3604 /* rotri.b */, LoongArch::ROTRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm3 }, },
2782
  { 3612 /* rotri.d */, LoongArch::ROTRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_UImm6 }, },
2783
  { 3620 /* rotri.h */, LoongArch::ROTRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm4 }, },
2784
  { 3628 /* rotri.w */, LoongArch::ROTRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm5 }, },
2785
  { 3636 /* sbc.b */, LoongArch::SBC_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2786
  { 3642 /* sbc.d */, LoongArch::SBC_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2787
  { 3648 /* sbc.h */, LoongArch::SBC_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2788
  { 3654 /* sbc.w */, LoongArch::SBC_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2789
  { 3660 /* sc.d */, LoongArch::SC_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__SImm14lsl21_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2790
  { 3665 /* sc.q */, LoongArch::SC_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2791
  { 3670 /* sc.w */, LoongArch::SC_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__SImm14lsl21_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2792
  { 3675 /* screl.d */, LoongArch::SCREL_D, Convert__Reg1_0__Tie0_1_1__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
2793
  { 3683 /* screl.w */, LoongArch::SCREL_W, Convert__Reg1_0__Tie0_1_1__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2794
  { 3691 /* setarmj */, LoongArch::SETARMJ, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
2795
  { 3699 /* setx86j */, LoongArch::SETX86J, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
2796
  { 3707 /* setx86loope */, LoongArch::SETX86LOOPE, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2797
  { 3719 /* setx86loopne */, LoongArch::SETX86LOOPNE, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
2798
  { 3732 /* sll.d */, LoongArch::SLL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2799
  { 3738 /* sll.w */, LoongArch::SLL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2800
  { 3744 /* slli.d */, LoongArch::SLLI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_UImm6 }, },
2801
  { 3751 /* slli.w */, LoongArch::SLLI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm5 }, },
2802
  { 3758 /* slt */, LoongArch::SLT, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2803
  { 3762 /* slti */, LoongArch::SLTI, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12 }, },
2804
  { 3767 /* sltu */, LoongArch::SLTU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2805
  { 3772 /* sltui */, LoongArch::SLTUI, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12 }, },
2806
  { 3778 /* sra.d */, LoongArch::SRA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2807
  { 3784 /* sra.w */, LoongArch::SRA_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2808
  { 3790 /* srai.d */, LoongArch::SRAI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_UImm6 }, },
2809
  { 3797 /* srai.w */, LoongArch::SRAI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm5 }, },
2810
  { 3804 /* srl.d */, LoongArch::SRL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2811
  { 3810 /* srl.w */, LoongArch::SRL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2812
  { 3816 /* srli.d */, LoongArch::SRLI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_UImm6 }, },
2813
  { 3823 /* srli.w */, LoongArch::SRLI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm5 }, },
2814
  { 3830 /* st.b */, LoongArch::ST_B, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2815
  { 3835 /* st.d */, LoongArch::ST_D, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2816
  { 3840 /* st.h */, LoongArch::ST_H, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2817
  { 3845 /* st.w */, LoongArch::ST_W, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2818
  { 3850 /* stgt.b */, LoongArch::STGT_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2819
  { 3857 /* stgt.d */, LoongArch::STGT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2820
  { 3864 /* stgt.h */, LoongArch::STGT_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2821
  { 3871 /* stgt.w */, LoongArch::STGT_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2822
  { 3878 /* stl.d */, LoongArch::STL_D, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2823
  { 3884 /* stl.w */, LoongArch::STL_W, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2824
  { 3890 /* stle.b */, LoongArch::STLE_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2825
  { 3897 /* stle.d */, LoongArch::STLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2826
  { 3904 /* stle.h */, LoongArch::STLE_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2827
  { 3911 /* stle.w */, LoongArch::STLE_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2828
  { 3918 /* stptr.d */, LoongArch::STPTR_D, Convert__Reg1_0__Reg1_1__SImm14lsl21_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2829
  { 3926 /* stptr.w */, LoongArch::STPTR_W, Convert__Reg1_0__Reg1_1__SImm14lsl21_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm14lsl2 }, },
2830
  { 3934 /* str.d */, LoongArch::STR_D, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2831
  { 3940 /* str.w */, LoongArch::STR_W, Convert__Reg1_0__Reg1_1__SImm12addlike1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_SImm12addlike }, },
2832
  { 3946 /* stx.b */, LoongArch::STX_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2833
  { 3952 /* stx.d */, LoongArch::STX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2834
  { 3958 /* stx.h */, LoongArch::STX_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2835
  { 3964 /* stx.w */, LoongArch::STX_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2836
  { 3970 /* sub.d */, LoongArch::SUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_IsLA64, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2837
  { 3976 /* sub.w */, LoongArch::SUB_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
2838
  { 3982 /* syscall */, LoongArch::SYSCALL, Convert__UImm151_0, AMFBS_None, { MCK_UImm15 }, },
2839
  { 3990 /* tail36 */, LoongArch::PseudoTAIL36, Convert__Reg1_0__BareSymbol1_1, AMFBS_IsLA64, { MCK_GPR, MCK_BareSymbol }, },
2840
  { 3997 /* tlbclr */, LoongArch::TLBCLR, Convert_NoOperands, AMFBS_None, {  }, },
2841
  { 4004 /* tlbfill */, LoongArch::TLBFILL, Convert_NoOperands, AMFBS_None, {  }, },
2842
  { 4012 /* tlbflush */, LoongArch::TLBFLUSH, Convert_NoOperands, AMFBS_None, {  }, },
2843
  { 4021 /* tlbrd */, LoongArch::TLBRD, Convert_NoOperands, AMFBS_None, {  }, },
2844
  { 4027 /* tlbsrch */, LoongArch::TLBSRCH, Convert_NoOperands, AMFBS_None, {  }, },
2845
  { 4035 /* tlbwr */, LoongArch::TLBWR, Convert_NoOperands, AMFBS_None, {  }, },
2846
  { 4041 /* vabsd.b */, LoongArch::VABSD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2847
  { 4049 /* vabsd.bu */, LoongArch::VABSD_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2848
  { 4058 /* vabsd.d */, LoongArch::VABSD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2849
  { 4066 /* vabsd.du */, LoongArch::VABSD_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2850
  { 4075 /* vabsd.h */, LoongArch::VABSD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2851
  { 4083 /* vabsd.hu */, LoongArch::VABSD_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2852
  { 4092 /* vabsd.w */, LoongArch::VABSD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2853
  { 4100 /* vabsd.wu */, LoongArch::VABSD_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2854
  { 4109 /* vadd.b */, LoongArch::VADD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2855
  { 4116 /* vadd.d */, LoongArch::VADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2856
  { 4123 /* vadd.h */, LoongArch::VADD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2857
  { 4130 /* vadd.q */, LoongArch::VADD_Q, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2858
  { 4137 /* vadd.w */, LoongArch::VADD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2859
  { 4144 /* vadda.b */, LoongArch::VADDA_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2860
  { 4152 /* vadda.d */, LoongArch::VADDA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2861
  { 4160 /* vadda.h */, LoongArch::VADDA_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2862
  { 4168 /* vadda.w */, LoongArch::VADDA_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2863
  { 4176 /* vaddi.bu */, LoongArch::VADDI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2864
  { 4185 /* vaddi.du */, LoongArch::VADDI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2865
  { 4194 /* vaddi.hu */, LoongArch::VADDI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2866
  { 4203 /* vaddi.wu */, LoongArch::VADDI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2867
  { 4212 /* vaddwev.d.w */, LoongArch::VADDWEV_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2868
  { 4224 /* vaddwev.d.wu */, LoongArch::VADDWEV_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2869
  { 4237 /* vaddwev.d.wu.w */, LoongArch::VADDWEV_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2870
  { 4252 /* vaddwev.h.b */, LoongArch::VADDWEV_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2871
  { 4264 /* vaddwev.h.bu */, LoongArch::VADDWEV_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2872
  { 4277 /* vaddwev.h.bu.b */, LoongArch::VADDWEV_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2873
  { 4292 /* vaddwev.q.d */, LoongArch::VADDWEV_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2874
  { 4304 /* vaddwev.q.du */, LoongArch::VADDWEV_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2875
  { 4317 /* vaddwev.q.du.d */, LoongArch::VADDWEV_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2876
  { 4332 /* vaddwev.w.h */, LoongArch::VADDWEV_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2877
  { 4344 /* vaddwev.w.hu */, LoongArch::VADDWEV_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2878
  { 4357 /* vaddwev.w.hu.h */, LoongArch::VADDWEV_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2879
  { 4372 /* vaddwod.d.w */, LoongArch::VADDWOD_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2880
  { 4384 /* vaddwod.d.wu */, LoongArch::VADDWOD_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2881
  { 4397 /* vaddwod.d.wu.w */, LoongArch::VADDWOD_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2882
  { 4412 /* vaddwod.h.b */, LoongArch::VADDWOD_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2883
  { 4424 /* vaddwod.h.bu */, LoongArch::VADDWOD_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2884
  { 4437 /* vaddwod.h.bu.b */, LoongArch::VADDWOD_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2885
  { 4452 /* vaddwod.q.d */, LoongArch::VADDWOD_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2886
  { 4464 /* vaddwod.q.du */, LoongArch::VADDWOD_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2887
  { 4477 /* vaddwod.q.du.d */, LoongArch::VADDWOD_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2888
  { 4492 /* vaddwod.w.h */, LoongArch::VADDWOD_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2889
  { 4504 /* vaddwod.w.hu */, LoongArch::VADDWOD_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2890
  { 4517 /* vaddwod.w.hu.h */, LoongArch::VADDWOD_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2891
  { 4532 /* vand.v */, LoongArch::VAND_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2892
  { 4539 /* vandi.b */, LoongArch::VANDI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
2893
  { 4547 /* vandn.v */, LoongArch::VANDN_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2894
  { 4555 /* vavg.b */, LoongArch::VAVG_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2895
  { 4562 /* vavg.bu */, LoongArch::VAVG_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2896
  { 4570 /* vavg.d */, LoongArch::VAVG_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2897
  { 4577 /* vavg.du */, LoongArch::VAVG_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2898
  { 4585 /* vavg.h */, LoongArch::VAVG_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2899
  { 4592 /* vavg.hu */, LoongArch::VAVG_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2900
  { 4600 /* vavg.w */, LoongArch::VAVG_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2901
  { 4607 /* vavg.wu */, LoongArch::VAVG_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2902
  { 4615 /* vavgr.b */, LoongArch::VAVGR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2903
  { 4623 /* vavgr.bu */, LoongArch::VAVGR_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2904
  { 4632 /* vavgr.d */, LoongArch::VAVGR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2905
  { 4640 /* vavgr.du */, LoongArch::VAVGR_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2906
  { 4649 /* vavgr.h */, LoongArch::VAVGR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2907
  { 4657 /* vavgr.hu */, LoongArch::VAVGR_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2908
  { 4666 /* vavgr.w */, LoongArch::VAVGR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2909
  { 4674 /* vavgr.wu */, LoongArch::VAVGR_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2910
  { 4683 /* vbitclr.b */, LoongArch::VBITCLR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2911
  { 4693 /* vbitclr.d */, LoongArch::VBITCLR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2912
  { 4703 /* vbitclr.h */, LoongArch::VBITCLR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2913
  { 4713 /* vbitclr.w */, LoongArch::VBITCLR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2914
  { 4723 /* vbitclri.b */, LoongArch::VBITCLRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
2915
  { 4734 /* vbitclri.d */, LoongArch::VBITCLRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
2916
  { 4745 /* vbitclri.h */, LoongArch::VBITCLRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
2917
  { 4756 /* vbitclri.w */, LoongArch::VBITCLRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2918
  { 4767 /* vbitrev.b */, LoongArch::VBITREV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2919
  { 4777 /* vbitrev.d */, LoongArch::VBITREV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2920
  { 4787 /* vbitrev.h */, LoongArch::VBITREV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2921
  { 4797 /* vbitrev.w */, LoongArch::VBITREV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2922
  { 4807 /* vbitrevi.b */, LoongArch::VBITREVI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
2923
  { 4818 /* vbitrevi.d */, LoongArch::VBITREVI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
2924
  { 4829 /* vbitrevi.h */, LoongArch::VBITREVI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
2925
  { 4840 /* vbitrevi.w */, LoongArch::VBITREVI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2926
  { 4851 /* vbitsel.v */, LoongArch::VBITSEL_V, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2927
  { 4861 /* vbitseli.b */, LoongArch::VBITSELI_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
2928
  { 4872 /* vbitset.b */, LoongArch::VBITSET_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2929
  { 4882 /* vbitset.d */, LoongArch::VBITSET_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2930
  { 4892 /* vbitset.h */, LoongArch::VBITSET_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2931
  { 4902 /* vbitset.w */, LoongArch::VBITSET_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2932
  { 4912 /* vbitseti.b */, LoongArch::VBITSETI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
2933
  { 4923 /* vbitseti.d */, LoongArch::VBITSETI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
2934
  { 4934 /* vbitseti.h */, LoongArch::VBITSETI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
2935
  { 4945 /* vbitseti.w */, LoongArch::VBITSETI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2936
  { 4956 /* vbsll.v */, LoongArch::VBSLL_V, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2937
  { 4964 /* vbsrl.v */, LoongArch::VBSRL_V, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
2938
  { 4972 /* vclo.b */, LoongArch::VCLO_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2939
  { 4979 /* vclo.d */, LoongArch::VCLO_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2940
  { 4986 /* vclo.h */, LoongArch::VCLO_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2941
  { 4993 /* vclo.w */, LoongArch::VCLO_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2942
  { 5000 /* vclz.b */, LoongArch::VCLZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2943
  { 5007 /* vclz.d */, LoongArch::VCLZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2944
  { 5014 /* vclz.h */, LoongArch::VCLZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2945
  { 5021 /* vclz.w */, LoongArch::VCLZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2946
  { 5028 /* vdiv.b */, LoongArch::VDIV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2947
  { 5035 /* vdiv.bu */, LoongArch::VDIV_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2948
  { 5043 /* vdiv.d */, LoongArch::VDIV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2949
  { 5050 /* vdiv.du */, LoongArch::VDIV_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2950
  { 5058 /* vdiv.h */, LoongArch::VDIV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2951
  { 5065 /* vdiv.hu */, LoongArch::VDIV_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2952
  { 5073 /* vdiv.w */, LoongArch::VDIV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2953
  { 5080 /* vdiv.wu */, LoongArch::VDIV_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2954
  { 5088 /* vext2xv.d.b */, LoongArch::VEXT2XV_D_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2955
  { 5100 /* vext2xv.d.h */, LoongArch::VEXT2XV_D_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2956
  { 5112 /* vext2xv.d.w */, LoongArch::VEXT2XV_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2957
  { 5124 /* vext2xv.du.bu */, LoongArch::VEXT2XV_DU_BU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2958
  { 5138 /* vext2xv.du.hu */, LoongArch::VEXT2XV_DU_HU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2959
  { 5152 /* vext2xv.du.wu */, LoongArch::VEXT2XV_DU_WU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2960
  { 5166 /* vext2xv.h.b */, LoongArch::VEXT2XV_H_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2961
  { 5178 /* vext2xv.hu.bu */, LoongArch::VEXT2XV_HU_BU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2962
  { 5192 /* vext2xv.w.b */, LoongArch::VEXT2XV_W_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2963
  { 5204 /* vext2xv.w.h */, LoongArch::VEXT2XV_W_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2964
  { 5216 /* vext2xv.wu.bu */, LoongArch::VEXT2XV_WU_BU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2965
  { 5230 /* vext2xv.wu.hu */, LoongArch::VEXT2XV_WU_HU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
2966
  { 5244 /* vexth.d.w */, LoongArch::VEXTH_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2967
  { 5254 /* vexth.du.wu */, LoongArch::VEXTH_DU_WU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2968
  { 5266 /* vexth.h.b */, LoongArch::VEXTH_H_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2969
  { 5276 /* vexth.hu.bu */, LoongArch::VEXTH_HU_BU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2970
  { 5288 /* vexth.q.d */, LoongArch::VEXTH_Q_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2971
  { 5298 /* vexth.qu.du */, LoongArch::VEXTH_QU_DU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2972
  { 5310 /* vexth.w.h */, LoongArch::VEXTH_W_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2973
  { 5320 /* vexth.wu.hu */, LoongArch::VEXTH_WU_HU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2974
  { 5332 /* vextl.q.d */, LoongArch::VEXTL_Q_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2975
  { 5342 /* vextl.qu.du */, LoongArch::VEXTL_QU_DU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2976
  { 5354 /* vextrins.b */, LoongArch::VEXTRINS_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
2977
  { 5365 /* vextrins.d */, LoongArch::VEXTRINS_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
2978
  { 5376 /* vextrins.h */, LoongArch::VEXTRINS_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
2979
  { 5387 /* vextrins.w */, LoongArch::VEXTRINS_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
2980
  { 5398 /* vfadd.d */, LoongArch::VFADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2981
  { 5406 /* vfadd.s */, LoongArch::VFADD_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2982
  { 5414 /* vfclass.d */, LoongArch::VFCLASS_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2983
  { 5424 /* vfclass.s */, LoongArch::VFCLASS_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
2984
  { 5434 /* vfcmp.caf.d */, LoongArch::VFCMP_CAF_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2985
  { 5446 /* vfcmp.caf.s */, LoongArch::VFCMP_CAF_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2986
  { 5458 /* vfcmp.ceq.d */, LoongArch::VFCMP_CEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2987
  { 5470 /* vfcmp.ceq.s */, LoongArch::VFCMP_CEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2988
  { 5482 /* vfcmp.cle.d */, LoongArch::VFCMP_CLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2989
  { 5494 /* vfcmp.cle.s */, LoongArch::VFCMP_CLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2990
  { 5506 /* vfcmp.clt.d */, LoongArch::VFCMP_CLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2991
  { 5518 /* vfcmp.clt.s */, LoongArch::VFCMP_CLT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2992
  { 5530 /* vfcmp.cne.d */, LoongArch::VFCMP_CNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2993
  { 5542 /* vfcmp.cne.s */, LoongArch::VFCMP_CNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2994
  { 5554 /* vfcmp.cor.d */, LoongArch::VFCMP_COR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2995
  { 5566 /* vfcmp.cor.s */, LoongArch::VFCMP_COR_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2996
  { 5578 /* vfcmp.cueq.d */, LoongArch::VFCMP_CUEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2997
  { 5591 /* vfcmp.cueq.s */, LoongArch::VFCMP_CUEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2998
  { 5604 /* vfcmp.cule.d */, LoongArch::VFCMP_CULE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
2999
  { 5617 /* vfcmp.cule.s */, LoongArch::VFCMP_CULE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3000
  { 5630 /* vfcmp.cult.d */, LoongArch::VFCMP_CULT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3001
  { 5643 /* vfcmp.cult.s */, LoongArch::VFCMP_CULT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3002
  { 5656 /* vfcmp.cun.d */, LoongArch::VFCMP_CUN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3003
  { 5668 /* vfcmp.cun.s */, LoongArch::VFCMP_CUN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3004
  { 5680 /* vfcmp.cune.d */, LoongArch::VFCMP_CUNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3005
  { 5693 /* vfcmp.cune.s */, LoongArch::VFCMP_CUNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3006
  { 5706 /* vfcmp.saf.d */, LoongArch::VFCMP_SAF_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3007
  { 5718 /* vfcmp.saf.s */, LoongArch::VFCMP_SAF_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3008
  { 5730 /* vfcmp.seq.d */, LoongArch::VFCMP_SEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3009
  { 5742 /* vfcmp.seq.s */, LoongArch::VFCMP_SEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3010
  { 5754 /* vfcmp.sle.d */, LoongArch::VFCMP_SLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3011
  { 5766 /* vfcmp.sle.s */, LoongArch::VFCMP_SLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3012
  { 5778 /* vfcmp.slt.d */, LoongArch::VFCMP_SLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3013
  { 5790 /* vfcmp.slt.s */, LoongArch::VFCMP_SLT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3014
  { 5802 /* vfcmp.sne.d */, LoongArch::VFCMP_SNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3015
  { 5814 /* vfcmp.sne.s */, LoongArch::VFCMP_SNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3016
  { 5826 /* vfcmp.sor.d */, LoongArch::VFCMP_SOR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3017
  { 5838 /* vfcmp.sor.s */, LoongArch::VFCMP_SOR_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3018
  { 5850 /* vfcmp.sueq.d */, LoongArch::VFCMP_SUEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3019
  { 5863 /* vfcmp.sueq.s */, LoongArch::VFCMP_SUEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3020
  { 5876 /* vfcmp.sule.d */, LoongArch::VFCMP_SULE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3021
  { 5889 /* vfcmp.sule.s */, LoongArch::VFCMP_SULE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3022
  { 5902 /* vfcmp.sult.d */, LoongArch::VFCMP_SULT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3023
  { 5915 /* vfcmp.sult.s */, LoongArch::VFCMP_SULT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3024
  { 5928 /* vfcmp.sun.d */, LoongArch::VFCMP_SUN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3025
  { 5940 /* vfcmp.sun.s */, LoongArch::VFCMP_SUN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3026
  { 5952 /* vfcmp.sune.d */, LoongArch::VFCMP_SUNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3027
  { 5965 /* vfcmp.sune.s */, LoongArch::VFCMP_SUNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3028
  { 5978 /* vfcvt.h.s */, LoongArch::VFCVT_H_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3029
  { 5988 /* vfcvt.s.d */, LoongArch::VFCVT_S_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3030
  { 5998 /* vfcvth.d.s */, LoongArch::VFCVTH_D_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3031
  { 6009 /* vfcvth.s.h */, LoongArch::VFCVTH_S_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3032
  { 6020 /* vfcvtl.d.s */, LoongArch::VFCVTL_D_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3033
  { 6031 /* vfcvtl.s.h */, LoongArch::VFCVTL_S_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3034
  { 6042 /* vfdiv.d */, LoongArch::VFDIV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3035
  { 6050 /* vfdiv.s */, LoongArch::VFDIV_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3036
  { 6058 /* vffint.d.l */, LoongArch::VFFINT_D_L, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3037
  { 6069 /* vffint.d.lu */, LoongArch::VFFINT_D_LU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3038
  { 6081 /* vffint.s.l */, LoongArch::VFFINT_S_L, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3039
  { 6092 /* vffint.s.w */, LoongArch::VFFINT_S_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3040
  { 6103 /* vffint.s.wu */, LoongArch::VFFINT_S_WU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3041
  { 6115 /* vffinth.d.w */, LoongArch::VFFINTH_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3042
  { 6127 /* vffintl.d.w */, LoongArch::VFFINTL_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3043
  { 6139 /* vflogb.d */, LoongArch::VFLOGB_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3044
  { 6148 /* vflogb.s */, LoongArch::VFLOGB_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3045
  { 6157 /* vfmadd.d */, LoongArch::VFMADD_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3046
  { 6166 /* vfmadd.s */, LoongArch::VFMADD_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3047
  { 6175 /* vfmax.d */, LoongArch::VFMAX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3048
  { 6183 /* vfmax.s */, LoongArch::VFMAX_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3049
  { 6191 /* vfmaxa.d */, LoongArch::VFMAXA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3050
  { 6200 /* vfmaxa.s */, LoongArch::VFMAXA_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3051
  { 6209 /* vfmin.d */, LoongArch::VFMIN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3052
  { 6217 /* vfmin.s */, LoongArch::VFMIN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3053
  { 6225 /* vfmina.d */, LoongArch::VFMINA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3054
  { 6234 /* vfmina.s */, LoongArch::VFMINA_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3055
  { 6243 /* vfmsub.d */, LoongArch::VFMSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3056
  { 6252 /* vfmsub.s */, LoongArch::VFMSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3057
  { 6261 /* vfmul.d */, LoongArch::VFMUL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3058
  { 6269 /* vfmul.s */, LoongArch::VFMUL_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3059
  { 6277 /* vfnmadd.d */, LoongArch::VFNMADD_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3060
  { 6287 /* vfnmadd.s */, LoongArch::VFNMADD_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3061
  { 6297 /* vfnmsub.d */, LoongArch::VFNMSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3062
  { 6307 /* vfnmsub.s */, LoongArch::VFNMSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3063
  { 6317 /* vfrecip.d */, LoongArch::VFRECIP_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3064
  { 6327 /* vfrecip.s */, LoongArch::VFRECIP_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3065
  { 6337 /* vfrecipe.d */, LoongArch::VFRECIPE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3066
  { 6348 /* vfrecipe.s */, LoongArch::VFRECIPE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3067
  { 6359 /* vfrint.d */, LoongArch::VFRINT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3068
  { 6368 /* vfrint.s */, LoongArch::VFRINT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3069
  { 6377 /* vfrintrm.d */, LoongArch::VFRINTRM_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3070
  { 6388 /* vfrintrm.s */, LoongArch::VFRINTRM_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3071
  { 6399 /* vfrintrne.d */, LoongArch::VFRINTRNE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3072
  { 6411 /* vfrintrne.s */, LoongArch::VFRINTRNE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3073
  { 6423 /* vfrintrp.d */, LoongArch::VFRINTRP_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3074
  { 6434 /* vfrintrp.s */, LoongArch::VFRINTRP_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3075
  { 6445 /* vfrintrz.d */, LoongArch::VFRINTRZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3076
  { 6456 /* vfrintrz.s */, LoongArch::VFRINTRZ_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3077
  { 6467 /* vfrsqrt.d */, LoongArch::VFRSQRT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3078
  { 6477 /* vfrsqrt.s */, LoongArch::VFRSQRT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3079
  { 6487 /* vfrsqrte.d */, LoongArch::VFRSQRTE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3080
  { 6498 /* vfrsqrte.s */, LoongArch::VFRSQRTE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3081
  { 6509 /* vfrstp.b */, LoongArch::VFRSTP_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3082
  { 6518 /* vfrstp.h */, LoongArch::VFRSTP_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3083
  { 6527 /* vfrstpi.b */, LoongArch::VFRSTPI_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3084
  { 6537 /* vfrstpi.h */, LoongArch::VFRSTPI_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3085
  { 6547 /* vfsqrt.d */, LoongArch::VFSQRT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3086
  { 6556 /* vfsqrt.s */, LoongArch::VFSQRT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3087
  { 6565 /* vfsub.d */, LoongArch::VFSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3088
  { 6573 /* vfsub.s */, LoongArch::VFSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3089
  { 6581 /* vftint.l.d */, LoongArch::VFTINT_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3090
  { 6592 /* vftint.lu.d */, LoongArch::VFTINT_LU_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3091
  { 6604 /* vftint.w.d */, LoongArch::VFTINT_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3092
  { 6615 /* vftint.w.s */, LoongArch::VFTINT_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3093
  { 6626 /* vftint.wu.s */, LoongArch::VFTINT_WU_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3094
  { 6638 /* vftinth.l.s */, LoongArch::VFTINTH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3095
  { 6650 /* vftintl.l.s */, LoongArch::VFTINTL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3096
  { 6662 /* vftintrm.l.d */, LoongArch::VFTINTRM_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3097
  { 6675 /* vftintrm.w.d */, LoongArch::VFTINTRM_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3098
  { 6688 /* vftintrm.w.s */, LoongArch::VFTINTRM_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3099
  { 6701 /* vftintrmh.l.s */, LoongArch::VFTINTRMH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3100
  { 6715 /* vftintrml.l.s */, LoongArch::VFTINTRML_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3101
  { 6729 /* vftintrne.l.d */, LoongArch::VFTINTRNE_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3102
  { 6743 /* vftintrne.w.d */, LoongArch::VFTINTRNE_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3103
  { 6757 /* vftintrne.w.s */, LoongArch::VFTINTRNE_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3104
  { 6771 /* vftintrneh.l.s */, LoongArch::VFTINTRNEH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3105
  { 6786 /* vftintrnel.l.s */, LoongArch::VFTINTRNEL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3106
  { 6801 /* vftintrp.l.d */, LoongArch::VFTINTRP_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3107
  { 6814 /* vftintrp.w.d */, LoongArch::VFTINTRP_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3108
  { 6827 /* vftintrp.w.s */, LoongArch::VFTINTRP_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3109
  { 6840 /* vftintrph.l.s */, LoongArch::VFTINTRPH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3110
  { 6854 /* vftintrpl.l.s */, LoongArch::VFTINTRPL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3111
  { 6868 /* vftintrz.l.d */, LoongArch::VFTINTRZ_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3112
  { 6881 /* vftintrz.lu.d */, LoongArch::VFTINTRZ_LU_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3113
  { 6895 /* vftintrz.w.d */, LoongArch::VFTINTRZ_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3114
  { 6908 /* vftintrz.w.s */, LoongArch::VFTINTRZ_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3115
  { 6921 /* vftintrz.wu.s */, LoongArch::VFTINTRZ_WU_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3116
  { 6935 /* vftintrzh.l.s */, LoongArch::VFTINTRZH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3117
  { 6949 /* vftintrzl.l.s */, LoongArch::VFTINTRZL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3118
  { 6963 /* vhaddw.d.w */, LoongArch::VHADDW_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3119
  { 6974 /* vhaddw.du.wu */, LoongArch::VHADDW_DU_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3120
  { 6987 /* vhaddw.h.b */, LoongArch::VHADDW_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3121
  { 6998 /* vhaddw.hu.bu */, LoongArch::VHADDW_HU_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3122
  { 7011 /* vhaddw.q.d */, LoongArch::VHADDW_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3123
  { 7022 /* vhaddw.qu.du */, LoongArch::VHADDW_QU_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3124
  { 7035 /* vhaddw.w.h */, LoongArch::VHADDW_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3125
  { 7046 /* vhaddw.wu.hu */, LoongArch::VHADDW_WU_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3126
  { 7059 /* vhsubw.d.w */, LoongArch::VHSUBW_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3127
  { 7070 /* vhsubw.du.wu */, LoongArch::VHSUBW_DU_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3128
  { 7083 /* vhsubw.h.b */, LoongArch::VHSUBW_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3129
  { 7094 /* vhsubw.hu.bu */, LoongArch::VHSUBW_HU_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3130
  { 7107 /* vhsubw.q.d */, LoongArch::VHSUBW_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3131
  { 7118 /* vhsubw.qu.du */, LoongArch::VHSUBW_QU_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3132
  { 7131 /* vhsubw.w.h */, LoongArch::VHSUBW_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3133
  { 7142 /* vhsubw.wu.hu */, LoongArch::VHSUBW_WU_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3134
  { 7155 /* vilvh.b */, LoongArch::VILVH_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3135
  { 7163 /* vilvh.d */, LoongArch::VILVH_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3136
  { 7171 /* vilvh.h */, LoongArch::VILVH_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3137
  { 7179 /* vilvh.w */, LoongArch::VILVH_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3138
  { 7187 /* vilvl.b */, LoongArch::VILVL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3139
  { 7195 /* vilvl.d */, LoongArch::VILVL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3140
  { 7203 /* vilvl.h */, LoongArch::VILVL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3141
  { 7211 /* vilvl.w */, LoongArch::VILVL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3142
  { 7219 /* vinsgr2vr.b */, LoongArch::VINSGR2VR_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_UImm4 }, },
3143
  { 7231 /* vinsgr2vr.d */, LoongArch::VINSGR2VR_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm11_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_UImm1 }, },
3144
  { 7243 /* vinsgr2vr.h */, LoongArch::VINSGR2VR_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_UImm3 }, },
3145
  { 7255 /* vinsgr2vr.w */, LoongArch::VINSGR2VR_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm21_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_UImm2 }, },
3146
  { 7267 /* vld */, LoongArch::VLD, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm12 }, },
3147
  { 7271 /* vldi */, LoongArch::VLDI, Convert__Reg1_0__SImm131_1, AMFBS_None, { MCK_LSX128, MCK_SImm13 }, },
3148
  { 7276 /* vldrepl.b */, LoongArch::VLDREPL_B, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm12 }, },
3149
  { 7286 /* vldrepl.d */, LoongArch::VLDREPL_D, Convert__Reg1_0__Reg1_1__SImm9lsl31_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm9lsl3 }, },
3150
  { 7296 /* vldrepl.h */, LoongArch::VLDREPL_H, Convert__Reg1_0__Reg1_1__SImm11lsl11_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm11lsl1 }, },
3151
  { 7306 /* vldrepl.w */, LoongArch::VLDREPL_W, Convert__Reg1_0__Reg1_1__SImm10lsl21_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm10lsl2 }, },
3152
  { 7316 /* vldx */, LoongArch::VLDX, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_GPR }, },
3153
  { 7321 /* vmadd.b */, LoongArch::VMADD_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3154
  { 7329 /* vmadd.d */, LoongArch::VMADD_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3155
  { 7337 /* vmadd.h */, LoongArch::VMADD_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3156
  { 7345 /* vmadd.w */, LoongArch::VMADD_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3157
  { 7353 /* vmaddwev.d.w */, LoongArch::VMADDWEV_D_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3158
  { 7366 /* vmaddwev.d.wu */, LoongArch::VMADDWEV_D_WU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3159
  { 7380 /* vmaddwev.d.wu.w */, LoongArch::VMADDWEV_D_WU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3160
  { 7396 /* vmaddwev.h.b */, LoongArch::VMADDWEV_H_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3161
  { 7409 /* vmaddwev.h.bu */, LoongArch::VMADDWEV_H_BU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3162
  { 7423 /* vmaddwev.h.bu.b */, LoongArch::VMADDWEV_H_BU_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3163
  { 7439 /* vmaddwev.q.d */, LoongArch::VMADDWEV_Q_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3164
  { 7452 /* vmaddwev.q.du */, LoongArch::VMADDWEV_Q_DU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3165
  { 7466 /* vmaddwev.q.du.d */, LoongArch::VMADDWEV_Q_DU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3166
  { 7482 /* vmaddwev.w.h */, LoongArch::VMADDWEV_W_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3167
  { 7495 /* vmaddwev.w.hu */, LoongArch::VMADDWEV_W_HU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3168
  { 7509 /* vmaddwev.w.hu.h */, LoongArch::VMADDWEV_W_HU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3169
  { 7525 /* vmaddwod.d.w */, LoongArch::VMADDWOD_D_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3170
  { 7538 /* vmaddwod.d.wu */, LoongArch::VMADDWOD_D_WU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3171
  { 7552 /* vmaddwod.d.wu.w */, LoongArch::VMADDWOD_D_WU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3172
  { 7568 /* vmaddwod.h.b */, LoongArch::VMADDWOD_H_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3173
  { 7581 /* vmaddwod.h.bu */, LoongArch::VMADDWOD_H_BU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3174
  { 7595 /* vmaddwod.h.bu.b */, LoongArch::VMADDWOD_H_BU_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3175
  { 7611 /* vmaddwod.q.d */, LoongArch::VMADDWOD_Q_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3176
  { 7624 /* vmaddwod.q.du */, LoongArch::VMADDWOD_Q_DU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3177
  { 7638 /* vmaddwod.q.du.d */, LoongArch::VMADDWOD_Q_DU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3178
  { 7654 /* vmaddwod.w.h */, LoongArch::VMADDWOD_W_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3179
  { 7667 /* vmaddwod.w.hu */, LoongArch::VMADDWOD_W_HU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3180
  { 7681 /* vmaddwod.w.hu.h */, LoongArch::VMADDWOD_W_HU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3181
  { 7697 /* vmax.b */, LoongArch::VMAX_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3182
  { 7704 /* vmax.bu */, LoongArch::VMAX_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3183
  { 7712 /* vmax.d */, LoongArch::VMAX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3184
  { 7719 /* vmax.du */, LoongArch::VMAX_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3185
  { 7727 /* vmax.h */, LoongArch::VMAX_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3186
  { 7734 /* vmax.hu */, LoongArch::VMAX_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3187
  { 7742 /* vmax.w */, LoongArch::VMAX_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3188
  { 7749 /* vmax.wu */, LoongArch::VMAX_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3189
  { 7757 /* vmaxi.b */, LoongArch::VMAXI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3190
  { 7765 /* vmaxi.bu */, LoongArch::VMAXI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3191
  { 7774 /* vmaxi.d */, LoongArch::VMAXI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3192
  { 7782 /* vmaxi.du */, LoongArch::VMAXI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3193
  { 7791 /* vmaxi.h */, LoongArch::VMAXI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3194
  { 7799 /* vmaxi.hu */, LoongArch::VMAXI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3195
  { 7808 /* vmaxi.w */, LoongArch::VMAXI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3196
  { 7816 /* vmaxi.wu */, LoongArch::VMAXI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3197
  { 7825 /* vmin.b */, LoongArch::VMIN_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3198
  { 7832 /* vmin.bu */, LoongArch::VMIN_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3199
  { 7840 /* vmin.d */, LoongArch::VMIN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3200
  { 7847 /* vmin.du */, LoongArch::VMIN_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3201
  { 7855 /* vmin.h */, LoongArch::VMIN_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3202
  { 7862 /* vmin.hu */, LoongArch::VMIN_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3203
  { 7870 /* vmin.w */, LoongArch::VMIN_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3204
  { 7877 /* vmin.wu */, LoongArch::VMIN_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3205
  { 7885 /* vmini.b */, LoongArch::VMINI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3206
  { 7893 /* vmini.bu */, LoongArch::VMINI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3207
  { 7902 /* vmini.d */, LoongArch::VMINI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3208
  { 7910 /* vmini.du */, LoongArch::VMINI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3209
  { 7919 /* vmini.h */, LoongArch::VMINI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3210
  { 7927 /* vmini.hu */, LoongArch::VMINI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3211
  { 7936 /* vmini.w */, LoongArch::VMINI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3212
  { 7944 /* vmini.wu */, LoongArch::VMINI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3213
  { 7953 /* vmod.b */, LoongArch::VMOD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3214
  { 7960 /* vmod.bu */, LoongArch::VMOD_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3215
  { 7968 /* vmod.d */, LoongArch::VMOD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3216
  { 7975 /* vmod.du */, LoongArch::VMOD_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3217
  { 7983 /* vmod.h */, LoongArch::VMOD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3218
  { 7990 /* vmod.hu */, LoongArch::VMOD_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3219
  { 7998 /* vmod.w */, LoongArch::VMOD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3220
  { 8005 /* vmod.wu */, LoongArch::VMOD_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3221
  { 8013 /* vmskgez.b */, LoongArch::VMSKGEZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3222
  { 8023 /* vmskltz.b */, LoongArch::VMSKLTZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3223
  { 8033 /* vmskltz.d */, LoongArch::VMSKLTZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3224
  { 8043 /* vmskltz.h */, LoongArch::VMSKLTZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3225
  { 8053 /* vmskltz.w */, LoongArch::VMSKLTZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3226
  { 8063 /* vmsknz.b */, LoongArch::VMSKNZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3227
  { 8072 /* vmsub.b */, LoongArch::VMSUB_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3228
  { 8080 /* vmsub.d */, LoongArch::VMSUB_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3229
  { 8088 /* vmsub.h */, LoongArch::VMSUB_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3230
  { 8096 /* vmsub.w */, LoongArch::VMSUB_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3231
  { 8104 /* vmuh.b */, LoongArch::VMUH_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3232
  { 8111 /* vmuh.bu */, LoongArch::VMUH_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3233
  { 8119 /* vmuh.d */, LoongArch::VMUH_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3234
  { 8126 /* vmuh.du */, LoongArch::VMUH_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3235
  { 8134 /* vmuh.h */, LoongArch::VMUH_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3236
  { 8141 /* vmuh.hu */, LoongArch::VMUH_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3237
  { 8149 /* vmuh.w */, LoongArch::VMUH_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3238
  { 8156 /* vmuh.wu */, LoongArch::VMUH_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3239
  { 8164 /* vmul.b */, LoongArch::VMUL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3240
  { 8171 /* vmul.d */, LoongArch::VMUL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3241
  { 8178 /* vmul.h */, LoongArch::VMUL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3242
  { 8185 /* vmul.w */, LoongArch::VMUL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3243
  { 8192 /* vmulwev.d.w */, LoongArch::VMULWEV_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3244
  { 8204 /* vmulwev.d.wu */, LoongArch::VMULWEV_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3245
  { 8217 /* vmulwev.d.wu.w */, LoongArch::VMULWEV_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3246
  { 8232 /* vmulwev.h.b */, LoongArch::VMULWEV_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3247
  { 8244 /* vmulwev.h.bu */, LoongArch::VMULWEV_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3248
  { 8257 /* vmulwev.h.bu.b */, LoongArch::VMULWEV_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3249
  { 8272 /* vmulwev.q.d */, LoongArch::VMULWEV_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3250
  { 8284 /* vmulwev.q.du */, LoongArch::VMULWEV_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3251
  { 8297 /* vmulwev.q.du.d */, LoongArch::VMULWEV_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3252
  { 8312 /* vmulwev.w.h */, LoongArch::VMULWEV_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3253
  { 8324 /* vmulwev.w.hu */, LoongArch::VMULWEV_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3254
  { 8337 /* vmulwev.w.hu.h */, LoongArch::VMULWEV_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3255
  { 8352 /* vmulwod.d.w */, LoongArch::VMULWOD_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3256
  { 8364 /* vmulwod.d.wu */, LoongArch::VMULWOD_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3257
  { 8377 /* vmulwod.d.wu.w */, LoongArch::VMULWOD_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3258
  { 8392 /* vmulwod.h.b */, LoongArch::VMULWOD_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3259
  { 8404 /* vmulwod.h.bu */, LoongArch::VMULWOD_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3260
  { 8417 /* vmulwod.h.bu.b */, LoongArch::VMULWOD_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3261
  { 8432 /* vmulwod.q.d */, LoongArch::VMULWOD_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3262
  { 8444 /* vmulwod.q.du */, LoongArch::VMULWOD_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3263
  { 8457 /* vmulwod.q.du.d */, LoongArch::VMULWOD_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3264
  { 8472 /* vmulwod.w.h */, LoongArch::VMULWOD_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3265
  { 8484 /* vmulwod.w.hu */, LoongArch::VMULWOD_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3266
  { 8497 /* vmulwod.w.hu.h */, LoongArch::VMULWOD_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3267
  { 8512 /* vneg.b */, LoongArch::VNEG_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3268
  { 8519 /* vneg.d */, LoongArch::VNEG_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3269
  { 8526 /* vneg.h */, LoongArch::VNEG_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3270
  { 8533 /* vneg.w */, LoongArch::VNEG_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3271
  { 8540 /* vnor.v */, LoongArch::VNOR_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3272
  { 8547 /* vnori.b */, LoongArch::VNORI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3273
  { 8555 /* vor.v */, LoongArch::VOR_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3274
  { 8561 /* vori.b */, LoongArch::VORI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3275
  { 8568 /* vorn.v */, LoongArch::VORN_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3276
  { 8575 /* vpackev.b */, LoongArch::VPACKEV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3277
  { 8585 /* vpackev.d */, LoongArch::VPACKEV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3278
  { 8595 /* vpackev.h */, LoongArch::VPACKEV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3279
  { 8605 /* vpackev.w */, LoongArch::VPACKEV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3280
  { 8615 /* vpackod.b */, LoongArch::VPACKOD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3281
  { 8625 /* vpackod.d */, LoongArch::VPACKOD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3282
  { 8635 /* vpackod.h */, LoongArch::VPACKOD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3283
  { 8645 /* vpackod.w */, LoongArch::VPACKOD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3284
  { 8655 /* vpcnt.b */, LoongArch::VPCNT_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3285
  { 8663 /* vpcnt.d */, LoongArch::VPCNT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3286
  { 8671 /* vpcnt.h */, LoongArch::VPCNT_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3287
  { 8679 /* vpcnt.w */, LoongArch::VPCNT_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_LSX128 }, },
3288
  { 8687 /* vpermi.w */, LoongArch::VPERMI_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3289
  { 8696 /* vpickev.b */, LoongArch::VPICKEV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3290
  { 8706 /* vpickev.d */, LoongArch::VPICKEV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3291
  { 8716 /* vpickev.h */, LoongArch::VPICKEV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3292
  { 8726 /* vpickev.w */, LoongArch::VPICKEV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3293
  { 8736 /* vpickod.b */, LoongArch::VPICKOD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3294
  { 8746 /* vpickod.d */, LoongArch::VPICKOD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3295
  { 8756 /* vpickod.h */, LoongArch::VPICKOD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3296
  { 8766 /* vpickod.w */, LoongArch::VPICKOD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3297
  { 8776 /* vpickve2gr.b */, LoongArch::VPICKVE2GR_B, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm4 }, },
3298
  { 8789 /* vpickve2gr.bu */, LoongArch::VPICKVE2GR_BU, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm4 }, },
3299
  { 8803 /* vpickve2gr.d */, LoongArch::VPICKVE2GR_D, Convert__Reg1_0__Reg1_1__UImm11_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm1 }, },
3300
  { 8816 /* vpickve2gr.du */, LoongArch::VPICKVE2GR_DU, Convert__Reg1_0__Reg1_1__UImm11_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm1 }, },
3301
  { 8830 /* vpickve2gr.h */, LoongArch::VPICKVE2GR_H, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm3 }, },
3302
  { 8843 /* vpickve2gr.hu */, LoongArch::VPICKVE2GR_HU, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm3 }, },
3303
  { 8857 /* vpickve2gr.w */, LoongArch::VPICKVE2GR_W, Convert__Reg1_0__Reg1_1__UImm21_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm2 }, },
3304
  { 8870 /* vpickve2gr.wu */, LoongArch::VPICKVE2GR_WU, Convert__Reg1_0__Reg1_1__UImm21_2, AMFBS_None, { MCK_GPR, MCK_LSX128, MCK_UImm2 }, },
3305
  { 8884 /* vreplgr2vr.b */, LoongArch::VREPLGR2VR_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_GPR }, },
3306
  { 8897 /* vreplgr2vr.d */, LoongArch::VREPLGR2VR_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_GPR }, },
3307
  { 8910 /* vreplgr2vr.h */, LoongArch::VREPLGR2VR_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_GPR }, },
3308
  { 8923 /* vreplgr2vr.w */, LoongArch::VREPLGR2VR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LSX128, MCK_GPR }, },
3309
  { 8936 /* vrepli.b */, LoongArch::PseudoVREPLI_B, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LSX128, MCK_SImm10 }, },
3310
  { 8945 /* vrepli.d */, LoongArch::PseudoVREPLI_D, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LSX128, MCK_SImm10 }, },
3311
  { 8954 /* vrepli.h */, LoongArch::PseudoVREPLI_H, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LSX128, MCK_SImm10 }, },
3312
  { 8963 /* vrepli.w */, LoongArch::PseudoVREPLI_W, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LSX128, MCK_SImm10 }, },
3313
  { 8972 /* vreplve.b */, LoongArch::VREPLVE_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_GPR }, },
3314
  { 8982 /* vreplve.d */, LoongArch::VREPLVE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_GPR }, },
3315
  { 8992 /* vreplve.h */, LoongArch::VREPLVE_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_GPR }, },
3316
  { 9002 /* vreplve.w */, LoongArch::VREPLVE_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_GPR }, },
3317
  { 9012 /* vreplvei.b */, LoongArch::VREPLVEI_B, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3318
  { 9023 /* vreplvei.d */, LoongArch::VREPLVEI_D, Convert__Reg1_0__Reg1_1__UImm11_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm1 }, },
3319
  { 9034 /* vreplvei.h */, LoongArch::VREPLVEI_H, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3320
  { 9045 /* vreplvei.w */, LoongArch::VREPLVEI_W, Convert__Reg1_0__Reg1_1__UImm21_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm2 }, },
3321
  { 9056 /* vrotr.b */, LoongArch::VROTR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3322
  { 9064 /* vrotr.d */, LoongArch::VROTR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3323
  { 9072 /* vrotr.h */, LoongArch::VROTR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3324
  { 9080 /* vrotr.w */, LoongArch::VROTR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3325
  { 9088 /* vrotri.b */, LoongArch::VROTRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3326
  { 9097 /* vrotri.d */, LoongArch::VROTRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3327
  { 9106 /* vrotri.h */, LoongArch::VROTRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3328
  { 9115 /* vrotri.w */, LoongArch::VROTRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3329
  { 9124 /* vsadd.b */, LoongArch::VSADD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3330
  { 9132 /* vsadd.bu */, LoongArch::VSADD_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3331
  { 9141 /* vsadd.d */, LoongArch::VSADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3332
  { 9149 /* vsadd.du */, LoongArch::VSADD_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3333
  { 9158 /* vsadd.h */, LoongArch::VSADD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3334
  { 9166 /* vsadd.hu */, LoongArch::VSADD_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3335
  { 9175 /* vsadd.w */, LoongArch::VSADD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3336
  { 9183 /* vsadd.wu */, LoongArch::VSADD_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3337
  { 9192 /* vsat.b */, LoongArch::VSAT_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3338
  { 9199 /* vsat.bu */, LoongArch::VSAT_BU, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3339
  { 9207 /* vsat.d */, LoongArch::VSAT_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3340
  { 9214 /* vsat.du */, LoongArch::VSAT_DU, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3341
  { 9222 /* vsat.h */, LoongArch::VSAT_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3342
  { 9229 /* vsat.hu */, LoongArch::VSAT_HU, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3343
  { 9237 /* vsat.w */, LoongArch::VSAT_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3344
  { 9244 /* vsat.wu */, LoongArch::VSAT_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3345
  { 9252 /* vseq.b */, LoongArch::VSEQ_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3346
  { 9259 /* vseq.d */, LoongArch::VSEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3347
  { 9266 /* vseq.h */, LoongArch::VSEQ_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3348
  { 9273 /* vseq.w */, LoongArch::VSEQ_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3349
  { 9280 /* vseqi.b */, LoongArch::VSEQI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3350
  { 9288 /* vseqi.d */, LoongArch::VSEQI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3351
  { 9296 /* vseqi.h */, LoongArch::VSEQI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3352
  { 9304 /* vseqi.w */, LoongArch::VSEQI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3353
  { 9312 /* vsetallnez.b */, LoongArch::VSETALLNEZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3354
  { 9325 /* vsetallnez.d */, LoongArch::VSETALLNEZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3355
  { 9338 /* vsetallnez.h */, LoongArch::VSETALLNEZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3356
  { 9351 /* vsetallnez.w */, LoongArch::VSETALLNEZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3357
  { 9364 /* vsetanyeqz.b */, LoongArch::VSETANYEQZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3358
  { 9377 /* vsetanyeqz.d */, LoongArch::VSETANYEQZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3359
  { 9390 /* vsetanyeqz.h */, LoongArch::VSETANYEQZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3360
  { 9403 /* vsetanyeqz.w */, LoongArch::VSETANYEQZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3361
  { 9416 /* vseteqz.v */, LoongArch::VSETEQZ_V, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3362
  { 9426 /* vsetnez.v */, LoongArch::VSETNEZ_V, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LSX128 }, },
3363
  { 9436 /* vshuf.b */, LoongArch::VSHUF_B, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3364
  { 9444 /* vshuf.d */, LoongArch::VSHUF_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3365
  { 9452 /* vshuf.h */, LoongArch::VSHUF_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3366
  { 9460 /* vshuf.w */, LoongArch::VSHUF_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3367
  { 9468 /* vshuf4i.b */, LoongArch::VSHUF4I_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3368
  { 9478 /* vshuf4i.d */, LoongArch::VSHUF4I_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3369
  { 9488 /* vshuf4i.h */, LoongArch::VSHUF4I_H, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3370
  { 9498 /* vshuf4i.w */, LoongArch::VSHUF4I_W, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3371
  { 9508 /* vsigncov.b */, LoongArch::VSIGNCOV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3372
  { 9519 /* vsigncov.d */, LoongArch::VSIGNCOV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3373
  { 9530 /* vsigncov.h */, LoongArch::VSIGNCOV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3374
  { 9541 /* vsigncov.w */, LoongArch::VSIGNCOV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3375
  { 9552 /* vsle.b */, LoongArch::VSLE_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3376
  { 9559 /* vsle.bu */, LoongArch::VSLE_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3377
  { 9567 /* vsle.d */, LoongArch::VSLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3378
  { 9574 /* vsle.du */, LoongArch::VSLE_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3379
  { 9582 /* vsle.h */, LoongArch::VSLE_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3380
  { 9589 /* vsle.hu */, LoongArch::VSLE_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3381
  { 9597 /* vsle.w */, LoongArch::VSLE_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3382
  { 9604 /* vsle.wu */, LoongArch::VSLE_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3383
  { 9612 /* vslei.b */, LoongArch::VSLEI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3384
  { 9620 /* vslei.bu */, LoongArch::VSLEI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3385
  { 9629 /* vslei.d */, LoongArch::VSLEI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3386
  { 9637 /* vslei.du */, LoongArch::VSLEI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3387
  { 9646 /* vslei.h */, LoongArch::VSLEI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3388
  { 9654 /* vslei.hu */, LoongArch::VSLEI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3389
  { 9663 /* vslei.w */, LoongArch::VSLEI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3390
  { 9671 /* vslei.wu */, LoongArch::VSLEI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3391
  { 9680 /* vsll.b */, LoongArch::VSLL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3392
  { 9687 /* vsll.d */, LoongArch::VSLL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3393
  { 9694 /* vsll.h */, LoongArch::VSLL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3394
  { 9701 /* vsll.w */, LoongArch::VSLL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3395
  { 9708 /* vslli.b */, LoongArch::VSLLI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3396
  { 9716 /* vslli.d */, LoongArch::VSLLI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3397
  { 9724 /* vslli.h */, LoongArch::VSLLI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3398
  { 9732 /* vslli.w */, LoongArch::VSLLI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3399
  { 9740 /* vsllwil.d.w */, LoongArch::VSLLWIL_D_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3400
  { 9752 /* vsllwil.du.wu */, LoongArch::VSLLWIL_DU_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3401
  { 9766 /* vsllwil.h.b */, LoongArch::VSLLWIL_H_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3402
  { 9778 /* vsllwil.hu.bu */, LoongArch::VSLLWIL_HU_BU, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3403
  { 9792 /* vsllwil.w.h */, LoongArch::VSLLWIL_W_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3404
  { 9804 /* vsllwil.wu.hu */, LoongArch::VSLLWIL_WU_HU, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3405
  { 9818 /* vslt.b */, LoongArch::VSLT_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3406
  { 9825 /* vslt.bu */, LoongArch::VSLT_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3407
  { 9833 /* vslt.d */, LoongArch::VSLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3408
  { 9840 /* vslt.du */, LoongArch::VSLT_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3409
  { 9848 /* vslt.h */, LoongArch::VSLT_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3410
  { 9855 /* vslt.hu */, LoongArch::VSLT_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3411
  { 9863 /* vslt.w */, LoongArch::VSLT_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3412
  { 9870 /* vslt.wu */, LoongArch::VSLT_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3413
  { 9878 /* vslti.b */, LoongArch::VSLTI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3414
  { 9886 /* vslti.bu */, LoongArch::VSLTI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3415
  { 9895 /* vslti.d */, LoongArch::VSLTI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3416
  { 9903 /* vslti.du */, LoongArch::VSLTI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3417
  { 9912 /* vslti.h */, LoongArch::VSLTI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3418
  { 9920 /* vslti.hu */, LoongArch::VSLTI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3419
  { 9929 /* vslti.w */, LoongArch::VSLTI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_SImm5 }, },
3420
  { 9937 /* vslti.wu */, LoongArch::VSLTI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3421
  { 9946 /* vsra.b */, LoongArch::VSRA_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3422
  { 9953 /* vsra.d */, LoongArch::VSRA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3423
  { 9960 /* vsra.h */, LoongArch::VSRA_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3424
  { 9967 /* vsra.w */, LoongArch::VSRA_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3425
  { 9974 /* vsrai.b */, LoongArch::VSRAI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3426
  { 9982 /* vsrai.d */, LoongArch::VSRAI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3427
  { 9990 /* vsrai.h */, LoongArch::VSRAI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3428
  { 9998 /* vsrai.w */, LoongArch::VSRAI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3429
  { 10006 /* vsran.b.h */, LoongArch::VSRAN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3430
  { 10016 /* vsran.h.w */, LoongArch::VSRAN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3431
  { 10026 /* vsran.w.d */, LoongArch::VSRAN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3432
  { 10036 /* vsrani.b.h */, LoongArch::VSRANI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3433
  { 10047 /* vsrani.d.q */, LoongArch::VSRANI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3434
  { 10058 /* vsrani.h.w */, LoongArch::VSRANI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3435
  { 10069 /* vsrani.w.d */, LoongArch::VSRANI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3436
  { 10080 /* vsrar.b */, LoongArch::VSRAR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3437
  { 10088 /* vsrar.d */, LoongArch::VSRAR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3438
  { 10096 /* vsrar.h */, LoongArch::VSRAR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3439
  { 10104 /* vsrar.w */, LoongArch::VSRAR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3440
  { 10112 /* vsrari.b */, LoongArch::VSRARI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3441
  { 10121 /* vsrari.d */, LoongArch::VSRARI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3442
  { 10130 /* vsrari.h */, LoongArch::VSRARI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3443
  { 10139 /* vsrari.w */, LoongArch::VSRARI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3444
  { 10148 /* vsrarn.b.h */, LoongArch::VSRARN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3445
  { 10159 /* vsrarn.h.w */, LoongArch::VSRARN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3446
  { 10170 /* vsrarn.w.d */, LoongArch::VSRARN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3447
  { 10181 /* vsrarni.b.h */, LoongArch::VSRARNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3448
  { 10193 /* vsrarni.d.q */, LoongArch::VSRARNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3449
  { 10205 /* vsrarni.h.w */, LoongArch::VSRARNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3450
  { 10217 /* vsrarni.w.d */, LoongArch::VSRARNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3451
  { 10229 /* vsrl.b */, LoongArch::VSRL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3452
  { 10236 /* vsrl.d */, LoongArch::VSRL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3453
  { 10243 /* vsrl.h */, LoongArch::VSRL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3454
  { 10250 /* vsrl.w */, LoongArch::VSRL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3455
  { 10257 /* vsrli.b */, LoongArch::VSRLI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3456
  { 10265 /* vsrli.d */, LoongArch::VSRLI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3457
  { 10273 /* vsrli.h */, LoongArch::VSRLI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3458
  { 10281 /* vsrli.w */, LoongArch::VSRLI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3459
  { 10289 /* vsrln.b.h */, LoongArch::VSRLN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3460
  { 10299 /* vsrln.h.w */, LoongArch::VSRLN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3461
  { 10309 /* vsrln.w.d */, LoongArch::VSRLN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3462
  { 10319 /* vsrlni.b.h */, LoongArch::VSRLNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3463
  { 10330 /* vsrlni.d.q */, LoongArch::VSRLNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3464
  { 10341 /* vsrlni.h.w */, LoongArch::VSRLNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3465
  { 10352 /* vsrlni.w.d */, LoongArch::VSRLNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3466
  { 10363 /* vsrlr.b */, LoongArch::VSRLR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3467
  { 10371 /* vsrlr.d */, LoongArch::VSRLR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3468
  { 10379 /* vsrlr.h */, LoongArch::VSRLR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3469
  { 10387 /* vsrlr.w */, LoongArch::VSRLR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3470
  { 10395 /* vsrlri.b */, LoongArch::VSRLRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm3 }, },
3471
  { 10404 /* vsrlri.d */, LoongArch::VSRLRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3472
  { 10413 /* vsrlri.h */, LoongArch::VSRLRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3473
  { 10422 /* vsrlri.w */, LoongArch::VSRLRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3474
  { 10431 /* vsrlrn.b.h */, LoongArch::VSRLRN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3475
  { 10442 /* vsrlrn.h.w */, LoongArch::VSRLRN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3476
  { 10453 /* vsrlrn.w.d */, LoongArch::VSRLRN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3477
  { 10464 /* vsrlrni.b.h */, LoongArch::VSRLRNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3478
  { 10476 /* vsrlrni.d.q */, LoongArch::VSRLRNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3479
  { 10488 /* vsrlrni.h.w */, LoongArch::VSRLRNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3480
  { 10500 /* vsrlrni.w.d */, LoongArch::VSRLRNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3481
  { 10512 /* vssran.b.h */, LoongArch::VSSRAN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3482
  { 10523 /* vssran.bu.h */, LoongArch::VSSRAN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3483
  { 10535 /* vssran.h.w */, LoongArch::VSSRAN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3484
  { 10546 /* vssran.hu.w */, LoongArch::VSSRAN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3485
  { 10558 /* vssran.w.d */, LoongArch::VSSRAN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3486
  { 10569 /* vssran.wu.d */, LoongArch::VSSRAN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3487
  { 10581 /* vssrani.b.h */, LoongArch::VSSRANI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3488
  { 10593 /* vssrani.bu.h */, LoongArch::VSSRANI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3489
  { 10606 /* vssrani.d.q */, LoongArch::VSSRANI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3490
  { 10618 /* vssrani.du.q */, LoongArch::VSSRANI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3491
  { 10631 /* vssrani.h.w */, LoongArch::VSSRANI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3492
  { 10643 /* vssrani.hu.w */, LoongArch::VSSRANI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3493
  { 10656 /* vssrani.w.d */, LoongArch::VSSRANI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3494
  { 10668 /* vssrani.wu.d */, LoongArch::VSSRANI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3495
  { 10681 /* vssrarn.b.h */, LoongArch::VSSRARN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3496
  { 10693 /* vssrarn.bu.h */, LoongArch::VSSRARN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3497
  { 10706 /* vssrarn.h.w */, LoongArch::VSSRARN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3498
  { 10718 /* vssrarn.hu.w */, LoongArch::VSSRARN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3499
  { 10731 /* vssrarn.w.d */, LoongArch::VSSRARN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3500
  { 10743 /* vssrarn.wu.d */, LoongArch::VSSRARN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3501
  { 10756 /* vssrarni.b.h */, LoongArch::VSSRARNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3502
  { 10769 /* vssrarni.bu.h */, LoongArch::VSSRARNI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3503
  { 10783 /* vssrarni.d.q */, LoongArch::VSSRARNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3504
  { 10796 /* vssrarni.du.q */, LoongArch::VSSRARNI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3505
  { 10810 /* vssrarni.h.w */, LoongArch::VSSRARNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3506
  { 10823 /* vssrarni.hu.w */, LoongArch::VSSRARNI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3507
  { 10837 /* vssrarni.w.d */, LoongArch::VSSRARNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3508
  { 10850 /* vssrarni.wu.d */, LoongArch::VSSRARNI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3509
  { 10864 /* vssrln.b.h */, LoongArch::VSSRLN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3510
  { 10875 /* vssrln.bu.h */, LoongArch::VSSRLN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3511
  { 10887 /* vssrln.h.w */, LoongArch::VSSRLN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3512
  { 10898 /* vssrln.hu.w */, LoongArch::VSSRLN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3513
  { 10910 /* vssrln.w.d */, LoongArch::VSSRLN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3514
  { 10921 /* vssrln.wu.d */, LoongArch::VSSRLN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3515
  { 10933 /* vssrlni.b.h */, LoongArch::VSSRLNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3516
  { 10945 /* vssrlni.bu.h */, LoongArch::VSSRLNI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3517
  { 10958 /* vssrlni.d.q */, LoongArch::VSSRLNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3518
  { 10970 /* vssrlni.du.q */, LoongArch::VSSRLNI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3519
  { 10983 /* vssrlni.h.w */, LoongArch::VSSRLNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3520
  { 10995 /* vssrlni.hu.w */, LoongArch::VSSRLNI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3521
  { 11008 /* vssrlni.w.d */, LoongArch::VSSRLNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3522
  { 11020 /* vssrlni.wu.d */, LoongArch::VSSRLNI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3523
  { 11033 /* vssrlrn.b.h */, LoongArch::VSSRLRN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3524
  { 11045 /* vssrlrn.bu.h */, LoongArch::VSSRLRN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3525
  { 11058 /* vssrlrn.h.w */, LoongArch::VSSRLRN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3526
  { 11070 /* vssrlrn.hu.w */, LoongArch::VSSRLRN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3527
  { 11083 /* vssrlrn.w.d */, LoongArch::VSSRLRN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3528
  { 11095 /* vssrlrn.wu.d */, LoongArch::VSSRLRN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3529
  { 11108 /* vssrlrni.b.h */, LoongArch::VSSRLRNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3530
  { 11121 /* vssrlrni.bu.h */, LoongArch::VSSRLRNI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm4 }, },
3531
  { 11135 /* vssrlrni.d.q */, LoongArch::VSSRLRNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3532
  { 11148 /* vssrlrni.du.q */, LoongArch::VSSRLRNI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm7 }, },
3533
  { 11162 /* vssrlrni.h.w */, LoongArch::VSSRLRNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3534
  { 11175 /* vssrlrni.hu.w */, LoongArch::VSSRLRNI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3535
  { 11189 /* vssrlrni.w.d */, LoongArch::VSSRLRNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3536
  { 11202 /* vssrlrni.wu.d */, LoongArch::VSSRLRNI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm6 }, },
3537
  { 11216 /* vssub.b */, LoongArch::VSSUB_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3538
  { 11224 /* vssub.bu */, LoongArch::VSSUB_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3539
  { 11233 /* vssub.d */, LoongArch::VSSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3540
  { 11241 /* vssub.du */, LoongArch::VSSUB_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3541
  { 11250 /* vssub.h */, LoongArch::VSSUB_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3542
  { 11258 /* vssub.hu */, LoongArch::VSSUB_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3543
  { 11267 /* vssub.w */, LoongArch::VSSUB_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3544
  { 11275 /* vssub.wu */, LoongArch::VSSUB_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3545
  { 11284 /* vst */, LoongArch::VST, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm12 }, },
3546
  { 11288 /* vstelm.b */, LoongArch::VSTELM_B, Convert__Reg1_0__Reg1_1__SImm81_2__UImm41_3, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm8, MCK_UImm4 }, },
3547
  { 11297 /* vstelm.d */, LoongArch::VSTELM_D, Convert__Reg1_0__Reg1_1__SImm8lsl31_2__UImm11_3, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm8lsl3, MCK_UImm1 }, },
3548
  { 11306 /* vstelm.h */, LoongArch::VSTELM_H, Convert__Reg1_0__Reg1_1__SImm8lsl11_2__UImm31_3, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm8lsl1, MCK_UImm3 }, },
3549
  { 11315 /* vstelm.w */, LoongArch::VSTELM_W, Convert__Reg1_0__Reg1_1__SImm8lsl21_2__UImm21_3, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_SImm8lsl2, MCK_UImm2 }, },
3550
  { 11324 /* vstx */, LoongArch::VSTX, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_GPR, MCK_GPR }, },
3551
  { 11329 /* vsub.b */, LoongArch::VSUB_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3552
  { 11336 /* vsub.d */, LoongArch::VSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3553
  { 11343 /* vsub.h */, LoongArch::VSUB_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3554
  { 11350 /* vsub.q */, LoongArch::VSUB_Q, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3555
  { 11357 /* vsub.w */, LoongArch::VSUB_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3556
  { 11364 /* vsubi.bu */, LoongArch::VSUBI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3557
  { 11373 /* vsubi.du */, LoongArch::VSUBI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3558
  { 11382 /* vsubi.hu */, LoongArch::VSUBI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3559
  { 11391 /* vsubi.wu */, LoongArch::VSUBI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm5 }, },
3560
  { 11400 /* vsubwev.d.w */, LoongArch::VSUBWEV_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3561
  { 11412 /* vsubwev.d.wu */, LoongArch::VSUBWEV_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3562
  { 11425 /* vsubwev.h.b */, LoongArch::VSUBWEV_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3563
  { 11437 /* vsubwev.h.bu */, LoongArch::VSUBWEV_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3564
  { 11450 /* vsubwev.q.d */, LoongArch::VSUBWEV_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3565
  { 11462 /* vsubwev.q.du */, LoongArch::VSUBWEV_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3566
  { 11475 /* vsubwev.w.h */, LoongArch::VSUBWEV_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3567
  { 11487 /* vsubwev.w.hu */, LoongArch::VSUBWEV_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3568
  { 11500 /* vsubwod.d.w */, LoongArch::VSUBWOD_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3569
  { 11512 /* vsubwod.d.wu */, LoongArch::VSUBWOD_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3570
  { 11525 /* vsubwod.h.b */, LoongArch::VSUBWOD_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3571
  { 11537 /* vsubwod.h.bu */, LoongArch::VSUBWOD_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3572
  { 11550 /* vsubwod.q.d */, LoongArch::VSUBWOD_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3573
  { 11562 /* vsubwod.q.du */, LoongArch::VSUBWOD_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3574
  { 11575 /* vsubwod.w.h */, LoongArch::VSUBWOD_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3575
  { 11587 /* vsubwod.w.hu */, LoongArch::VSUBWOD_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3576
  { 11600 /* vxor.v */, LoongArch::VXOR_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_LSX128 }, },
3577
  { 11607 /* vxori.b */, LoongArch::VXORI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LSX128, MCK_LSX128, MCK_UImm8 }, },
3578
  { 11615 /* x86adc.b */, LoongArch::X86ADC_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3579
  { 11624 /* x86adc.d */, LoongArch::X86ADC_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3580
  { 11633 /* x86adc.h */, LoongArch::X86ADC_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3581
  { 11642 /* x86adc.w */, LoongArch::X86ADC_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3582
  { 11651 /* x86add.b */, LoongArch::X86ADD_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3583
  { 11660 /* x86add.d */, LoongArch::X86ADD_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3584
  { 11669 /* x86add.du */, LoongArch::X86ADD_DU, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3585
  { 11679 /* x86add.h */, LoongArch::X86ADD_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3586
  { 11688 /* x86add.w */, LoongArch::X86ADD_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3587
  { 11697 /* x86add.wu */, LoongArch::X86ADD_WU, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3588
  { 11707 /* x86and.b */, LoongArch::X86AND_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3589
  { 11716 /* x86and.d */, LoongArch::X86AND_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3590
  { 11725 /* x86and.h */, LoongArch::X86AND_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3591
  { 11734 /* x86and.w */, LoongArch::X86AND_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3592
  { 11743 /* x86clrtm */, LoongArch::X86CLRTM, Convert_NoOperands, AMFBS_None, {  }, },
3593
  { 11752 /* x86dec.b */, LoongArch::X86DEC_B, Convert__Reg1_0, AMFBS_None, { MCK_GPR }, },
3594
  { 11761 /* x86dec.d */, LoongArch::X86DEC_D, Convert__Reg1_0, AMFBS_IsLA64, { MCK_GPR }, },
3595
  { 11770 /* x86dec.h */, LoongArch::X86DEC_H, Convert__Reg1_0, AMFBS_None, { MCK_GPR }, },
3596
  { 11779 /* x86dec.w */, LoongArch::X86DEC_W, Convert__Reg1_0, AMFBS_None, { MCK_GPR }, },
3597
  { 11788 /* x86dectop */, LoongArch::X86DECTOP, Convert_NoOperands, AMFBS_None, {  }, },
3598
  { 11798 /* x86inc.b */, LoongArch::X86INC_B, Convert__Reg1_0, AMFBS_None, { MCK_GPR }, },
3599
  { 11807 /* x86inc.d */, LoongArch::X86INC_D, Convert__Reg1_0, AMFBS_IsLA64, { MCK_GPR }, },
3600
  { 11816 /* x86inc.h */, LoongArch::X86INC_H, Convert__Reg1_0, AMFBS_None, { MCK_GPR }, },
3601
  { 11825 /* x86inc.w */, LoongArch::X86INC_W, Convert__Reg1_0, AMFBS_None, { MCK_GPR }, },
3602
  { 11834 /* x86inctop */, LoongArch::X86INCTOP, Convert_NoOperands, AMFBS_None, {  }, },
3603
  { 11844 /* x86mfflag */, LoongArch::X86MFFLAG, Convert__Reg1_0__UImm81_1, AMFBS_None, { MCK_GPR, MCK_UImm8 }, },
3604
  { 11854 /* x86mftop */, LoongArch::X86MFTOP, Convert__Reg1_0, AMFBS_None, { MCK_GPR }, },
3605
  { 11863 /* x86mtflag */, LoongArch::X86MTFLAG, Convert__Reg1_0__UImm81_1, AMFBS_None, { MCK_GPR, MCK_UImm8 }, },
3606
  { 11873 /* x86mttop */, LoongArch::X86MTTOP, Convert__UImm31_0, AMFBS_None, { MCK_UImm3 }, },
3607
  { 11882 /* x86mul.b */, LoongArch::X86MUL_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3608
  { 11891 /* x86mul.bu */, LoongArch::X86MUL_BU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3609
  { 11901 /* x86mul.d */, LoongArch::X86MUL_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3610
  { 11910 /* x86mul.du */, LoongArch::X86MUL_DU, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3611
  { 11920 /* x86mul.h */, LoongArch::X86MUL_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3612
  { 11929 /* x86mul.hu */, LoongArch::X86MUL_HU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3613
  { 11939 /* x86mul.w */, LoongArch::X86MUL_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3614
  { 11948 /* x86mul.wu */, LoongArch::X86MUL_WU, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3615
  { 11958 /* x86or.b */, LoongArch::X86OR_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3616
  { 11966 /* x86or.d */, LoongArch::X86OR_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3617
  { 11974 /* x86or.h */, LoongArch::X86OR_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3618
  { 11982 /* x86or.w */, LoongArch::X86OR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3619
  { 11990 /* x86rcl.b */, LoongArch::X86RCL_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3620
  { 11999 /* x86rcl.d */, LoongArch::X86RCL_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3621
  { 12008 /* x86rcl.h */, LoongArch::X86RCL_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3622
  { 12017 /* x86rcl.w */, LoongArch::X86RCL_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3623
  { 12026 /* x86rcli.b */, LoongArch::X86RCLI_B, Convert__Reg1_0__UImm31_1, AMFBS_None, { MCK_GPR, MCK_UImm3 }, },
3624
  { 12036 /* x86rcli.d */, LoongArch::X86RCLI_D, Convert__Reg1_0__UImm61_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm6 }, },
3625
  { 12046 /* x86rcli.h */, LoongArch::X86RCLI_H, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
3626
  { 12056 /* x86rcli.w */, LoongArch::X86RCLI_W, Convert__Reg1_0__UImm51_1, AMFBS_None, { MCK_GPR, MCK_UImm5 }, },
3627
  { 12066 /* x86rcr.b */, LoongArch::X86RCR_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3628
  { 12075 /* x86rcr.d */, LoongArch::X86RCR_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3629
  { 12084 /* x86rcr.h */, LoongArch::X86RCR_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3630
  { 12093 /* x86rcr.w */, LoongArch::X86RCR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3631
  { 12102 /* x86rcri.b */, LoongArch::X86RCRI_B, Convert__Reg1_0__UImm31_1, AMFBS_None, { MCK_GPR, MCK_UImm3 }, },
3632
  { 12112 /* x86rcri.d */, LoongArch::X86RCRI_D, Convert__Reg1_0__UImm61_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm6 }, },
3633
  { 12122 /* x86rcri.h */, LoongArch::X86RCRI_H, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
3634
  { 12132 /* x86rcri.w */, LoongArch::X86RCRI_W, Convert__Reg1_0__UImm51_1, AMFBS_None, { MCK_GPR, MCK_UImm5 }, },
3635
  { 12142 /* x86rotl.b */, LoongArch::X86ROTL_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3636
  { 12152 /* x86rotl.d */, LoongArch::X86ROTL_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3637
  { 12162 /* x86rotl.h */, LoongArch::X86ROTL_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3638
  { 12172 /* x86rotl.w */, LoongArch::X86ROTL_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3639
  { 12182 /* x86rotli.b */, LoongArch::X86ROTLI_B, Convert__Reg1_0__UImm31_1, AMFBS_None, { MCK_GPR, MCK_UImm3 }, },
3640
  { 12193 /* x86rotli.d */, LoongArch::X86ROTLI_D, Convert__Reg1_0__UImm61_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm6 }, },
3641
  { 12204 /* x86rotli.h */, LoongArch::X86ROTLI_H, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
3642
  { 12215 /* x86rotli.w */, LoongArch::X86ROTLI_W, Convert__Reg1_0__UImm51_1, AMFBS_None, { MCK_GPR, MCK_UImm5 }, },
3643
  { 12226 /* x86rotr.b */, LoongArch::X86ROTR_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3644
  { 12236 /* x86rotr.d */, LoongArch::X86ROTR_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3645
  { 12246 /* x86rotr.h */, LoongArch::X86ROTR_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3646
  { 12256 /* x86rotr.w */, LoongArch::X86ROTR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3647
  { 12266 /* x86rotri.b */, LoongArch::X86ROTRI_B, Convert__Reg1_0__UImm31_1, AMFBS_None, { MCK_GPR, MCK_UImm3 }, },
3648
  { 12277 /* x86rotri.d */, LoongArch::X86ROTRI_D, Convert__Reg1_0__UImm61_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm6 }, },
3649
  { 12288 /* x86rotri.h */, LoongArch::X86ROTRI_H, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
3650
  { 12299 /* x86rotri.w */, LoongArch::X86ROTRI_W, Convert__Reg1_0__UImm51_1, AMFBS_None, { MCK_GPR, MCK_UImm5 }, },
3651
  { 12310 /* x86sbc.b */, LoongArch::X86SBC_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3652
  { 12319 /* x86sbc.d */, LoongArch::X86SBC_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3653
  { 12328 /* x86sbc.h */, LoongArch::X86SBC_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3654
  { 12337 /* x86sbc.w */, LoongArch::X86SBC_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3655
  { 12346 /* x86settag */, LoongArch::X86SETTAG, Convert__Reg1_0__UImm51_1__UImm81_2, AMFBS_None, { MCK_GPR, MCK_UImm5, MCK_UImm8 }, },
3656
  { 12356 /* x86settm */, LoongArch::X86SETTM, Convert_NoOperands, AMFBS_None, {  }, },
3657
  { 12365 /* x86sll.b */, LoongArch::X86SLL_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3658
  { 12374 /* x86sll.d */, LoongArch::X86SLL_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3659
  { 12383 /* x86sll.h */, LoongArch::X86SLL_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3660
  { 12392 /* x86sll.w */, LoongArch::X86SLL_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3661
  { 12401 /* x86slli.b */, LoongArch::X86SLLI_B, Convert__Reg1_0__UImm31_1, AMFBS_None, { MCK_GPR, MCK_UImm3 }, },
3662
  { 12411 /* x86slli.d */, LoongArch::X86SLLI_D, Convert__Reg1_0__UImm61_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm6 }, },
3663
  { 12421 /* x86slli.h */, LoongArch::X86SLLI_H, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
3664
  { 12431 /* x86slli.w */, LoongArch::X86SLLI_W, Convert__Reg1_0__UImm51_1, AMFBS_None, { MCK_GPR, MCK_UImm5 }, },
3665
  { 12441 /* x86sra.b */, LoongArch::X86SRA_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3666
  { 12450 /* x86sra.d */, LoongArch::X86SRA_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3667
  { 12459 /* x86sra.h */, LoongArch::X86SRA_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3668
  { 12468 /* x86sra.w */, LoongArch::X86SRA_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3669
  { 12477 /* x86srai.b */, LoongArch::X86SRAI_B, Convert__Reg1_0__UImm31_1, AMFBS_None, { MCK_GPR, MCK_UImm3 }, },
3670
  { 12487 /* x86srai.d */, LoongArch::X86SRAI_D, Convert__Reg1_0__UImm61_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm6 }, },
3671
  { 12497 /* x86srai.h */, LoongArch::X86SRAI_H, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
3672
  { 12507 /* x86srai.w */, LoongArch::X86SRAI_W, Convert__Reg1_0__UImm51_1, AMFBS_None, { MCK_GPR, MCK_UImm5 }, },
3673
  { 12517 /* x86srl.b */, LoongArch::X86SRL_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3674
  { 12526 /* x86srl.d */, LoongArch::X86SRL_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3675
  { 12535 /* x86srl.h */, LoongArch::X86SRL_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3676
  { 12544 /* x86srl.w */, LoongArch::X86SRL_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3677
  { 12553 /* x86srli.b */, LoongArch::X86SRLI_B, Convert__Reg1_0__UImm31_1, AMFBS_None, { MCK_GPR, MCK_UImm3 }, },
3678
  { 12563 /* x86srli.d */, LoongArch::X86SRLI_D, Convert__Reg1_0__UImm61_1, AMFBS_IsLA64, { MCK_GPR, MCK_UImm6 }, },
3679
  { 12573 /* x86srli.h */, LoongArch::X86SRLI_H, Convert__Reg1_0__UImm41_1, AMFBS_None, { MCK_GPR, MCK_UImm4 }, },
3680
  { 12583 /* x86srli.w */, LoongArch::X86SRLI_W, Convert__Reg1_0__UImm51_1, AMFBS_None, { MCK_GPR, MCK_UImm5 }, },
3681
  { 12593 /* x86sub.b */, LoongArch::X86SUB_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3682
  { 12602 /* x86sub.d */, LoongArch::X86SUB_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3683
  { 12611 /* x86sub.du */, LoongArch::X86SUB_DU, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3684
  { 12621 /* x86sub.h */, LoongArch::X86SUB_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3685
  { 12630 /* x86sub.w */, LoongArch::X86SUB_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3686
  { 12639 /* x86sub.wu */, LoongArch::X86SUB_WU, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3687
  { 12649 /* x86xor.b */, LoongArch::X86XOR_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3688
  { 12658 /* x86xor.d */, LoongArch::X86XOR_D, Convert__Reg1_0__Reg1_1, AMFBS_IsLA64, { MCK_GPR, MCK_GPR }, },
3689
  { 12667 /* x86xor.h */, LoongArch::X86XOR_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3690
  { 12676 /* x86xor.w */, LoongArch::X86XOR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_GPR, MCK_GPR }, },
3691
  { 12685 /* xor */, LoongArch::XOR, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_GPR }, },
3692
  { 12689 /* xori */, LoongArch::XORI, Convert__Reg1_0__Reg1_1__UImm121_2, AMFBS_None, { MCK_GPR, MCK_GPR, MCK_UImm12 }, },
3693
  { 12694 /* xvabsd.b */, LoongArch::XVABSD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3694
  { 12703 /* xvabsd.bu */, LoongArch::XVABSD_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3695
  { 12713 /* xvabsd.d */, LoongArch::XVABSD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3696
  { 12722 /* xvabsd.du */, LoongArch::XVABSD_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3697
  { 12732 /* xvabsd.h */, LoongArch::XVABSD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3698
  { 12741 /* xvabsd.hu */, LoongArch::XVABSD_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3699
  { 12751 /* xvabsd.w */, LoongArch::XVABSD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3700
  { 12760 /* xvabsd.wu */, LoongArch::XVABSD_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3701
  { 12770 /* xvadd.b */, LoongArch::XVADD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3702
  { 12778 /* xvadd.d */, LoongArch::XVADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3703
  { 12786 /* xvadd.h */, LoongArch::XVADD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3704
  { 12794 /* xvadd.q */, LoongArch::XVADD_Q, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3705
  { 12802 /* xvadd.w */, LoongArch::XVADD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3706
  { 12810 /* xvadda.b */, LoongArch::XVADDA_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3707
  { 12819 /* xvadda.d */, LoongArch::XVADDA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3708
  { 12828 /* xvadda.h */, LoongArch::XVADDA_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3709
  { 12837 /* xvadda.w */, LoongArch::XVADDA_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3710
  { 12846 /* xvaddi.bu */, LoongArch::XVADDI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3711
  { 12856 /* xvaddi.du */, LoongArch::XVADDI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3712
  { 12866 /* xvaddi.hu */, LoongArch::XVADDI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3713
  { 12876 /* xvaddi.wu */, LoongArch::XVADDI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3714
  { 12886 /* xvaddwev.d.w */, LoongArch::XVADDWEV_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3715
  { 12899 /* xvaddwev.d.wu */, LoongArch::XVADDWEV_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3716
  { 12913 /* xvaddwev.d.wu.w */, LoongArch::XVADDWEV_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3717
  { 12929 /* xvaddwev.h.b */, LoongArch::XVADDWEV_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3718
  { 12942 /* xvaddwev.h.bu */, LoongArch::XVADDWEV_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3719
  { 12956 /* xvaddwev.h.bu.b */, LoongArch::XVADDWEV_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3720
  { 12972 /* xvaddwev.q.d */, LoongArch::XVADDWEV_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3721
  { 12985 /* xvaddwev.q.du */, LoongArch::XVADDWEV_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3722
  { 12999 /* xvaddwev.q.du.d */, LoongArch::XVADDWEV_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3723
  { 13015 /* xvaddwev.w.h */, LoongArch::XVADDWEV_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3724
  { 13028 /* xvaddwev.w.hu */, LoongArch::XVADDWEV_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3725
  { 13042 /* xvaddwev.w.hu.h */, LoongArch::XVADDWEV_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3726
  { 13058 /* xvaddwod.d.w */, LoongArch::XVADDWOD_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3727
  { 13071 /* xvaddwod.d.wu */, LoongArch::XVADDWOD_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3728
  { 13085 /* xvaddwod.d.wu.w */, LoongArch::XVADDWOD_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3729
  { 13101 /* xvaddwod.h.b */, LoongArch::XVADDWOD_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3730
  { 13114 /* xvaddwod.h.bu */, LoongArch::XVADDWOD_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3731
  { 13128 /* xvaddwod.h.bu.b */, LoongArch::XVADDWOD_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3732
  { 13144 /* xvaddwod.q.d */, LoongArch::XVADDWOD_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3733
  { 13157 /* xvaddwod.q.du */, LoongArch::XVADDWOD_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3734
  { 13171 /* xvaddwod.q.du.d */, LoongArch::XVADDWOD_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3735
  { 13187 /* xvaddwod.w.h */, LoongArch::XVADDWOD_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3736
  { 13200 /* xvaddwod.w.hu */, LoongArch::XVADDWOD_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3737
  { 13214 /* xvaddwod.w.hu.h */, LoongArch::XVADDWOD_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3738
  { 13230 /* xvand.v */, LoongArch::XVAND_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3739
  { 13238 /* xvandi.b */, LoongArch::XVANDI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
3740
  { 13247 /* xvandn.v */, LoongArch::XVANDN_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3741
  { 13256 /* xvavg.b */, LoongArch::XVAVG_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3742
  { 13264 /* xvavg.bu */, LoongArch::XVAVG_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3743
  { 13273 /* xvavg.d */, LoongArch::XVAVG_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3744
  { 13281 /* xvavg.du */, LoongArch::XVAVG_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3745
  { 13290 /* xvavg.h */, LoongArch::XVAVG_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3746
  { 13298 /* xvavg.hu */, LoongArch::XVAVG_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3747
  { 13307 /* xvavg.w */, LoongArch::XVAVG_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3748
  { 13315 /* xvavg.wu */, LoongArch::XVAVG_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3749
  { 13324 /* xvavgr.b */, LoongArch::XVAVGR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3750
  { 13333 /* xvavgr.bu */, LoongArch::XVAVGR_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3751
  { 13343 /* xvavgr.d */, LoongArch::XVAVGR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3752
  { 13352 /* xvavgr.du */, LoongArch::XVAVGR_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3753
  { 13362 /* xvavgr.h */, LoongArch::XVAVGR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3754
  { 13371 /* xvavgr.hu */, LoongArch::XVAVGR_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3755
  { 13381 /* xvavgr.w */, LoongArch::XVAVGR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3756
  { 13390 /* xvavgr.wu */, LoongArch::XVAVGR_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3757
  { 13400 /* xvbitclr.b */, LoongArch::XVBITCLR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3758
  { 13411 /* xvbitclr.d */, LoongArch::XVBITCLR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3759
  { 13422 /* xvbitclr.h */, LoongArch::XVBITCLR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3760
  { 13433 /* xvbitclr.w */, LoongArch::XVBITCLR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3761
  { 13444 /* xvbitclri.b */, LoongArch::XVBITCLRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
3762
  { 13456 /* xvbitclri.d */, LoongArch::XVBITCLRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
3763
  { 13468 /* xvbitclri.h */, LoongArch::XVBITCLRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
3764
  { 13480 /* xvbitclri.w */, LoongArch::XVBITCLRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3765
  { 13492 /* xvbitrev.b */, LoongArch::XVBITREV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3766
  { 13503 /* xvbitrev.d */, LoongArch::XVBITREV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3767
  { 13514 /* xvbitrev.h */, LoongArch::XVBITREV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3768
  { 13525 /* xvbitrev.w */, LoongArch::XVBITREV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3769
  { 13536 /* xvbitrevi.b */, LoongArch::XVBITREVI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
3770
  { 13548 /* xvbitrevi.d */, LoongArch::XVBITREVI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
3771
  { 13560 /* xvbitrevi.h */, LoongArch::XVBITREVI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
3772
  { 13572 /* xvbitrevi.w */, LoongArch::XVBITREVI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3773
  { 13584 /* xvbitsel.v */, LoongArch::XVBITSEL_V, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3774
  { 13595 /* xvbitseli.b */, LoongArch::XVBITSELI_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
3775
  { 13607 /* xvbitset.b */, LoongArch::XVBITSET_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3776
  { 13618 /* xvbitset.d */, LoongArch::XVBITSET_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3777
  { 13629 /* xvbitset.h */, LoongArch::XVBITSET_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3778
  { 13640 /* xvbitset.w */, LoongArch::XVBITSET_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3779
  { 13651 /* xvbitseti.b */, LoongArch::XVBITSETI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
3780
  { 13663 /* xvbitseti.d */, LoongArch::XVBITSETI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
3781
  { 13675 /* xvbitseti.h */, LoongArch::XVBITSETI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
3782
  { 13687 /* xvbitseti.w */, LoongArch::XVBITSETI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3783
  { 13699 /* xvbsll.v */, LoongArch::XVBSLL_V, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3784
  { 13708 /* xvbsrl.v */, LoongArch::XVBSRL_V, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3785
  { 13717 /* xvclo.b */, LoongArch::XVCLO_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3786
  { 13725 /* xvclo.d */, LoongArch::XVCLO_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3787
  { 13733 /* xvclo.h */, LoongArch::XVCLO_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3788
  { 13741 /* xvclo.w */, LoongArch::XVCLO_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3789
  { 13749 /* xvclz.b */, LoongArch::XVCLZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3790
  { 13757 /* xvclz.d */, LoongArch::XVCLZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3791
  { 13765 /* xvclz.h */, LoongArch::XVCLZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3792
  { 13773 /* xvclz.w */, LoongArch::XVCLZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3793
  { 13781 /* xvdiv.b */, LoongArch::XVDIV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3794
  { 13789 /* xvdiv.bu */, LoongArch::XVDIV_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3795
  { 13798 /* xvdiv.d */, LoongArch::XVDIV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3796
  { 13806 /* xvdiv.du */, LoongArch::XVDIV_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3797
  { 13815 /* xvdiv.h */, LoongArch::XVDIV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3798
  { 13823 /* xvdiv.hu */, LoongArch::XVDIV_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3799
  { 13832 /* xvdiv.w */, LoongArch::XVDIV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3800
  { 13840 /* xvdiv.wu */, LoongArch::XVDIV_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3801
  { 13849 /* xvexth.d.w */, LoongArch::XVEXTH_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3802
  { 13860 /* xvexth.du.wu */, LoongArch::XVEXTH_DU_WU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3803
  { 13873 /* xvexth.h.b */, LoongArch::XVEXTH_H_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3804
  { 13884 /* xvexth.hu.bu */, LoongArch::XVEXTH_HU_BU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3805
  { 13897 /* xvexth.q.d */, LoongArch::XVEXTH_Q_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3806
  { 13908 /* xvexth.qu.du */, LoongArch::XVEXTH_QU_DU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3807
  { 13921 /* xvexth.w.h */, LoongArch::XVEXTH_W_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3808
  { 13932 /* xvexth.wu.hu */, LoongArch::XVEXTH_WU_HU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3809
  { 13945 /* xvextl.q.d */, LoongArch::XVEXTL_Q_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3810
  { 13956 /* xvextl.qu.du */, LoongArch::XVEXTL_QU_DU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3811
  { 13969 /* xvextrins.b */, LoongArch::XVEXTRINS_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
3812
  { 13981 /* xvextrins.d */, LoongArch::XVEXTRINS_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
3813
  { 13993 /* xvextrins.h */, LoongArch::XVEXTRINS_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
3814
  { 14005 /* xvextrins.w */, LoongArch::XVEXTRINS_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
3815
  { 14017 /* xvfadd.d */, LoongArch::XVFADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3816
  { 14026 /* xvfadd.s */, LoongArch::XVFADD_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3817
  { 14035 /* xvfclass.d */, LoongArch::XVFCLASS_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3818
  { 14046 /* xvfclass.s */, LoongArch::XVFCLASS_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3819
  { 14057 /* xvfcmp.caf.d */, LoongArch::XVFCMP_CAF_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3820
  { 14070 /* xvfcmp.caf.s */, LoongArch::XVFCMP_CAF_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3821
  { 14083 /* xvfcmp.ceq.d */, LoongArch::XVFCMP_CEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3822
  { 14096 /* xvfcmp.ceq.s */, LoongArch::XVFCMP_CEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3823
  { 14109 /* xvfcmp.cle.d */, LoongArch::XVFCMP_CLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3824
  { 14122 /* xvfcmp.cle.s */, LoongArch::XVFCMP_CLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3825
  { 14135 /* xvfcmp.clt.d */, LoongArch::XVFCMP_CLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3826
  { 14148 /* xvfcmp.clt.s */, LoongArch::XVFCMP_CLT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3827
  { 14161 /* xvfcmp.cne.d */, LoongArch::XVFCMP_CNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3828
  { 14174 /* xvfcmp.cne.s */, LoongArch::XVFCMP_CNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3829
  { 14187 /* xvfcmp.cor.d */, LoongArch::XVFCMP_COR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3830
  { 14200 /* xvfcmp.cor.s */, LoongArch::XVFCMP_COR_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3831
  { 14213 /* xvfcmp.cueq.d */, LoongArch::XVFCMP_CUEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3832
  { 14227 /* xvfcmp.cueq.s */, LoongArch::XVFCMP_CUEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3833
  { 14241 /* xvfcmp.cule.d */, LoongArch::XVFCMP_CULE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3834
  { 14255 /* xvfcmp.cule.s */, LoongArch::XVFCMP_CULE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3835
  { 14269 /* xvfcmp.cult.d */, LoongArch::XVFCMP_CULT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3836
  { 14283 /* xvfcmp.cult.s */, LoongArch::XVFCMP_CULT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3837
  { 14297 /* xvfcmp.cun.d */, LoongArch::XVFCMP_CUN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3838
  { 14310 /* xvfcmp.cun.s */, LoongArch::XVFCMP_CUN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3839
  { 14323 /* xvfcmp.cune.d */, LoongArch::XVFCMP_CUNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3840
  { 14337 /* xvfcmp.cune.s */, LoongArch::XVFCMP_CUNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3841
  { 14351 /* xvfcmp.saf.d */, LoongArch::XVFCMP_SAF_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3842
  { 14364 /* xvfcmp.saf.s */, LoongArch::XVFCMP_SAF_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3843
  { 14377 /* xvfcmp.seq.d */, LoongArch::XVFCMP_SEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3844
  { 14390 /* xvfcmp.seq.s */, LoongArch::XVFCMP_SEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3845
  { 14403 /* xvfcmp.sle.d */, LoongArch::XVFCMP_SLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3846
  { 14416 /* xvfcmp.sle.s */, LoongArch::XVFCMP_SLE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3847
  { 14429 /* xvfcmp.slt.d */, LoongArch::XVFCMP_SLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3848
  { 14442 /* xvfcmp.slt.s */, LoongArch::XVFCMP_SLT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3849
  { 14455 /* xvfcmp.sne.d */, LoongArch::XVFCMP_SNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3850
  { 14468 /* xvfcmp.sne.s */, LoongArch::XVFCMP_SNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3851
  { 14481 /* xvfcmp.sor.d */, LoongArch::XVFCMP_SOR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3852
  { 14494 /* xvfcmp.sor.s */, LoongArch::XVFCMP_SOR_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3853
  { 14507 /* xvfcmp.sueq.d */, LoongArch::XVFCMP_SUEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3854
  { 14521 /* xvfcmp.sueq.s */, LoongArch::XVFCMP_SUEQ_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3855
  { 14535 /* xvfcmp.sule.d */, LoongArch::XVFCMP_SULE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3856
  { 14549 /* xvfcmp.sule.s */, LoongArch::XVFCMP_SULE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3857
  { 14563 /* xvfcmp.sult.d */, LoongArch::XVFCMP_SULT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3858
  { 14577 /* xvfcmp.sult.s */, LoongArch::XVFCMP_SULT_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3859
  { 14591 /* xvfcmp.sun.d */, LoongArch::XVFCMP_SUN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3860
  { 14604 /* xvfcmp.sun.s */, LoongArch::XVFCMP_SUN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3861
  { 14617 /* xvfcmp.sune.d */, LoongArch::XVFCMP_SUNE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3862
  { 14631 /* xvfcmp.sune.s */, LoongArch::XVFCMP_SUNE_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3863
  { 14645 /* xvfcvt.h.s */, LoongArch::XVFCVT_H_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3864
  { 14656 /* xvfcvt.s.d */, LoongArch::XVFCVT_S_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3865
  { 14667 /* xvfcvth.d.s */, LoongArch::XVFCVTH_D_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3866
  { 14679 /* xvfcvth.s.h */, LoongArch::XVFCVTH_S_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3867
  { 14691 /* xvfcvtl.d.s */, LoongArch::XVFCVTL_D_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3868
  { 14703 /* xvfcvtl.s.h */, LoongArch::XVFCVTL_S_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3869
  { 14715 /* xvfdiv.d */, LoongArch::XVFDIV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3870
  { 14724 /* xvfdiv.s */, LoongArch::XVFDIV_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3871
  { 14733 /* xvffint.d.l */, LoongArch::XVFFINT_D_L, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3872
  { 14745 /* xvffint.d.lu */, LoongArch::XVFFINT_D_LU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3873
  { 14758 /* xvffint.s.l */, LoongArch::XVFFINT_S_L, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3874
  { 14770 /* xvffint.s.w */, LoongArch::XVFFINT_S_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3875
  { 14782 /* xvffint.s.wu */, LoongArch::XVFFINT_S_WU, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3876
  { 14795 /* xvffinth.d.w */, LoongArch::XVFFINTH_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3877
  { 14808 /* xvffintl.d.w */, LoongArch::XVFFINTL_D_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3878
  { 14821 /* xvflogb.d */, LoongArch::XVFLOGB_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3879
  { 14831 /* xvflogb.s */, LoongArch::XVFLOGB_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3880
  { 14841 /* xvfmadd.d */, LoongArch::XVFMADD_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3881
  { 14851 /* xvfmadd.s */, LoongArch::XVFMADD_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3882
  { 14861 /* xvfmax.d */, LoongArch::XVFMAX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3883
  { 14870 /* xvfmax.s */, LoongArch::XVFMAX_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3884
  { 14879 /* xvfmaxa.d */, LoongArch::XVFMAXA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3885
  { 14889 /* xvfmaxa.s */, LoongArch::XVFMAXA_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3886
  { 14899 /* xvfmin.d */, LoongArch::XVFMIN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3887
  { 14908 /* xvfmin.s */, LoongArch::XVFMIN_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3888
  { 14917 /* xvfmina.d */, LoongArch::XVFMINA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3889
  { 14927 /* xvfmina.s */, LoongArch::XVFMINA_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3890
  { 14937 /* xvfmsub.d */, LoongArch::XVFMSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3891
  { 14947 /* xvfmsub.s */, LoongArch::XVFMSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3892
  { 14957 /* xvfmul.d */, LoongArch::XVFMUL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3893
  { 14966 /* xvfmul.s */, LoongArch::XVFMUL_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3894
  { 14975 /* xvfnmadd.d */, LoongArch::XVFNMADD_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3895
  { 14986 /* xvfnmadd.s */, LoongArch::XVFNMADD_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3896
  { 14997 /* xvfnmsub.d */, LoongArch::XVFNMSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3897
  { 15008 /* xvfnmsub.s */, LoongArch::XVFNMSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3898
  { 15019 /* xvfrecip.d */, LoongArch::XVFRECIP_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3899
  { 15030 /* xvfrecip.s */, LoongArch::XVFRECIP_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3900
  { 15041 /* xvfrecipe.d */, LoongArch::XVFRECIPE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3901
  { 15053 /* xvfrecipe.s */, LoongArch::XVFRECIPE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3902
  { 15065 /* xvfrint.d */, LoongArch::XVFRINT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3903
  { 15075 /* xvfrint.s */, LoongArch::XVFRINT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3904
  { 15085 /* xvfrintrm.d */, LoongArch::XVFRINTRM_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3905
  { 15097 /* xvfrintrm.s */, LoongArch::XVFRINTRM_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3906
  { 15109 /* xvfrintrne.d */, LoongArch::XVFRINTRNE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3907
  { 15122 /* xvfrintrne.s */, LoongArch::XVFRINTRNE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3908
  { 15135 /* xvfrintrp.d */, LoongArch::XVFRINTRP_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3909
  { 15147 /* xvfrintrp.s */, LoongArch::XVFRINTRP_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3910
  { 15159 /* xvfrintrz.d */, LoongArch::XVFRINTRZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3911
  { 15171 /* xvfrintrz.s */, LoongArch::XVFRINTRZ_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3912
  { 15183 /* xvfrsqrt.d */, LoongArch::XVFRSQRT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3913
  { 15194 /* xvfrsqrt.s */, LoongArch::XVFRSQRT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3914
  { 15205 /* xvfrsqrte.d */, LoongArch::XVFRSQRTE_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3915
  { 15217 /* xvfrsqrte.s */, LoongArch::XVFRSQRTE_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3916
  { 15229 /* xvfrstp.b */, LoongArch::XVFRSTP_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3917
  { 15239 /* xvfrstp.h */, LoongArch::XVFRSTP_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3918
  { 15249 /* xvfrstpi.b */, LoongArch::XVFRSTPI_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3919
  { 15260 /* xvfrstpi.h */, LoongArch::XVFRSTPI_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3920
  { 15271 /* xvfsqrt.d */, LoongArch::XVFSQRT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3921
  { 15281 /* xvfsqrt.s */, LoongArch::XVFSQRT_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3922
  { 15291 /* xvfsub.d */, LoongArch::XVFSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3923
  { 15300 /* xvfsub.s */, LoongArch::XVFSUB_S, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3924
  { 15309 /* xvftint.l.d */, LoongArch::XVFTINT_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3925
  { 15321 /* xvftint.lu.d */, LoongArch::XVFTINT_LU_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3926
  { 15334 /* xvftint.w.d */, LoongArch::XVFTINT_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3927
  { 15346 /* xvftint.w.s */, LoongArch::XVFTINT_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3928
  { 15358 /* xvftint.wu.s */, LoongArch::XVFTINT_WU_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3929
  { 15371 /* xvftinth.l.s */, LoongArch::XVFTINTH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3930
  { 15384 /* xvftintl.l.s */, LoongArch::XVFTINTL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3931
  { 15397 /* xvftintrm.l.d */, LoongArch::XVFTINTRM_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3932
  { 15411 /* xvftintrm.w.d */, LoongArch::XVFTINTRM_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3933
  { 15425 /* xvftintrm.w.s */, LoongArch::XVFTINTRM_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3934
  { 15439 /* xvftintrmh.l.s */, LoongArch::XVFTINTRMH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3935
  { 15454 /* xvftintrml.l.s */, LoongArch::XVFTINTRML_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3936
  { 15469 /* xvftintrne.l.d */, LoongArch::XVFTINTRNE_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3937
  { 15484 /* xvftintrne.w.d */, LoongArch::XVFTINTRNE_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3938
  { 15499 /* xvftintrne.w.s */, LoongArch::XVFTINTRNE_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3939
  { 15514 /* xvftintrneh.l.s */, LoongArch::XVFTINTRNEH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3940
  { 15530 /* xvftintrnel.l.s */, LoongArch::XVFTINTRNEL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3941
  { 15546 /* xvftintrp.l.d */, LoongArch::XVFTINTRP_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3942
  { 15560 /* xvftintrp.w.d */, LoongArch::XVFTINTRP_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3943
  { 15574 /* xvftintrp.w.s */, LoongArch::XVFTINTRP_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3944
  { 15588 /* xvftintrph.l.s */, LoongArch::XVFTINTRPH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3945
  { 15603 /* xvftintrpl.l.s */, LoongArch::XVFTINTRPL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3946
  { 15618 /* xvftintrz.l.d */, LoongArch::XVFTINTRZ_L_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3947
  { 15632 /* xvftintrz.lu.d */, LoongArch::XVFTINTRZ_LU_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3948
  { 15647 /* xvftintrz.w.d */, LoongArch::XVFTINTRZ_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3949
  { 15661 /* xvftintrz.w.s */, LoongArch::XVFTINTRZ_W_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3950
  { 15675 /* xvftintrz.wu.s */, LoongArch::XVFTINTRZ_WU_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3951
  { 15690 /* xvftintrzh.l.s */, LoongArch::XVFTINTRZH_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3952
  { 15705 /* xvftintrzl.l.s */, LoongArch::XVFTINTRZL_L_S, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
3953
  { 15720 /* xvhaddw.d.w */, LoongArch::XVHADDW_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3954
  { 15732 /* xvhaddw.du.wu */, LoongArch::XVHADDW_DU_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3955
  { 15746 /* xvhaddw.h.b */, LoongArch::XVHADDW_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3956
  { 15758 /* xvhaddw.hu.bu */, LoongArch::XVHADDW_HU_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3957
  { 15772 /* xvhaddw.q.d */, LoongArch::XVHADDW_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3958
  { 15784 /* xvhaddw.qu.du */, LoongArch::XVHADDW_QU_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3959
  { 15798 /* xvhaddw.w.h */, LoongArch::XVHADDW_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3960
  { 15810 /* xvhaddw.wu.hu */, LoongArch::XVHADDW_WU_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3961
  { 15824 /* xvhseli.d */, LoongArch::XVHSELI_D, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
3962
  { 15834 /* xvhsubw.d.w */, LoongArch::XVHSUBW_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3963
  { 15846 /* xvhsubw.du.wu */, LoongArch::XVHSUBW_DU_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3964
  { 15860 /* xvhsubw.h.b */, LoongArch::XVHSUBW_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3965
  { 15872 /* xvhsubw.hu.bu */, LoongArch::XVHSUBW_HU_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3966
  { 15886 /* xvhsubw.q.d */, LoongArch::XVHSUBW_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3967
  { 15898 /* xvhsubw.qu.du */, LoongArch::XVHSUBW_QU_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3968
  { 15912 /* xvhsubw.w.h */, LoongArch::XVHSUBW_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3969
  { 15924 /* xvhsubw.wu.hu */, LoongArch::XVHSUBW_WU_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3970
  { 15938 /* xvilvh.b */, LoongArch::XVILVH_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3971
  { 15947 /* xvilvh.d */, LoongArch::XVILVH_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3972
  { 15956 /* xvilvh.h */, LoongArch::XVILVH_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3973
  { 15965 /* xvilvh.w */, LoongArch::XVILVH_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3974
  { 15974 /* xvilvl.b */, LoongArch::XVILVL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3975
  { 15983 /* xvilvl.d */, LoongArch::XVILVL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3976
  { 15992 /* xvilvl.h */, LoongArch::XVILVL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3977
  { 16001 /* xvilvl.w */, LoongArch::XVILVL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3978
  { 16010 /* xvinsgr2vr.d */, LoongArch::XVINSGR2VR_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm21_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_UImm2 }, },
3979
  { 16023 /* xvinsgr2vr.w */, LoongArch::XVINSGR2VR_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_UImm3 }, },
3980
  { 16036 /* xvinsve0.d */, LoongArch::XVINSVE0_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm21_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm2 }, },
3981
  { 16047 /* xvinsve0.w */, LoongArch::XVINSVE0_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
3982
  { 16058 /* xvld */, LoongArch::XVLD, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm12 }, },
3983
  { 16063 /* xvldi */, LoongArch::XVLDI, Convert__Reg1_0__SImm131_1, AMFBS_None, { MCK_LASX256, MCK_SImm13 }, },
3984
  { 16069 /* xvldrepl.b */, LoongArch::XVLDREPL_B, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm12 }, },
3985
  { 16080 /* xvldrepl.d */, LoongArch::XVLDREPL_D, Convert__Reg1_0__Reg1_1__SImm9lsl31_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm9lsl3 }, },
3986
  { 16091 /* xvldrepl.h */, LoongArch::XVLDREPL_H, Convert__Reg1_0__Reg1_1__SImm11lsl11_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm11lsl1 }, },
3987
  { 16102 /* xvldrepl.w */, LoongArch::XVLDREPL_W, Convert__Reg1_0__Reg1_1__SImm10lsl21_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm10lsl2 }, },
3988
  { 16113 /* xvldx */, LoongArch::XVLDX, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_GPR }, },
3989
  { 16119 /* xvmadd.b */, LoongArch::XVMADD_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3990
  { 16128 /* xvmadd.d */, LoongArch::XVMADD_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3991
  { 16137 /* xvmadd.h */, LoongArch::XVMADD_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3992
  { 16146 /* xvmadd.w */, LoongArch::XVMADD_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3993
  { 16155 /* xvmaddwev.d.w */, LoongArch::XVMADDWEV_D_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3994
  { 16169 /* xvmaddwev.d.wu */, LoongArch::XVMADDWEV_D_WU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3995
  { 16184 /* xvmaddwev.d.wu.w */, LoongArch::XVMADDWEV_D_WU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3996
  { 16201 /* xvmaddwev.h.b */, LoongArch::XVMADDWEV_H_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3997
  { 16215 /* xvmaddwev.h.bu */, LoongArch::XVMADDWEV_H_BU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3998
  { 16230 /* xvmaddwev.h.bu.b */, LoongArch::XVMADDWEV_H_BU_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
3999
  { 16247 /* xvmaddwev.q.d */, LoongArch::XVMADDWEV_Q_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4000
  { 16261 /* xvmaddwev.q.du */, LoongArch::XVMADDWEV_Q_DU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4001
  { 16276 /* xvmaddwev.q.du.d */, LoongArch::XVMADDWEV_Q_DU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4002
  { 16293 /* xvmaddwev.w.h */, LoongArch::XVMADDWEV_W_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4003
  { 16307 /* xvmaddwev.w.hu */, LoongArch::XVMADDWEV_W_HU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4004
  { 16322 /* xvmaddwev.w.hu.h */, LoongArch::XVMADDWEV_W_HU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4005
  { 16339 /* xvmaddwod.d.w */, LoongArch::XVMADDWOD_D_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4006
  { 16353 /* xvmaddwod.d.wu */, LoongArch::XVMADDWOD_D_WU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4007
  { 16368 /* xvmaddwod.d.wu.w */, LoongArch::XVMADDWOD_D_WU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4008
  { 16385 /* xvmaddwod.h.b */, LoongArch::XVMADDWOD_H_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4009
  { 16399 /* xvmaddwod.h.bu */, LoongArch::XVMADDWOD_H_BU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4010
  { 16414 /* xvmaddwod.h.bu.b */, LoongArch::XVMADDWOD_H_BU_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4011
  { 16431 /* xvmaddwod.q.d */, LoongArch::XVMADDWOD_Q_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4012
  { 16445 /* xvmaddwod.q.du */, LoongArch::XVMADDWOD_Q_DU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4013
  { 16460 /* xvmaddwod.q.du.d */, LoongArch::XVMADDWOD_Q_DU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4014
  { 16477 /* xvmaddwod.w.h */, LoongArch::XVMADDWOD_W_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4015
  { 16491 /* xvmaddwod.w.hu */, LoongArch::XVMADDWOD_W_HU, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4016
  { 16506 /* xvmaddwod.w.hu.h */, LoongArch::XVMADDWOD_W_HU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4017
  { 16523 /* xvmax.b */, LoongArch::XVMAX_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4018
  { 16531 /* xvmax.bu */, LoongArch::XVMAX_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4019
  { 16540 /* xvmax.d */, LoongArch::XVMAX_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4020
  { 16548 /* xvmax.du */, LoongArch::XVMAX_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4021
  { 16557 /* xvmax.h */, LoongArch::XVMAX_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4022
  { 16565 /* xvmax.hu */, LoongArch::XVMAX_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4023
  { 16574 /* xvmax.w */, LoongArch::XVMAX_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4024
  { 16582 /* xvmax.wu */, LoongArch::XVMAX_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4025
  { 16591 /* xvmaxi.b */, LoongArch::XVMAXI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4026
  { 16600 /* xvmaxi.bu */, LoongArch::XVMAXI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4027
  { 16610 /* xvmaxi.d */, LoongArch::XVMAXI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4028
  { 16619 /* xvmaxi.du */, LoongArch::XVMAXI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4029
  { 16629 /* xvmaxi.h */, LoongArch::XVMAXI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4030
  { 16638 /* xvmaxi.hu */, LoongArch::XVMAXI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4031
  { 16648 /* xvmaxi.w */, LoongArch::XVMAXI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4032
  { 16657 /* xvmaxi.wu */, LoongArch::XVMAXI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4033
  { 16667 /* xvmin.b */, LoongArch::XVMIN_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4034
  { 16675 /* xvmin.bu */, LoongArch::XVMIN_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4035
  { 16684 /* xvmin.d */, LoongArch::XVMIN_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4036
  { 16692 /* xvmin.du */, LoongArch::XVMIN_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4037
  { 16701 /* xvmin.h */, LoongArch::XVMIN_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4038
  { 16709 /* xvmin.hu */, LoongArch::XVMIN_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4039
  { 16718 /* xvmin.w */, LoongArch::XVMIN_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4040
  { 16726 /* xvmin.wu */, LoongArch::XVMIN_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4041
  { 16735 /* xvmini.b */, LoongArch::XVMINI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4042
  { 16744 /* xvmini.bu */, LoongArch::XVMINI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4043
  { 16754 /* xvmini.d */, LoongArch::XVMINI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4044
  { 16763 /* xvmini.du */, LoongArch::XVMINI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4045
  { 16773 /* xvmini.h */, LoongArch::XVMINI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4046
  { 16782 /* xvmini.hu */, LoongArch::XVMINI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4047
  { 16792 /* xvmini.w */, LoongArch::XVMINI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4048
  { 16801 /* xvmini.wu */, LoongArch::XVMINI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4049
  { 16811 /* xvmod.b */, LoongArch::XVMOD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4050
  { 16819 /* xvmod.bu */, LoongArch::XVMOD_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4051
  { 16828 /* xvmod.d */, LoongArch::XVMOD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4052
  { 16836 /* xvmod.du */, LoongArch::XVMOD_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4053
  { 16845 /* xvmod.h */, LoongArch::XVMOD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4054
  { 16853 /* xvmod.hu */, LoongArch::XVMOD_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4055
  { 16862 /* xvmod.w */, LoongArch::XVMOD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4056
  { 16870 /* xvmod.wu */, LoongArch::XVMOD_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4057
  { 16879 /* xvmskgez.b */, LoongArch::XVMSKGEZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4058
  { 16890 /* xvmskltz.b */, LoongArch::XVMSKLTZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4059
  { 16901 /* xvmskltz.d */, LoongArch::XVMSKLTZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4060
  { 16912 /* xvmskltz.h */, LoongArch::XVMSKLTZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4061
  { 16923 /* xvmskltz.w */, LoongArch::XVMSKLTZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4062
  { 16934 /* xvmsknz.b */, LoongArch::XVMSKNZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4063
  { 16944 /* xvmsub.b */, LoongArch::XVMSUB_B, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4064
  { 16953 /* xvmsub.d */, LoongArch::XVMSUB_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4065
  { 16962 /* xvmsub.h */, LoongArch::XVMSUB_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4066
  { 16971 /* xvmsub.w */, LoongArch::XVMSUB_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4067
  { 16980 /* xvmuh.b */, LoongArch::XVMUH_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4068
  { 16988 /* xvmuh.bu */, LoongArch::XVMUH_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4069
  { 16997 /* xvmuh.d */, LoongArch::XVMUH_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4070
  { 17005 /* xvmuh.du */, LoongArch::XVMUH_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4071
  { 17014 /* xvmuh.h */, LoongArch::XVMUH_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4072
  { 17022 /* xvmuh.hu */, LoongArch::XVMUH_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4073
  { 17031 /* xvmuh.w */, LoongArch::XVMUH_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4074
  { 17039 /* xvmuh.wu */, LoongArch::XVMUH_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4075
  { 17048 /* xvmul.b */, LoongArch::XVMUL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4076
  { 17056 /* xvmul.d */, LoongArch::XVMUL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4077
  { 17064 /* xvmul.h */, LoongArch::XVMUL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4078
  { 17072 /* xvmul.w */, LoongArch::XVMUL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4079
  { 17080 /* xvmulwev.d.w */, LoongArch::XVMULWEV_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4080
  { 17093 /* xvmulwev.d.wu */, LoongArch::XVMULWEV_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4081
  { 17107 /* xvmulwev.d.wu.w */, LoongArch::XVMULWEV_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4082
  { 17123 /* xvmulwev.h.b */, LoongArch::XVMULWEV_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4083
  { 17136 /* xvmulwev.h.bu */, LoongArch::XVMULWEV_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4084
  { 17150 /* xvmulwev.h.bu.b */, LoongArch::XVMULWEV_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4085
  { 17166 /* xvmulwev.q.d */, LoongArch::XVMULWEV_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4086
  { 17179 /* xvmulwev.q.du */, LoongArch::XVMULWEV_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4087
  { 17193 /* xvmulwev.q.du.d */, LoongArch::XVMULWEV_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4088
  { 17209 /* xvmulwev.w.h */, LoongArch::XVMULWEV_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4089
  { 17222 /* xvmulwev.w.hu */, LoongArch::XVMULWEV_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4090
  { 17236 /* xvmulwev.w.hu.h */, LoongArch::XVMULWEV_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4091
  { 17252 /* xvmulwod.d.w */, LoongArch::XVMULWOD_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4092
  { 17265 /* xvmulwod.d.wu */, LoongArch::XVMULWOD_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4093
  { 17279 /* xvmulwod.d.wu.w */, LoongArch::XVMULWOD_D_WU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4094
  { 17295 /* xvmulwod.h.b */, LoongArch::XVMULWOD_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4095
  { 17308 /* xvmulwod.h.bu */, LoongArch::XVMULWOD_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4096
  { 17322 /* xvmulwod.h.bu.b */, LoongArch::XVMULWOD_H_BU_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4097
  { 17338 /* xvmulwod.q.d */, LoongArch::XVMULWOD_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4098
  { 17351 /* xvmulwod.q.du */, LoongArch::XVMULWOD_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4099
  { 17365 /* xvmulwod.q.du.d */, LoongArch::XVMULWOD_Q_DU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4100
  { 17381 /* xvmulwod.w.h */, LoongArch::XVMULWOD_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4101
  { 17394 /* xvmulwod.w.hu */, LoongArch::XVMULWOD_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4102
  { 17408 /* xvmulwod.w.hu.h */, LoongArch::XVMULWOD_W_HU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4103
  { 17424 /* xvneg.b */, LoongArch::XVNEG_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4104
  { 17432 /* xvneg.d */, LoongArch::XVNEG_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4105
  { 17440 /* xvneg.h */, LoongArch::XVNEG_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4106
  { 17448 /* xvneg.w */, LoongArch::XVNEG_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4107
  { 17456 /* xvnor.v */, LoongArch::XVNOR_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4108
  { 17464 /* xvnori.b */, LoongArch::XVNORI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4109
  { 17473 /* xvor.v */, LoongArch::XVOR_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4110
  { 17480 /* xvori.b */, LoongArch::XVORI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4111
  { 17488 /* xvorn.v */, LoongArch::XVORN_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4112
  { 17496 /* xvpackev.b */, LoongArch::XVPACKEV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4113
  { 17507 /* xvpackev.d */, LoongArch::XVPACKEV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4114
  { 17518 /* xvpackev.h */, LoongArch::XVPACKEV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4115
  { 17529 /* xvpackev.w */, LoongArch::XVPACKEV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4116
  { 17540 /* xvpackod.b */, LoongArch::XVPACKOD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4117
  { 17551 /* xvpackod.d */, LoongArch::XVPACKOD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4118
  { 17562 /* xvpackod.h */, LoongArch::XVPACKOD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4119
  { 17573 /* xvpackod.w */, LoongArch::XVPACKOD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4120
  { 17584 /* xvpcnt.b */, LoongArch::XVPCNT_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4121
  { 17593 /* xvpcnt.d */, LoongArch::XVPCNT_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4122
  { 17602 /* xvpcnt.h */, LoongArch::XVPCNT_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4123
  { 17611 /* xvpcnt.w */, LoongArch::XVPCNT_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4124
  { 17620 /* xvperm.w */, LoongArch::XVPERM_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4125
  { 17629 /* xvpermi.d */, LoongArch::XVPERMI_D, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4126
  { 17639 /* xvpermi.q */, LoongArch::XVPERMI_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4127
  { 17649 /* xvpermi.w */, LoongArch::XVPERMI_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4128
  { 17659 /* xvpickev.b */, LoongArch::XVPICKEV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4129
  { 17670 /* xvpickev.d */, LoongArch::XVPICKEV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4130
  { 17681 /* xvpickev.h */, LoongArch::XVPICKEV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4131
  { 17692 /* xvpickev.w */, LoongArch::XVPICKEV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4132
  { 17703 /* xvpickod.b */, LoongArch::XVPICKOD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4133
  { 17714 /* xvpickod.d */, LoongArch::XVPICKOD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4134
  { 17725 /* xvpickod.h */, LoongArch::XVPICKOD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4135
  { 17736 /* xvpickod.w */, LoongArch::XVPICKOD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4136
  { 17747 /* xvpickve.d */, LoongArch::XVPICKVE_D, Convert__Reg1_0__Reg1_1__UImm21_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm2 }, },
4137
  { 17758 /* xvpickve.w */, LoongArch::XVPICKVE_W, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4138
  { 17769 /* xvpickve2gr.d */, LoongArch::XVPICKVE2GR_D, Convert__Reg1_0__Reg1_1__UImm21_2, AMFBS_None, { MCK_GPR, MCK_LASX256, MCK_UImm2 }, },
4139
  { 17783 /* xvpickve2gr.du */, LoongArch::XVPICKVE2GR_DU, Convert__Reg1_0__Reg1_1__UImm21_2, AMFBS_None, { MCK_GPR, MCK_LASX256, MCK_UImm2 }, },
4140
  { 17798 /* xvpickve2gr.w */, LoongArch::XVPICKVE2GR_W, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_GPR, MCK_LASX256, MCK_UImm3 }, },
4141
  { 17812 /* xvpickve2gr.wu */, LoongArch::XVPICKVE2GR_WU, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_GPR, MCK_LASX256, MCK_UImm3 }, },
4142
  { 17827 /* xvrepl128vei.b */, LoongArch::XVREPL128VEI_B, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4143
  { 17842 /* xvrepl128vei.d */, LoongArch::XVREPL128VEI_D, Convert__Reg1_0__Reg1_1__UImm11_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm1 }, },
4144
  { 17857 /* xvrepl128vei.h */, LoongArch::XVREPL128VEI_H, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4145
  { 17872 /* xvrepl128vei.w */, LoongArch::XVREPL128VEI_W, Convert__Reg1_0__Reg1_1__UImm21_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm2 }, },
4146
  { 17887 /* xvreplgr2vr.b */, LoongArch::XVREPLGR2VR_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_GPR }, },
4147
  { 17901 /* xvreplgr2vr.d */, LoongArch::XVREPLGR2VR_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_GPR }, },
4148
  { 17915 /* xvreplgr2vr.h */, LoongArch::XVREPLGR2VR_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_GPR }, },
4149
  { 17929 /* xvreplgr2vr.w */, LoongArch::XVREPLGR2VR_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_GPR }, },
4150
  { 17943 /* xvrepli.b */, LoongArch::PseudoXVREPLI_B, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LASX256, MCK_SImm10 }, },
4151
  { 17953 /* xvrepli.d */, LoongArch::PseudoXVREPLI_D, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LASX256, MCK_SImm10 }, },
4152
  { 17963 /* xvrepli.h */, LoongArch::PseudoXVREPLI_H, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LASX256, MCK_SImm10 }, },
4153
  { 17973 /* xvrepli.w */, LoongArch::PseudoXVREPLI_W, Convert__Reg1_0__SImm101_1, AMFBS_None, { MCK_LASX256, MCK_SImm10 }, },
4154
  { 17983 /* xvreplve.b */, LoongArch::XVREPLVE_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_GPR }, },
4155
  { 17994 /* xvreplve.d */, LoongArch::XVREPLVE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_GPR }, },
4156
  { 18005 /* xvreplve.h */, LoongArch::XVREPLVE_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_GPR }, },
4157
  { 18016 /* xvreplve.w */, LoongArch::XVREPLVE_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_GPR }, },
4158
  { 18027 /* xvreplve0.b */, LoongArch::XVREPLVE0_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4159
  { 18039 /* xvreplve0.d */, LoongArch::XVREPLVE0_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4160
  { 18051 /* xvreplve0.h */, LoongArch::XVREPLVE0_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4161
  { 18063 /* xvreplve0.q */, LoongArch::XVREPLVE0_Q, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4162
  { 18075 /* xvreplve0.w */, LoongArch::XVREPLVE0_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_LASX256, MCK_LASX256 }, },
4163
  { 18087 /* xvrotr.b */, LoongArch::XVROTR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4164
  { 18096 /* xvrotr.d */, LoongArch::XVROTR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4165
  { 18105 /* xvrotr.h */, LoongArch::XVROTR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4166
  { 18114 /* xvrotr.w */, LoongArch::XVROTR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4167
  { 18123 /* xvrotri.b */, LoongArch::XVROTRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4168
  { 18133 /* xvrotri.d */, LoongArch::XVROTRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4169
  { 18143 /* xvrotri.h */, LoongArch::XVROTRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4170
  { 18153 /* xvrotri.w */, LoongArch::XVROTRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4171
  { 18163 /* xvsadd.b */, LoongArch::XVSADD_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4172
  { 18172 /* xvsadd.bu */, LoongArch::XVSADD_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4173
  { 18182 /* xvsadd.d */, LoongArch::XVSADD_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4174
  { 18191 /* xvsadd.du */, LoongArch::XVSADD_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4175
  { 18201 /* xvsadd.h */, LoongArch::XVSADD_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4176
  { 18210 /* xvsadd.hu */, LoongArch::XVSADD_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4177
  { 18220 /* xvsadd.w */, LoongArch::XVSADD_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4178
  { 18229 /* xvsadd.wu */, LoongArch::XVSADD_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4179
  { 18239 /* xvsat.b */, LoongArch::XVSAT_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4180
  { 18247 /* xvsat.bu */, LoongArch::XVSAT_BU, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4181
  { 18256 /* xvsat.d */, LoongArch::XVSAT_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4182
  { 18264 /* xvsat.du */, LoongArch::XVSAT_DU, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4183
  { 18273 /* xvsat.h */, LoongArch::XVSAT_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4184
  { 18281 /* xvsat.hu */, LoongArch::XVSAT_HU, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4185
  { 18290 /* xvsat.w */, LoongArch::XVSAT_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4186
  { 18298 /* xvsat.wu */, LoongArch::XVSAT_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4187
  { 18307 /* xvseq.b */, LoongArch::XVSEQ_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4188
  { 18315 /* xvseq.d */, LoongArch::XVSEQ_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4189
  { 18323 /* xvseq.h */, LoongArch::XVSEQ_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4190
  { 18331 /* xvseq.w */, LoongArch::XVSEQ_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4191
  { 18339 /* xvseqi.b */, LoongArch::XVSEQI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4192
  { 18348 /* xvseqi.d */, LoongArch::XVSEQI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4193
  { 18357 /* xvseqi.h */, LoongArch::XVSEQI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4194
  { 18366 /* xvseqi.w */, LoongArch::XVSEQI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4195
  { 18375 /* xvsetallnez.b */, LoongArch::XVSETALLNEZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4196
  { 18389 /* xvsetallnez.d */, LoongArch::XVSETALLNEZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4197
  { 18403 /* xvsetallnez.h */, LoongArch::XVSETALLNEZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4198
  { 18417 /* xvsetallnez.w */, LoongArch::XVSETALLNEZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4199
  { 18431 /* xvsetanyeqz.b */, LoongArch::XVSETANYEQZ_B, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4200
  { 18445 /* xvsetanyeqz.d */, LoongArch::XVSETANYEQZ_D, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4201
  { 18459 /* xvsetanyeqz.h */, LoongArch::XVSETANYEQZ_H, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4202
  { 18473 /* xvsetanyeqz.w */, LoongArch::XVSETANYEQZ_W, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4203
  { 18487 /* xvseteqz.v */, LoongArch::XVSETEQZ_V, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4204
  { 18498 /* xvsetnez.v */, LoongArch::XVSETNEZ_V, Convert__Reg1_0__Reg1_1, AMFBS_None, { MCK_CFR, MCK_LASX256 }, },
4205
  { 18509 /* xvshuf.b */, LoongArch::XVSHUF_B, Convert__Reg1_0__Reg1_1__Reg1_2__Reg1_3, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4206
  { 18518 /* xvshuf.d */, LoongArch::XVSHUF_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4207
  { 18527 /* xvshuf.h */, LoongArch::XVSHUF_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4208
  { 18536 /* xvshuf.w */, LoongArch::XVSHUF_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4209
  { 18545 /* xvshuf4i.b */, LoongArch::XVSHUF4I_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4210
  { 18556 /* xvshuf4i.d */, LoongArch::XVSHUF4I_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4211
  { 18567 /* xvshuf4i.h */, LoongArch::XVSHUF4I_H, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4212
  { 18578 /* xvshuf4i.w */, LoongArch::XVSHUF4I_W, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4213
  { 18589 /* xvsigncov.b */, LoongArch::XVSIGNCOV_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4214
  { 18601 /* xvsigncov.d */, LoongArch::XVSIGNCOV_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4215
  { 18613 /* xvsigncov.h */, LoongArch::XVSIGNCOV_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4216
  { 18625 /* xvsigncov.w */, LoongArch::XVSIGNCOV_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4217
  { 18637 /* xvsle.b */, LoongArch::XVSLE_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4218
  { 18645 /* xvsle.bu */, LoongArch::XVSLE_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4219
  { 18654 /* xvsle.d */, LoongArch::XVSLE_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4220
  { 18662 /* xvsle.du */, LoongArch::XVSLE_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4221
  { 18671 /* xvsle.h */, LoongArch::XVSLE_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4222
  { 18679 /* xvsle.hu */, LoongArch::XVSLE_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4223
  { 18688 /* xvsle.w */, LoongArch::XVSLE_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4224
  { 18696 /* xvsle.wu */, LoongArch::XVSLE_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4225
  { 18705 /* xvslei.b */, LoongArch::XVSLEI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4226
  { 18714 /* xvslei.bu */, LoongArch::XVSLEI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4227
  { 18724 /* xvslei.d */, LoongArch::XVSLEI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4228
  { 18733 /* xvslei.du */, LoongArch::XVSLEI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4229
  { 18743 /* xvslei.h */, LoongArch::XVSLEI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4230
  { 18752 /* xvslei.hu */, LoongArch::XVSLEI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4231
  { 18762 /* xvslei.w */, LoongArch::XVSLEI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4232
  { 18771 /* xvslei.wu */, LoongArch::XVSLEI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4233
  { 18781 /* xvsll.b */, LoongArch::XVSLL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4234
  { 18789 /* xvsll.d */, LoongArch::XVSLL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4235
  { 18797 /* xvsll.h */, LoongArch::XVSLL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4236
  { 18805 /* xvsll.w */, LoongArch::XVSLL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4237
  { 18813 /* xvslli.b */, LoongArch::XVSLLI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4238
  { 18822 /* xvslli.d */, LoongArch::XVSLLI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4239
  { 18831 /* xvslli.h */, LoongArch::XVSLLI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4240
  { 18840 /* xvslli.w */, LoongArch::XVSLLI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4241
  { 18849 /* xvsllwil.d.w */, LoongArch::XVSLLWIL_D_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4242
  { 18862 /* xvsllwil.du.wu */, LoongArch::XVSLLWIL_DU_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4243
  { 18877 /* xvsllwil.h.b */, LoongArch::XVSLLWIL_H_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4244
  { 18890 /* xvsllwil.hu.bu */, LoongArch::XVSLLWIL_HU_BU, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4245
  { 18905 /* xvsllwil.w.h */, LoongArch::XVSLLWIL_W_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4246
  { 18918 /* xvsllwil.wu.hu */, LoongArch::XVSLLWIL_WU_HU, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4247
  { 18933 /* xvslt.b */, LoongArch::XVSLT_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4248
  { 18941 /* xvslt.bu */, LoongArch::XVSLT_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4249
  { 18950 /* xvslt.d */, LoongArch::XVSLT_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4250
  { 18958 /* xvslt.du */, LoongArch::XVSLT_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4251
  { 18967 /* xvslt.h */, LoongArch::XVSLT_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4252
  { 18975 /* xvslt.hu */, LoongArch::XVSLT_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4253
  { 18984 /* xvslt.w */, LoongArch::XVSLT_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4254
  { 18992 /* xvslt.wu */, LoongArch::XVSLT_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4255
  { 19001 /* xvslti.b */, LoongArch::XVSLTI_B, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4256
  { 19010 /* xvslti.bu */, LoongArch::XVSLTI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4257
  { 19020 /* xvslti.d */, LoongArch::XVSLTI_D, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4258
  { 19029 /* xvslti.du */, LoongArch::XVSLTI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4259
  { 19039 /* xvslti.h */, LoongArch::XVSLTI_H, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4260
  { 19048 /* xvslti.hu */, LoongArch::XVSLTI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4261
  { 19058 /* xvslti.w */, LoongArch::XVSLTI_W, Convert__Reg1_0__Reg1_1__SImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_SImm5 }, },
4262
  { 19067 /* xvslti.wu */, LoongArch::XVSLTI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4263
  { 19077 /* xvsra.b */, LoongArch::XVSRA_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4264
  { 19085 /* xvsra.d */, LoongArch::XVSRA_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4265
  { 19093 /* xvsra.h */, LoongArch::XVSRA_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4266
  { 19101 /* xvsra.w */, LoongArch::XVSRA_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4267
  { 19109 /* xvsrai.b */, LoongArch::XVSRAI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4268
  { 19118 /* xvsrai.d */, LoongArch::XVSRAI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4269
  { 19127 /* xvsrai.h */, LoongArch::XVSRAI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4270
  { 19136 /* xvsrai.w */, LoongArch::XVSRAI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4271
  { 19145 /* xvsran.b.h */, LoongArch::XVSRAN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4272
  { 19156 /* xvsran.h.w */, LoongArch::XVSRAN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4273
  { 19167 /* xvsran.w.d */, LoongArch::XVSRAN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4274
  { 19178 /* xvsrani.b.h */, LoongArch::XVSRANI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4275
  { 19190 /* xvsrani.d.q */, LoongArch::XVSRANI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4276
  { 19202 /* xvsrani.h.w */, LoongArch::XVSRANI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4277
  { 19214 /* xvsrani.w.d */, LoongArch::XVSRANI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4278
  { 19226 /* xvsrar.b */, LoongArch::XVSRAR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4279
  { 19235 /* xvsrar.d */, LoongArch::XVSRAR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4280
  { 19244 /* xvsrar.h */, LoongArch::XVSRAR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4281
  { 19253 /* xvsrar.w */, LoongArch::XVSRAR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4282
  { 19262 /* xvsrari.b */, LoongArch::XVSRARI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4283
  { 19272 /* xvsrari.d */, LoongArch::XVSRARI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4284
  { 19282 /* xvsrari.h */, LoongArch::XVSRARI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4285
  { 19292 /* xvsrari.w */, LoongArch::XVSRARI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4286
  { 19302 /* xvsrarn.b.h */, LoongArch::XVSRARN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4287
  { 19314 /* xvsrarn.h.w */, LoongArch::XVSRARN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4288
  { 19326 /* xvsrarn.w.d */, LoongArch::XVSRARN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4289
  { 19338 /* xvsrarni.b.h */, LoongArch::XVSRARNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4290
  { 19351 /* xvsrarni.d.q */, LoongArch::XVSRARNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4291
  { 19364 /* xvsrarni.h.w */, LoongArch::XVSRARNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4292
  { 19377 /* xvsrarni.w.d */, LoongArch::XVSRARNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4293
  { 19390 /* xvsrl.b */, LoongArch::XVSRL_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4294
  { 19398 /* xvsrl.d */, LoongArch::XVSRL_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4295
  { 19406 /* xvsrl.h */, LoongArch::XVSRL_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4296
  { 19414 /* xvsrl.w */, LoongArch::XVSRL_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4297
  { 19422 /* xvsrli.b */, LoongArch::XVSRLI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4298
  { 19431 /* xvsrli.d */, LoongArch::XVSRLI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4299
  { 19440 /* xvsrli.h */, LoongArch::XVSRLI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4300
  { 19449 /* xvsrli.w */, LoongArch::XVSRLI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4301
  { 19458 /* xvsrln.b.h */, LoongArch::XVSRLN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4302
  { 19469 /* xvsrln.h.w */, LoongArch::XVSRLN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4303
  { 19480 /* xvsrln.w.d */, LoongArch::XVSRLN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4304
  { 19491 /* xvsrlni.b.h */, LoongArch::XVSRLNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4305
  { 19503 /* xvsrlni.d.q */, LoongArch::XVSRLNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4306
  { 19515 /* xvsrlni.h.w */, LoongArch::XVSRLNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4307
  { 19527 /* xvsrlni.w.d */, LoongArch::XVSRLNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4308
  { 19539 /* xvsrlr.b */, LoongArch::XVSRLR_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4309
  { 19548 /* xvsrlr.d */, LoongArch::XVSRLR_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4310
  { 19557 /* xvsrlr.h */, LoongArch::XVSRLR_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4311
  { 19566 /* xvsrlr.w */, LoongArch::XVSRLR_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4312
  { 19575 /* xvsrlri.b */, LoongArch::XVSRLRI_B, Convert__Reg1_0__Reg1_1__UImm31_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm3 }, },
4313
  { 19585 /* xvsrlri.d */, LoongArch::XVSRLRI_D, Convert__Reg1_0__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4314
  { 19595 /* xvsrlri.h */, LoongArch::XVSRLRI_H, Convert__Reg1_0__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4315
  { 19605 /* xvsrlri.w */, LoongArch::XVSRLRI_W, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4316
  { 19615 /* xvsrlrn.b.h */, LoongArch::XVSRLRN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4317
  { 19627 /* xvsrlrn.h.w */, LoongArch::XVSRLRN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4318
  { 19639 /* xvsrlrn.w.d */, LoongArch::XVSRLRN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4319
  { 19651 /* xvsrlrni.b.h */, LoongArch::XVSRLRNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4320
  { 19664 /* xvsrlrni.d.q */, LoongArch::XVSRLRNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4321
  { 19677 /* xvsrlrni.h.w */, LoongArch::XVSRLRNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4322
  { 19690 /* xvsrlrni.w.d */, LoongArch::XVSRLRNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4323
  { 19703 /* xvssran.b.h */, LoongArch::XVSSRAN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4324
  { 19715 /* xvssran.bu.h */, LoongArch::XVSSRAN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4325
  { 19728 /* xvssran.h.w */, LoongArch::XVSSRAN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4326
  { 19740 /* xvssran.hu.w */, LoongArch::XVSSRAN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4327
  { 19753 /* xvssran.w.d */, LoongArch::XVSSRAN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4328
  { 19765 /* xvssran.wu.d */, LoongArch::XVSSRAN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4329
  { 19778 /* xvssrani.b.h */, LoongArch::XVSSRANI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4330
  { 19791 /* xvssrani.bu.h */, LoongArch::XVSSRANI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4331
  { 19805 /* xvssrani.d.q */, LoongArch::XVSSRANI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4332
  { 19818 /* xvssrani.du.q */, LoongArch::XVSSRANI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4333
  { 19832 /* xvssrani.h.w */, LoongArch::XVSSRANI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4334
  { 19845 /* xvssrani.hu.w */, LoongArch::XVSSRANI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4335
  { 19859 /* xvssrani.w.d */, LoongArch::XVSSRANI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4336
  { 19872 /* xvssrani.wu.d */, LoongArch::XVSSRANI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4337
  { 19886 /* xvssrarn.b.h */, LoongArch::XVSSRARN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4338
  { 19899 /* xvssrarn.bu.h */, LoongArch::XVSSRARN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4339
  { 19913 /* xvssrarn.h.w */, LoongArch::XVSSRARN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4340
  { 19926 /* xvssrarn.hu.w */, LoongArch::XVSSRARN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4341
  { 19940 /* xvssrarn.w.d */, LoongArch::XVSSRARN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4342
  { 19953 /* xvssrarn.wu.d */, LoongArch::XVSSRARN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4343
  { 19967 /* xvssrarni.b.h */, LoongArch::XVSSRARNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4344
  { 19981 /* xvssrarni.bu.h */, LoongArch::XVSSRARNI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4345
  { 19996 /* xvssrarni.d.q */, LoongArch::XVSSRARNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4346
  { 20010 /* xvssrarni.du.q */, LoongArch::XVSSRARNI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4347
  { 20025 /* xvssrarni.h.w */, LoongArch::XVSSRARNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4348
  { 20039 /* xvssrarni.hu.w */, LoongArch::XVSSRARNI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4349
  { 20054 /* xvssrarni.w.d */, LoongArch::XVSSRARNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4350
  { 20068 /* xvssrarni.wu.d */, LoongArch::XVSSRARNI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4351
  { 20083 /* xvssrln.b.h */, LoongArch::XVSSRLN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4352
  { 20095 /* xvssrln.bu.h */, LoongArch::XVSSRLN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4353
  { 20108 /* xvssrln.h.w */, LoongArch::XVSSRLN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4354
  { 20120 /* xvssrln.hu.w */, LoongArch::XVSSRLN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4355
  { 20133 /* xvssrln.w.d */, LoongArch::XVSSRLN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4356
  { 20145 /* xvssrln.wu.d */, LoongArch::XVSSRLN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4357
  { 20158 /* xvssrlni.b.h */, LoongArch::XVSSRLNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4358
  { 20171 /* xvssrlni.bu.h */, LoongArch::XVSSRLNI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4359
  { 20185 /* xvssrlni.d.q */, LoongArch::XVSSRLNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4360
  { 20198 /* xvssrlni.du.q */, LoongArch::XVSSRLNI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4361
  { 20212 /* xvssrlni.h.w */, LoongArch::XVSSRLNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4362
  { 20225 /* xvssrlni.hu.w */, LoongArch::XVSSRLNI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4363
  { 20239 /* xvssrlni.w.d */, LoongArch::XVSSRLNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4364
  { 20252 /* xvssrlni.wu.d */, LoongArch::XVSSRLNI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4365
  { 20266 /* xvssrlrn.b.h */, LoongArch::XVSSRLRN_B_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4366
  { 20279 /* xvssrlrn.bu.h */, LoongArch::XVSSRLRN_BU_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4367
  { 20293 /* xvssrlrn.h.w */, LoongArch::XVSSRLRN_H_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4368
  { 20306 /* xvssrlrn.hu.w */, LoongArch::XVSSRLRN_HU_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4369
  { 20320 /* xvssrlrn.w.d */, LoongArch::XVSSRLRN_W_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4370
  { 20333 /* xvssrlrn.wu.d */, LoongArch::XVSSRLRN_WU_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4371
  { 20347 /* xvssrlrni.b.h */, LoongArch::XVSSRLRNI_B_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4372
  { 20361 /* xvssrlrni.bu.h */, LoongArch::XVSSRLRNI_BU_H, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm41_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm4 }, },
4373
  { 20376 /* xvssrlrni.d.q */, LoongArch::XVSSRLRNI_D_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4374
  { 20390 /* xvssrlrni.du.q */, LoongArch::XVSSRLRNI_DU_Q, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm71_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm7 }, },
4375
  { 20405 /* xvssrlrni.h.w */, LoongArch::XVSSRLRNI_H_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4376
  { 20419 /* xvssrlrni.hu.w */, LoongArch::XVSSRLRNI_HU_W, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4377
  { 20434 /* xvssrlrni.w.d */, LoongArch::XVSSRLRNI_W_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4378
  { 20448 /* xvssrlrni.wu.d */, LoongArch::XVSSRLRNI_WU_D, Convert__Reg1_0__Tie0_1_1__Reg1_1__UImm61_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm6 }, },
4379
  { 20463 /* xvssub.b */, LoongArch::XVSSUB_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4380
  { 20472 /* xvssub.bu */, LoongArch::XVSSUB_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4381
  { 20482 /* xvssub.d */, LoongArch::XVSSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4382
  { 20491 /* xvssub.du */, LoongArch::XVSSUB_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4383
  { 20501 /* xvssub.h */, LoongArch::XVSSUB_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4384
  { 20510 /* xvssub.hu */, LoongArch::XVSSUB_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4385
  { 20520 /* xvssub.w */, LoongArch::XVSSUB_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4386
  { 20529 /* xvssub.wu */, LoongArch::XVSSUB_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4387
  { 20539 /* xvst */, LoongArch::XVST, Convert__Reg1_0__Reg1_1__SImm121_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm12 }, },
4388
  { 20544 /* xvstelm.b */, LoongArch::XVSTELM_B, Convert__Reg1_0__Reg1_1__SImm81_2__UImm51_3, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm8, MCK_UImm5 }, },
4389
  { 20554 /* xvstelm.d */, LoongArch::XVSTELM_D, Convert__Reg1_0__Reg1_1__SImm8lsl31_2__UImm21_3, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm8lsl3, MCK_UImm2 }, },
4390
  { 20564 /* xvstelm.h */, LoongArch::XVSTELM_H, Convert__Reg1_0__Reg1_1__SImm8lsl11_2__UImm41_3, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm8lsl1, MCK_UImm4 }, },
4391
  { 20574 /* xvstelm.w */, LoongArch::XVSTELM_W, Convert__Reg1_0__Reg1_1__SImm8lsl21_2__UImm31_3, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_SImm8lsl2, MCK_UImm3 }, },
4392
  { 20584 /* xvstx */, LoongArch::XVSTX, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_GPR, MCK_GPR }, },
4393
  { 20590 /* xvsub.b */, LoongArch::XVSUB_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4394
  { 20598 /* xvsub.d */, LoongArch::XVSUB_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4395
  { 20606 /* xvsub.h */, LoongArch::XVSUB_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4396
  { 20614 /* xvsub.q */, LoongArch::XVSUB_Q, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4397
  { 20622 /* xvsub.w */, LoongArch::XVSUB_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4398
  { 20630 /* xvsubi.bu */, LoongArch::XVSUBI_BU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4399
  { 20640 /* xvsubi.du */, LoongArch::XVSUBI_DU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4400
  { 20650 /* xvsubi.hu */, LoongArch::XVSUBI_HU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4401
  { 20660 /* xvsubi.wu */, LoongArch::XVSUBI_WU, Convert__Reg1_0__Reg1_1__UImm51_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm5 }, },
4402
  { 20670 /* xvsubwev.d.w */, LoongArch::XVSUBWEV_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4403
  { 20683 /* xvsubwev.d.wu */, LoongArch::XVSUBWEV_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4404
  { 20697 /* xvsubwev.h.b */, LoongArch::XVSUBWEV_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4405
  { 20710 /* xvsubwev.h.bu */, LoongArch::XVSUBWEV_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4406
  { 20724 /* xvsubwev.q.d */, LoongArch::XVSUBWEV_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4407
  { 20737 /* xvsubwev.q.du */, LoongArch::XVSUBWEV_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4408
  { 20751 /* xvsubwev.w.h */, LoongArch::XVSUBWEV_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4409
  { 20764 /* xvsubwev.w.hu */, LoongArch::XVSUBWEV_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4410
  { 20778 /* xvsubwod.d.w */, LoongArch::XVSUBWOD_D_W, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4411
  { 20791 /* xvsubwod.d.wu */, LoongArch::XVSUBWOD_D_WU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4412
  { 20805 /* xvsubwod.h.b */, LoongArch::XVSUBWOD_H_B, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4413
  { 20818 /* xvsubwod.h.bu */, LoongArch::XVSUBWOD_H_BU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4414
  { 20832 /* xvsubwod.q.d */, LoongArch::XVSUBWOD_Q_D, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4415
  { 20845 /* xvsubwod.q.du */, LoongArch::XVSUBWOD_Q_DU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4416
  { 20859 /* xvsubwod.w.h */, LoongArch::XVSUBWOD_W_H, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4417
  { 20872 /* xvsubwod.w.hu */, LoongArch::XVSUBWOD_W_HU, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4418
  { 20886 /* xvxor.v */, LoongArch::XVXOR_V, Convert__Reg1_0__Reg1_1__Reg1_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_LASX256 }, },
4419
  { 20894 /* xvxori.b */, LoongArch::XVXORI_B, Convert__Reg1_0__Reg1_1__UImm81_2, AMFBS_None, { MCK_LASX256, MCK_LASX256, MCK_UImm8 }, },
4420
};
4421
4422
#include "llvm/Support/Debug.h"
4423
#include "llvm/Support/Format.h"
4424
4425
unsigned LoongArchAsmParser::
4426
MatchInstructionImpl(const OperandVector &Operands,
4427
                     MCInst &Inst,
4428
                     uint64_t &ErrorInfo,
4429
                     FeatureBitset &MissingFeatures,
4430
0
                     bool matchingInlineAsm, unsigned VariantID) {
4431
  // Eliminate obvious mismatches.
4432
0
  if (Operands.size() > 5) {
4433
0
    ErrorInfo = 5;
4434
0
    return Match_InvalidOperand;
4435
0
  }
4436
4437
  // Get the current feature set.
4438
0
  const FeatureBitset &AvailableFeatures = getAvailableFeatures();
4439
4440
  // Get the instruction mnemonic, which is the first token.
4441
0
  StringRef Mnemonic = ((LoongArchOperand &)*Operands[0]).getToken();
4442
4443
  // Some state to try to produce better error messages.
4444
0
  bool HadMatchOtherThanFeatures = false;
4445
0
  bool HadMatchOtherThanPredicate = false;
4446
0
  unsigned RetCode = Match_InvalidOperand;
4447
0
  MissingFeatures.set();
4448
  // Set ErrorInfo to the operand that mismatches if it is
4449
  // wrong for all instances of the instruction.
4450
0
  ErrorInfo = ~0ULL;
4451
  // Find the appropriate table for this asm variant.
4452
0
  const MatchEntry *Start, *End;
4453
0
  switch (VariantID) {
4454
0
  default: llvm_unreachable("invalid variant!");
4455
0
  case 0: Start = std::begin(MatchTable0); End = std::end(MatchTable0); break;
4456
0
  }
4457
  // Search the table.
4458
0
  auto MnemonicRange = std::equal_range(Start, End, Mnemonic, LessOpcode());
4459
4460
0
  DEBUG_WITH_TYPE("asm-matcher", dbgs() << "AsmMatcher: found " <<
4461
0
  std::distance(MnemonicRange.first, MnemonicRange.second) <<
4462
0
  " encodings with mnemonic '" << Mnemonic << "'\n");
4463
4464
  // Return a more specific error code if no mnemonics match.
4465
0
  if (MnemonicRange.first == MnemonicRange.second)
4466
0
    return Match_MnemonicFail;
4467
4468
0
  for (const MatchEntry *it = MnemonicRange.first, *ie = MnemonicRange.second;
4469
0
       it != ie; ++it) {
4470
0
    const FeatureBitset &RequiredFeatures = FeatureBitsets[it->RequiredFeaturesIdx];
4471
0
    bool HasRequiredFeatures =
4472
0
      (AvailableFeatures & RequiredFeatures) == RequiredFeatures;
4473
0
    DEBUG_WITH_TYPE("asm-matcher", dbgs() << "Trying to match opcode "
4474
0
                                          << MII.getName(it->Opcode) << "\n");
4475
    // equal_range guarantees that instruction mnemonic matches.
4476
0
    assert(Mnemonic == it->getMnemonic());
4477
0
    bool OperandsValid = true;
4478
0
    for (unsigned FormalIdx = 0, ActualIdx = 1; FormalIdx != 4; ++FormalIdx) {
4479
0
      auto Formal = static_cast<MatchClassKind>(it->Classes[FormalIdx]);
4480
0
      DEBUG_WITH_TYPE("asm-matcher",
4481
0
                      dbgs() << "  Matching formal operand class " << getMatchClassName(Formal)
4482
0
                             << " against actual operand at index " << ActualIdx);
4483
0
      if (ActualIdx < Operands.size())
4484
0
        DEBUG_WITH_TYPE("asm-matcher", dbgs() << " (";
4485
0
                        Operands[ActualIdx]->print(dbgs()); dbgs() << "): ");
4486
0
      else
4487
0
        DEBUG_WITH_TYPE("asm-matcher", dbgs() << ": ");
4488
0
      if (ActualIdx >= Operands.size()) {
4489
0
        DEBUG_WITH_TYPE("asm-matcher", dbgs() << "actual operand index out of range\n");
4490
0
        if (Formal == InvalidMatchClass) {
4491
0
          break;
4492
0
        }
4493
0
        if (isSubclass(Formal, OptionalMatchClass)) {
4494
0
          continue;
4495
0
        }
4496
0
        OperandsValid = false;
4497
0
        ErrorInfo = ActualIdx;
4498
0
        break;
4499
0
      }
4500
0
      MCParsedAsmOperand &Actual = *Operands[ActualIdx];
4501
0
      unsigned Diag = validateOperandClass(Actual, Formal);
4502
0
      if (Diag == Match_Success) {
4503
0
        DEBUG_WITH_TYPE("asm-matcher",
4504
0
                        dbgs() << "match success using generic matcher\n");
4505
0
        ++ActualIdx;
4506
0
        continue;
4507
0
      }
4508
      // If the generic handler indicates an invalid operand
4509
      // failure, check for a special case.
4510
0
      if (Diag != Match_Success) {
4511
0
        unsigned TargetDiag = validateTargetOperandClass(Actual, Formal);
4512
0
        if (TargetDiag == Match_Success) {
4513
0
          DEBUG_WITH_TYPE("asm-matcher",
4514
0
                          dbgs() << "match success using target matcher\n");
4515
0
          ++ActualIdx;
4516
0
          continue;
4517
0
        }
4518
        // If the target matcher returned a specific error code use
4519
        // that, else use the one from the generic matcher.
4520
0
        if (TargetDiag != Match_InvalidOperand && HasRequiredFeatures)
4521
0
          Diag = TargetDiag;
4522
0
      }
4523
      // If current formal operand wasn't matched and it is optional
4524
      // then try to match next formal operand
4525
0
      if (Diag == Match_InvalidOperand && isSubclass(Formal, OptionalMatchClass)) {
4526
0
        DEBUG_WITH_TYPE("asm-matcher", dbgs() << "ignoring optional operand\n");
4527
0
        continue;
4528
0
      }
4529
      // If this operand is broken for all of the instances of this
4530
      // mnemonic, keep track of it so we can report loc info.
4531
      // If we already had a match that only failed due to a
4532
      // target predicate, that diagnostic is preferred.
4533
0
      if (!HadMatchOtherThanPredicate &&
4534
0
          (it == MnemonicRange.first || ErrorInfo <= ActualIdx)) {
4535
0
        if (HasRequiredFeatures && (ErrorInfo != ActualIdx || Diag != Match_InvalidOperand))
4536
0
          RetCode = Diag;
4537
0
        ErrorInfo = ActualIdx;
4538
0
      }
4539
      // Otherwise, just reject this instance of the mnemonic.
4540
0
      OperandsValid = false;
4541
0
      break;
4542
0
    }
4543
4544
0
    if (!OperandsValid) {
4545
0
      DEBUG_WITH_TYPE("asm-matcher", dbgs() << "Opcode result: multiple "
4546
0
                                               "operand mismatches, ignoring "
4547
0
                                               "this opcode\n");
4548
0
      continue;
4549
0
    }
4550
0
    if (!HasRequiredFeatures) {
4551
0
      HadMatchOtherThanFeatures = true;
4552
0
      FeatureBitset NewMissingFeatures = RequiredFeatures & ~AvailableFeatures;
4553
0
      DEBUG_WITH_TYPE("asm-matcher", dbgs() << "Missing target features:";
4554
0
                      for (unsigned I = 0, E = NewMissingFeatures.size(); I != E; ++I)
4555
0
                        if (NewMissingFeatures[I])
4556
0
                          dbgs() << ' ' << I;
4557
0
                      dbgs() << "\n");
4558
0
      if (NewMissingFeatures.count() <=
4559
0
          MissingFeatures.count())
4560
0
        MissingFeatures = NewMissingFeatures;
4561
0
      continue;
4562
0
    }
4563
4564
0
    Inst.clear();
4565
4566
0
    Inst.setOpcode(it->Opcode);
4567
    // We have a potential match but have not rendered the operands.
4568
    // Check the target predicate to handle any context sensitive
4569
    // constraints.
4570
    // For example, Ties that are referenced multiple times must be
4571
    // checked here to ensure the input is the same for each match
4572
    // constraints. If we leave it any later the ties will have been
4573
    // canonicalized
4574
0
    unsigned MatchResult;
4575
0
    if ((MatchResult = checkEarlyTargetMatchPredicate(Inst, Operands)) != Match_Success) {
4576
0
      Inst.clear();
4577
0
      DEBUG_WITH_TYPE(
4578
0
          "asm-matcher",
4579
0
          dbgs() << "Early target match predicate failed with diag code "
4580
0
                 << MatchResult << "\n");
4581
0
      RetCode = MatchResult;
4582
0
      HadMatchOtherThanPredicate = true;
4583
0
      continue;
4584
0
    }
4585
4586
0
    if (matchingInlineAsm) {
4587
0
      convertToMapAndConstraints(it->ConvertFn, Operands);
4588
0
      if (!checkAsmTiedOperandConstraints(*this, it->ConvertFn, Operands, ErrorInfo))
4589
0
        return Match_InvalidTiedOperand;
4590
4591
0
      return Match_Success;
4592
0
    }
4593
4594
    // We have selected a definite instruction, convert the parsed
4595
    // operands into the appropriate MCInst.
4596
0
    convertToMCInst(it->ConvertFn, Inst, it->Opcode, Operands);
4597
4598
    // We have a potential match. Check the target predicate to
4599
    // handle any context sensitive constraints.
4600
0
    if ((MatchResult = checkTargetMatchPredicate(Inst)) != Match_Success) {
4601
0
      DEBUG_WITH_TYPE("asm-matcher",
4602
0
                      dbgs() << "Target match predicate failed with diag code "
4603
0
                             << MatchResult << "\n");
4604
0
      Inst.clear();
4605
0
      RetCode = MatchResult;
4606
0
      HadMatchOtherThanPredicate = true;
4607
0
      continue;
4608
0
    }
4609
4610
0
    if (!checkAsmTiedOperandConstraints(*this, it->ConvertFn, Operands, ErrorInfo))
4611
0
      return Match_InvalidTiedOperand;
4612
4613
0
    DEBUG_WITH_TYPE(
4614
0
        "asm-matcher",
4615
0
        dbgs() << "Opcode result: complete match, selecting this opcode\n");
4616
0
    return Match_Success;
4617
0
  }
4618
4619
  // Okay, we had no match.  Try to return a useful error code.
4620
0
  if (HadMatchOtherThanPredicate || !HadMatchOtherThanFeatures)
4621
0
    return RetCode;
4622
4623
0
  ErrorInfo = 0;
4624
0
  return Match_MissingFeature;
4625
0
}
4626
4627
namespace {
4628
  struct OperandMatchEntry {
4629
    uint16_t Mnemonic;
4630
    uint8_t OperandMask;
4631
    uint8_t Class;
4632
    uint8_t RequiredFeaturesIdx;
4633
4634
0
    StringRef getMnemonic() const {
4635
0
      return StringRef(MnemonicTable + Mnemonic + 1,
4636
0
                       MnemonicTable[Mnemonic]);
4637
0
    }
4638
  };
4639
4640
  // Predicate for searching for an opcode.
4641
  struct LessOpcodeOperand {
4642
0
    bool operator()(const OperandMatchEntry &LHS, StringRef RHS) {
4643
0
      return LHS.getMnemonic()  < RHS;
4644
0
    }
4645
0
    bool operator()(StringRef LHS, const OperandMatchEntry &RHS) {
4646
0
      return LHS < RHS.getMnemonic();
4647
0
    }
4648
0
    bool operator()(const OperandMatchEntry &LHS, const OperandMatchEntry &RHS) {
4649
0
      return LHS.getMnemonic() < RHS.getMnemonic();
4650
0
    }
4651
  };
4652
} // end anonymous namespace
4653
4654
static const OperandMatchEntry OperandMatchTable[82] = {
4655
  /* Operand List Mnemonic, Mask, Operand Class, Features */
4656
  { 102 /* amadd.b */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4657
  { 110 /* amadd.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4658
  { 118 /* amadd.h */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4659
  { 126 /* amadd.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4660
  { 134 /* amadd_db.b */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4661
  { 145 /* amadd_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4662
  { 156 /* amadd_db.h */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4663
  { 167 /* amadd_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4664
  { 178 /* amand.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4665
  { 186 /* amand.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4666
  { 194 /* amand_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4667
  { 205 /* amand_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4668
  { 216 /* amcas.b */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4669
  { 224 /* amcas.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4670
  { 232 /* amcas.h */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4671
  { 240 /* amcas.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4672
  { 248 /* amcas_db.b */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4673
  { 259 /* amcas_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4674
  { 270 /* amcas_db.h */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4675
  { 281 /* amcas_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4676
  { 292 /* ammax.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4677
  { 300 /* ammax.du */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4678
  { 309 /* ammax.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4679
  { 317 /* ammax.wu */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4680
  { 326 /* ammax_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4681
  { 337 /* ammax_db.du */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4682
  { 349 /* ammax_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4683
  { 360 /* ammax_db.wu */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4684
  { 372 /* ammin.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4685
  { 380 /* ammin.du */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4686
  { 389 /* ammin.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4687
  { 397 /* ammin.wu */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4688
  { 406 /* ammin_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4689
  { 417 /* ammin_db.du */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4690
  { 429 /* ammin_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4691
  { 440 /* ammin_db.wu */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4692
  { 452 /* amor.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4693
  { 459 /* amor.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4694
  { 466 /* amor_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4695
  { 476 /* amor_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4696
  { 486 /* amswap.b */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4697
  { 495 /* amswap.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4698
  { 504 /* amswap.h */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4699
  { 513 /* amswap.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4700
  { 522 /* amswap_db.b */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4701
  { 534 /* amswap_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4702
  { 546 /* amswap_db.h */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4703
  { 558 /* amswap_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4704
  { 570 /* amxor.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4705
  { 578 /* amxor.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4706
  { 586 /* amxor_db.d */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4707
  { 597 /* amxor_db.w */, 4 /* 2 */, MCK_AtomicMemAsmOperand, AMFBS_IsLA64 },
4708
  { 844 /* b */, 1 /* 0 */, MCK_SImm26OperandB, AMFBS_None },
4709
  { 933 /* bl */, 1 /* 0 */, MCK_SImm26OperandBL, AMFBS_None },
4710
  { 1049 /* call36 */, 1 /* 0 */, MCK_BareSymbol, AMFBS_IsLA64 },
4711
  { 2786 /* la */, 2 /* 1 */, MCK_BareSymbol, AMFBS_HasLaGlobalWithPcrel },
4712
  { 2786 /* la */, 2 /* 1 */, MCK_BareSymbol, AMFBS_HasLaGlobalWithAbs },
4713
  { 2786 /* la */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4714
  { 2789 /* la.abs */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4715
  { 2789 /* la.abs */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4716
  { 2796 /* la.global */, 2 /* 1 */, MCK_BareSymbol, AMFBS_HasLaGlobalWithPcrel },
4717
  { 2796 /* la.global */, 2 /* 1 */, MCK_BareSymbol, AMFBS_HasLaGlobalWithAbs },
4718
  { 2796 /* la.global */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4719
  { 2796 /* la.global */, 4 /* 2 */, MCK_BareSymbol, AMFBS_HasLaGlobalWithPcrel },
4720
  { 2796 /* la.global */, 4 /* 2 */, MCK_BareSymbol, AMFBS_HasLaGlobalWithAbs },
4721
  { 2796 /* la.global */, 4 /* 2 */, MCK_BareSymbol, AMFBS_None },
4722
  { 2806 /* la.got */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4723
  { 2806 /* la.got */, 4 /* 2 */, MCK_BareSymbol, AMFBS_IsLA64 },
4724
  { 2813 /* la.local */, 2 /* 1 */, MCK_BareSymbol, AMFBS_HasLaLocalWithAbs },
4725
  { 2813 /* la.local */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4726
  { 2813 /* la.local */, 4 /* 2 */, MCK_BareSymbol, AMFBS_HasLaLocalWithAbs },
4727
  { 2813 /* la.local */, 4 /* 2 */, MCK_BareSymbol, AMFBS_None },
4728
  { 2822 /* la.pcrel */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4729
  { 2822 /* la.pcrel */, 4 /* 2 */, MCK_BareSymbol, AMFBS_IsLA64 },
4730
  { 2831 /* la.tls.gd */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4731
  { 2831 /* la.tls.gd */, 4 /* 2 */, MCK_BareSymbol, AMFBS_IsLA64 },
4732
  { 2841 /* la.tls.ie */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4733
  { 2841 /* la.tls.ie */, 4 /* 2 */, MCK_BareSymbol, AMFBS_IsLA64 },
4734
  { 2851 /* la.tls.ld */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4735
  { 2851 /* la.tls.ld */, 4 /* 2 */, MCK_BareSymbol, AMFBS_IsLA64 },
4736
  { 2861 /* la.tls.le */, 2 /* 1 */, MCK_BareSymbol, AMFBS_None },
4737
  { 3990 /* tail36 */, 2 /* 1 */, MCK_BareSymbol, AMFBS_IsLA64 },
4738
};
4739
4740
ParseStatus LoongArchAsmParser::
4741
tryCustomParseOperand(OperandVector &Operands,
4742
0
                      unsigned MCK) {
4743
4744
0
  switch(MCK) {
4745
0
  case MCK_AtomicMemAsmOperand:
4746
0
    return parseAtomicMemOp(Operands);
4747
0
  case MCK_BareSymbol:
4748
0
    return parseImmediate(Operands);
4749
0
  case MCK_SImm26OperandB:
4750
0
    return parseImmediate(Operands);
4751
0
  case MCK_SImm26OperandBL:
4752
0
    return parseSImm26Operand(Operands);
4753
0
  default:
4754
0
    return ParseStatus::NoMatch;
4755
0
  }
4756
0
  return ParseStatus::NoMatch;
4757
0
}
4758
4759
ParseStatus LoongArchAsmParser::
4760
MatchOperandParserImpl(OperandVector &Operands,
4761
                       StringRef Mnemonic,
4762
0
                       bool ParseForAllFeatures) {
4763
  // Get the current feature set.
4764
0
  const FeatureBitset &AvailableFeatures = getAvailableFeatures();
4765
4766
  // Get the next operand index.
4767
0
  unsigned NextOpNum = Operands.size() - 1;
4768
  // Search the table.
4769
0
  auto MnemonicRange =
4770
0
    std::equal_range(std::begin(OperandMatchTable), std::end(OperandMatchTable),
4771
0
                     Mnemonic, LessOpcodeOperand());
4772
4773
0
  if (MnemonicRange.first == MnemonicRange.second)
4774
0
    return ParseStatus::NoMatch;
4775
4776
0
  for (const OperandMatchEntry *it = MnemonicRange.first,
4777
0
       *ie = MnemonicRange.second; it != ie; ++it) {
4778
    // equal_range guarantees that instruction mnemonic matches.
4779
0
    assert(Mnemonic == it->getMnemonic());
4780
4781
    // check if the available features match
4782
0
    const FeatureBitset &RequiredFeatures = FeatureBitsets[it->RequiredFeaturesIdx];
4783
0
    if (!ParseForAllFeatures && (AvailableFeatures & RequiredFeatures) != RequiredFeatures)
4784
0
      continue;
4785
4786
    // check if the operand in question has a custom parser.
4787
0
    if (!(it->OperandMask & (1 << NextOpNum)))
4788
0
      continue;
4789
4790
    // call custom parse method to handle the operand
4791
0
    ParseStatus Result = tryCustomParseOperand(Operands, it->Class);
4792
0
    if (!Result.isNoMatch())
4793
0
      return Result;
4794
0
  }
4795
4796
  // Okay, we had no match.
4797
0
  return ParseStatus::NoMatch;
4798
0
}
4799
4800
#endif // GET_MATCHER_IMPLEMENTATION
4801
4802
4803
#ifdef GET_MNEMONIC_SPELL_CHECKER
4804
#undef GET_MNEMONIC_SPELL_CHECKER
4805
4806
0
static std::string LoongArchMnemonicSpellCheck(StringRef S, const FeatureBitset &FBS, unsigned VariantID) {
4807
0
  const unsigned MaxEditDist = 2;
4808
0
  std::vector<StringRef> Candidates;
4809
0
  StringRef Prev = "";
4810
4811
  // Find the appropriate table for this asm variant.
4812
0
  const MatchEntry *Start, *End;
4813
0
  switch (VariantID) {
4814
0
  default: llvm_unreachable("invalid variant!");
4815
0
  case 0: Start = std::begin(MatchTable0); End = std::end(MatchTable0); break;
4816
0
  }
4817
4818
0
  for (auto I = Start; I < End; I++) {
4819
    // Ignore unsupported instructions.
4820
0
    const FeatureBitset &RequiredFeatures = FeatureBitsets[I->RequiredFeaturesIdx];
4821
0
    if ((FBS & RequiredFeatures) != RequiredFeatures)
4822
0
      continue;
4823
4824
0
    StringRef T = I->getMnemonic();
4825
    // Avoid recomputing the edit distance for the same string.
4826
0
    if (T.equals(Prev))
4827
0
      continue;
4828
4829
0
    Prev = T;
4830
0
    unsigned Dist = S.edit_distance(T, false, MaxEditDist);
4831
0
    if (Dist <= MaxEditDist)
4832
0
      Candidates.push_back(T);
4833
0
  }
4834
4835
0
  if (Candidates.empty())
4836
0
    return "";
4837
4838
0
  std::string Res = ", did you mean: ";
4839
0
  unsigned i = 0;
4840
0
  for (; i < Candidates.size() - 1; i++)
4841
0
    Res += Candidates[i].str() + ", ";
4842
0
  return Res + Candidates[i].str() + "?";
4843
0
}
4844
4845
#endif // GET_MNEMONIC_SPELL_CHECKER
4846
4847
4848
#ifdef GET_MNEMONIC_CHECKER
4849
#undef GET_MNEMONIC_CHECKER
4850
4851
static bool LoongArchCheckMnemonic(StringRef Mnemonic,
4852
                                const FeatureBitset &AvailableFeatures,
4853
                                unsigned VariantID) {
4854
  // Find the appropriate table for this asm variant.
4855
  const MatchEntry *Start, *End;
4856
  switch (VariantID) {
4857
  default: llvm_unreachable("invalid variant!");
4858
  case 0: Start = std::begin(MatchTable0); End = std::end(MatchTable0); break;
4859
  }
4860
4861
  // Search the table.
4862
  auto MnemonicRange = std::equal_range(Start, End, Mnemonic, LessOpcode());
4863
4864
  if (MnemonicRange.first == MnemonicRange.second)
4865
    return false;
4866
4867
  for (const MatchEntry *it = MnemonicRange.first, *ie = MnemonicRange.second;
4868
       it != ie; ++it) {
4869
    const FeatureBitset &RequiredFeatures =
4870
      FeatureBitsets[it->RequiredFeaturesIdx];
4871
    if ((AvailableFeatures & RequiredFeatures) == RequiredFeatures)
4872
      return true;
4873
  }
4874
  return false;
4875
}
4876
4877
#endif // GET_MNEMONIC_CHECKER
4878