xref: /netbsd-src/external/gpl3/binutils.old/dist/opcodes/aarch64-asm-2.c (revision e992f068c547fd6e84b3f104dc2340adcc955732)
1 /* This file is automatically generated by aarch64-gen.  Do not edit!  */
2 /* Copyright (C) 2012-2022 Free Software Foundation, Inc.
3    Contributed by ARM Ltd.
4 
5    This file is part of the GNU opcodes library.
6 
7    This library is free software; you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation; either version 3, or (at your option)
10    any later version.
11 
12    It is distributed in the hope that it will be useful, but WITHOUT
13    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
15    License for more details.
16 
17    You should have received a copy of the GNU General Public License
18    along with this program; see the file COPYING3. If not,
19    see <http://www.gnu.org/licenses/>.  */
20 
21 #include "sysdep.h"
22 #include "aarch64-asm.h"
23 
24 
25 const aarch64_opcode *
aarch64_find_real_opcode(const aarch64_opcode * opcode)26 aarch64_find_real_opcode (const aarch64_opcode *opcode)
27 {
28   /* Use the index as the key to locate the real opcode.  */
29   int key = opcode - aarch64_opcode_table;
30   int value;
31   switch (key)
32     {
33     case 3:	/* ngc */
34     case 2:	/* sbc */
35       value = 2;	/* --> sbc.  */
36       break;
37     case 5:	/* ngcs */
38     case 4:	/* sbcs */
39       value = 4;	/* --> sbcs.  */
40       break;
41     case 8:	/* cmn */
42     case 7:	/* adds */
43       value = 7;	/* --> adds.  */
44       break;
45     case 11:	/* cmp */
46     case 10:	/* subs */
47       value = 10;	/* --> subs.  */
48       break;
49     case 13:	/* mov */
50     case 12:	/* add */
51       value = 12;	/* --> add.  */
52       break;
53     case 15:	/* cmn */
54     case 14:	/* adds */
55       value = 14;	/* --> adds.  */
56       break;
57     case 18:	/* cmp */
58     case 17:	/* subs */
59       value = 17;	/* --> subs.  */
60       break;
61     case 23:	/* cmn */
62     case 22:	/* adds */
63       value = 22;	/* --> adds.  */
64       break;
65     case 25:	/* neg */
66     case 24:	/* sub */
67       value = 24;	/* --> sub.  */
68       break;
69     case 27:	/* cmp */
70     case 28:	/* negs */
71     case 26:	/* subs */
72       value = 26;	/* --> subs.  */
73       break;
74     case 153:	/* mov */
75     case 152:	/* umov */
76       value = 152;	/* --> umov.  */
77       break;
78     case 155:	/* mov */
79     case 154:	/* ins */
80       value = 154;	/* --> ins.  */
81       break;
82     case 157:	/* mov */
83     case 156:	/* ins */
84       value = 156;	/* --> ins.  */
85       break;
86     case 243:	/* mvn */
87     case 242:	/* not */
88       value = 242;	/* --> not.  */
89       break;
90     case 318:	/* mov */
91     case 317:	/* orr */
92       value = 317;	/* --> orr.  */
93       break;
94     case 389:	/* sxtl */
95     case 388:	/* sshll */
96       value = 388;	/* --> sshll.  */
97       break;
98     case 391:	/* sxtl2 */
99     case 390:	/* sshll2 */
100       value = 390;	/* --> sshll2.  */
101       break;
102     case 413:	/* uxtl */
103     case 412:	/* ushll */
104       value = 412;	/* --> ushll.  */
105       break;
106     case 415:	/* uxtl2 */
107     case 414:	/* ushll2 */
108       value = 414;	/* --> ushll2.  */
109       break;
110     case 536:	/* mov */
111     case 535:	/* dup */
112       value = 535;	/* --> dup.  */
113       break;
114     case 623:	/* sxtw */
115     case 622:	/* sxth */
116     case 621:	/* sxtb */
117     case 624:	/* asr */
118     case 620:	/* sbfx */
119     case 619:	/* sbfiz */
120     case 618:	/* sbfm */
121       value = 618;	/* --> sbfm.  */
122       break;
123     case 627:	/* bfc */
124     case 628:	/* bfxil */
125     case 626:	/* bfi */
126     case 625:	/* bfm */
127       value = 625;	/* --> bfm.  */
128       break;
129     case 633:	/* uxth */
130     case 632:	/* uxtb */
131     case 635:	/* lsr */
132     case 634:	/* lsl */
133     case 631:	/* ubfx */
134     case 630:	/* ubfiz */
135     case 629:	/* ubfm */
136       value = 629;	/* --> ubfm.  */
137       break;
138     case 665:	/* cset */
139     case 664:	/* cinc */
140     case 663:	/* csinc */
141       value = 663;	/* --> csinc.  */
142       break;
143     case 668:	/* csetm */
144     case 667:	/* cinv */
145     case 666:	/* csinv */
146       value = 666;	/* --> csinv.  */
147       break;
148     case 670:	/* cneg */
149     case 669:	/* csneg */
150       value = 669;	/* --> csneg.  */
151       break;
152     case 688:	/* rev */
153     case 689:	/* rev64 */
154       value = 688;	/* --> rev.  */
155       break;
156     case 714:	/* lsl */
157     case 713:	/* lslv */
158       value = 713;	/* --> lslv.  */
159       break;
160     case 716:	/* lsr */
161     case 715:	/* lsrv */
162       value = 715;	/* --> lsrv.  */
163       break;
164     case 718:	/* asr */
165     case 717:	/* asrv */
166       value = 717;	/* --> asrv.  */
167       break;
168     case 720:	/* ror */
169     case 719:	/* rorv */
170       value = 719;	/* --> rorv.  */
171       break;
172     case 723:	/* cmpp */
173     case 722:	/* subps */
174       value = 722;	/* --> subps.  */
175       break;
176     case 736:	/* mul */
177     case 735:	/* madd */
178       value = 735;	/* --> madd.  */
179       break;
180     case 738:	/* mneg */
181     case 737:	/* msub */
182       value = 737;	/* --> msub.  */
183       break;
184     case 740:	/* smull */
185     case 739:	/* smaddl */
186       value = 739;	/* --> smaddl.  */
187       break;
188     case 742:	/* smnegl */
189     case 741:	/* smsubl */
190       value = 741;	/* --> smsubl.  */
191       break;
192     case 745:	/* umull */
193     case 744:	/* umaddl */
194       value = 744;	/* --> umaddl.  */
195       break;
196     case 747:	/* umnegl */
197     case 746:	/* umsubl */
198       value = 746;	/* --> umsubl.  */
199       break;
200     case 759:	/* ror */
201     case 758:	/* extr */
202       value = 758;	/* --> extr.  */
203       break;
204     case 996:	/* bic */
205     case 995:	/* and */
206       value = 995;	/* --> and.  */
207       break;
208     case 998:	/* mov */
209     case 997:	/* orr */
210       value = 997;	/* --> orr.  */
211       break;
212     case 1001:	/* tst */
213     case 1000:	/* ands */
214       value = 1000;	/* --> ands.  */
215       break;
216     case 1006:	/* uxtw */
217     case 1005:	/* mov */
218     case 1004:	/* orr */
219       value = 1004;	/* --> orr.  */
220       break;
221     case 1008:	/* mvn */
222     case 1007:	/* orn */
223       value = 1007;	/* --> orn.  */
224       break;
225     case 1012:	/* tst */
226     case 1011:	/* ands */
227       value = 1011;	/* --> ands.  */
228       break;
229     case 1138:	/* staddb */
230     case 1042:	/* ldaddb */
231       value = 1042;	/* --> ldaddb.  */
232       break;
233     case 1139:	/* staddh */
234     case 1043:	/* ldaddh */
235       value = 1043;	/* --> ldaddh.  */
236       break;
237     case 1140:	/* stadd */
238     case 1044:	/* ldadd */
239       value = 1044;	/* --> ldadd.  */
240       break;
241     case 1141:	/* staddlb */
242     case 1046:	/* ldaddlb */
243       value = 1046;	/* --> ldaddlb.  */
244       break;
245     case 1142:	/* staddlh */
246     case 1049:	/* ldaddlh */
247       value = 1049;	/* --> ldaddlh.  */
248       break;
249     case 1143:	/* staddl */
250     case 1052:	/* ldaddl */
251       value = 1052;	/* --> ldaddl.  */
252       break;
253     case 1144:	/* stclrb */
254     case 1054:	/* ldclrb */
255       value = 1054;	/* --> ldclrb.  */
256       break;
257     case 1145:	/* stclrh */
258     case 1055:	/* ldclrh */
259       value = 1055;	/* --> ldclrh.  */
260       break;
261     case 1146:	/* stclr */
262     case 1056:	/* ldclr */
263       value = 1056;	/* --> ldclr.  */
264       break;
265     case 1147:	/* stclrlb */
266     case 1058:	/* ldclrlb */
267       value = 1058;	/* --> ldclrlb.  */
268       break;
269     case 1148:	/* stclrlh */
270     case 1061:	/* ldclrlh */
271       value = 1061;	/* --> ldclrlh.  */
272       break;
273     case 1149:	/* stclrl */
274     case 1064:	/* ldclrl */
275       value = 1064;	/* --> ldclrl.  */
276       break;
277     case 1150:	/* steorb */
278     case 1066:	/* ldeorb */
279       value = 1066;	/* --> ldeorb.  */
280       break;
281     case 1151:	/* steorh */
282     case 1067:	/* ldeorh */
283       value = 1067;	/* --> ldeorh.  */
284       break;
285     case 1152:	/* steor */
286     case 1068:	/* ldeor */
287       value = 1068;	/* --> ldeor.  */
288       break;
289     case 1153:	/* steorlb */
290     case 1070:	/* ldeorlb */
291       value = 1070;	/* --> ldeorlb.  */
292       break;
293     case 1154:	/* steorlh */
294     case 1073:	/* ldeorlh */
295       value = 1073;	/* --> ldeorlh.  */
296       break;
297     case 1155:	/* steorl */
298     case 1076:	/* ldeorl */
299       value = 1076;	/* --> ldeorl.  */
300       break;
301     case 1156:	/* stsetb */
302     case 1078:	/* ldsetb */
303       value = 1078;	/* --> ldsetb.  */
304       break;
305     case 1157:	/* stseth */
306     case 1079:	/* ldseth */
307       value = 1079;	/* --> ldseth.  */
308       break;
309     case 1158:	/* stset */
310     case 1080:	/* ldset */
311       value = 1080;	/* --> ldset.  */
312       break;
313     case 1159:	/* stsetlb */
314     case 1082:	/* ldsetlb */
315       value = 1082;	/* --> ldsetlb.  */
316       break;
317     case 1160:	/* stsetlh */
318     case 1085:	/* ldsetlh */
319       value = 1085;	/* --> ldsetlh.  */
320       break;
321     case 1161:	/* stsetl */
322     case 1088:	/* ldsetl */
323       value = 1088;	/* --> ldsetl.  */
324       break;
325     case 1162:	/* stsmaxb */
326     case 1090:	/* ldsmaxb */
327       value = 1090;	/* --> ldsmaxb.  */
328       break;
329     case 1163:	/* stsmaxh */
330     case 1091:	/* ldsmaxh */
331       value = 1091;	/* --> ldsmaxh.  */
332       break;
333     case 1164:	/* stsmax */
334     case 1092:	/* ldsmax */
335       value = 1092;	/* --> ldsmax.  */
336       break;
337     case 1165:	/* stsmaxlb */
338     case 1094:	/* ldsmaxlb */
339       value = 1094;	/* --> ldsmaxlb.  */
340       break;
341     case 1166:	/* stsmaxlh */
342     case 1097:	/* ldsmaxlh */
343       value = 1097;	/* --> ldsmaxlh.  */
344       break;
345     case 1167:	/* stsmaxl */
346     case 1100:	/* ldsmaxl */
347       value = 1100;	/* --> ldsmaxl.  */
348       break;
349     case 1168:	/* stsminb */
350     case 1102:	/* ldsminb */
351       value = 1102;	/* --> ldsminb.  */
352       break;
353     case 1169:	/* stsminh */
354     case 1103:	/* ldsminh */
355       value = 1103;	/* --> ldsminh.  */
356       break;
357     case 1170:	/* stsmin */
358     case 1104:	/* ldsmin */
359       value = 1104;	/* --> ldsmin.  */
360       break;
361     case 1171:	/* stsminlb */
362     case 1106:	/* ldsminlb */
363       value = 1106;	/* --> ldsminlb.  */
364       break;
365     case 1172:	/* stsminlh */
366     case 1109:	/* ldsminlh */
367       value = 1109;	/* --> ldsminlh.  */
368       break;
369     case 1173:	/* stsminl */
370     case 1112:	/* ldsminl */
371       value = 1112;	/* --> ldsminl.  */
372       break;
373     case 1174:	/* stumaxb */
374     case 1114:	/* ldumaxb */
375       value = 1114;	/* --> ldumaxb.  */
376       break;
377     case 1175:	/* stumaxh */
378     case 1115:	/* ldumaxh */
379       value = 1115;	/* --> ldumaxh.  */
380       break;
381     case 1176:	/* stumax */
382     case 1116:	/* ldumax */
383       value = 1116;	/* --> ldumax.  */
384       break;
385     case 1177:	/* stumaxlb */
386     case 1118:	/* ldumaxlb */
387       value = 1118;	/* --> ldumaxlb.  */
388       break;
389     case 1178:	/* stumaxlh */
390     case 1121:	/* ldumaxlh */
391       value = 1121;	/* --> ldumaxlh.  */
392       break;
393     case 1179:	/* stumaxl */
394     case 1124:	/* ldumaxl */
395       value = 1124;	/* --> ldumaxl.  */
396       break;
397     case 1180:	/* stuminb */
398     case 1126:	/* lduminb */
399       value = 1126;	/* --> lduminb.  */
400       break;
401     case 1181:	/* stuminh */
402     case 1127:	/* lduminh */
403       value = 1127;	/* --> lduminh.  */
404       break;
405     case 1182:	/* stumin */
406     case 1128:	/* ldumin */
407       value = 1128;	/* --> ldumin.  */
408       break;
409     case 1183:	/* stuminlb */
410     case 1130:	/* lduminlb */
411       value = 1130;	/* --> lduminlb.  */
412       break;
413     case 1184:	/* stuminlh */
414     case 1133:	/* lduminlh */
415       value = 1133;	/* --> lduminlh.  */
416       break;
417     case 1185:	/* stuminl */
418     case 1136:	/* lduminl */
419       value = 1136;	/* --> lduminl.  */
420       break;
421     case 1187:	/* mov */
422     case 1186:	/* movn */
423       value = 1186;	/* --> movn.  */
424       break;
425     case 1189:	/* mov */
426     case 1188:	/* movz */
427       value = 1188;	/* --> movz.  */
428       break;
429     case 1250:	/* autibsp */
430     case 1249:	/* autibz */
431     case 1248:	/* autiasp */
432     case 1247:	/* autiaz */
433     case 1246:	/* pacibsp */
434     case 1245:	/* pacibz */
435     case 1244:	/* paciasp */
436     case 1243:	/* paciaz */
437     case 1219:	/* tsb */
438     case 1218:	/* psb */
439     case 1217:	/* esb */
440     case 1216:	/* autib1716 */
441     case 1215:	/* autia1716 */
442     case 1214:	/* pacib1716 */
443     case 1213:	/* pacia1716 */
444     case 1212:	/* xpaclri */
445     case 1210:	/* sevl */
446     case 1209:	/* sev */
447     case 1208:	/* wfi */
448     case 1207:	/* wfe */
449     case 1206:	/* yield */
450     case 1205:	/* bti */
451     case 1204:	/* csdb */
452     case 1203:	/* nop */
453     case 1202:	/* hint */
454       value = 1202;	/* --> hint.  */
455       break;
456     case 1225:	/* pssbb */
457     case 1224:	/* ssbb */
458     case 1223:	/* dfb */
459     case 1221:	/* dsb */
460       value = 1221;	/* --> dsb.  */
461       break;
462     case 1222:	/* dsb */
463       value = 1222;	/* --> dsb.  */
464       break;
465     case 1238:	/* cpp */
466     case 1237:	/* dvp */
467     case 1236:	/* cfp */
468     case 1233:	/* tlbi */
469     case 1232:	/* ic */
470     case 1231:	/* dc */
471     case 1230:	/* at */
472     case 1229:	/* sys */
473       value = 1229;	/* --> sys.  */
474       break;
475     case 1234:	/* wfet */
476       value = 1234;	/* --> wfet.  */
477       break;
478     case 1235:	/* wfit */
479       value = 1235;	/* --> wfit.  */
480       break;
481     case 2048:	/* bic */
482     case 1298:	/* and */
483       value = 1298;	/* --> and.  */
484       break;
485     case 1281:	/* mov */
486     case 1300:	/* and */
487       value = 1300;	/* --> and.  */
488       break;
489     case 1285:	/* movs */
490     case 1301:	/* ands */
491       value = 1301;	/* --> ands.  */
492       break;
493     case 2049:	/* cmple */
494     case 1336:	/* cmpge */
495       value = 1336;	/* --> cmpge.  */
496       break;
497     case 2052:	/* cmplt */
498     case 1339:	/* cmpgt */
499       value = 1339;	/* --> cmpgt.  */
500       break;
501     case 2050:	/* cmplo */
502     case 1341:	/* cmphi */
503       value = 1341;	/* --> cmphi.  */
504       break;
505     case 2051:	/* cmpls */
506     case 1344:	/* cmphs */
507       value = 1344;	/* --> cmphs.  */
508       break;
509     case 1278:	/* mov */
510     case 1366:	/* cpy */
511       value = 1366;	/* --> cpy.  */
512       break;
513     case 1280:	/* mov */
514     case 1367:	/* cpy */
515       value = 1367;	/* --> cpy.  */
516       break;
517     case 2059:	/* fmov */
518     case 1283:	/* mov */
519     case 1368:	/* cpy */
520       value = 1368;	/* --> cpy.  */
521       break;
522     case 1273:	/* mov */
523     case 1380:	/* dup */
524       value = 1380;	/* --> dup.  */
525       break;
526     case 1275:	/* mov */
527     case 1272:	/* mov */
528     case 1381:	/* dup */
529       value = 1381;	/* --> dup.  */
530       break;
531     case 2058:	/* fmov */
532     case 1277:	/* mov */
533     case 1382:	/* dup */
534       value = 1382;	/* --> dup.  */
535       break;
536     case 1276:	/* mov */
537     case 1383:	/* dupm */
538       value = 1383;	/* --> dupm.  */
539       break;
540     case 2053:	/* eon */
541     case 1385:	/* eor */
542       value = 1385;	/* --> eor.  */
543       break;
544     case 1286:	/* not */
545     case 1387:	/* eor */
546       value = 1387;	/* --> eor.  */
547       break;
548     case 1287:	/* nots */
549     case 1388:	/* eors */
550       value = 1388;	/* --> eors.  */
551       break;
552     case 2054:	/* facle */
553     case 1393:	/* facge */
554       value = 1393;	/* --> facge.  */
555       break;
556     case 2055:	/* faclt */
557     case 1394:	/* facgt */
558       value = 1394;	/* --> facgt.  */
559       break;
560     case 2056:	/* fcmle */
561     case 1407:	/* fcmge */
562       value = 1407;	/* --> fcmge.  */
563       break;
564     case 2057:	/* fcmlt */
565     case 1409:	/* fcmgt */
566       value = 1409;	/* --> fcmgt.  */
567       break;
568     case 1270:	/* fmov */
569     case 1415:	/* fcpy */
570       value = 1415;	/* --> fcpy.  */
571       break;
572     case 1269:	/* fmov */
573     case 1438:	/* fdup */
574       value = 1438;	/* --> fdup.  */
575       break;
576     case 1271:	/* mov */
577     case 1769:	/* orr */
578       value = 1769;	/* --> orr.  */
579       break;
580     case 2060:	/* orn */
581     case 1770:	/* orr */
582       value = 1770;	/* --> orr.  */
583       break;
584     case 1274:	/* mov */
585     case 1772:	/* orr */
586       value = 1772;	/* --> orr.  */
587       break;
588     case 1284:	/* movs */
589     case 1773:	/* orrs */
590       value = 1773;	/* --> orrs.  */
591       break;
592     case 1279:	/* mov */
593     case 1835:	/* sel */
594       value = 1835;	/* --> sel.  */
595       break;
596     case 1282:	/* mov */
597     case 1836:	/* sel */
598       value = 1836;	/* --> sel.  */
599       break;
600     default: return NULL;
601     }
602 
603   return aarch64_opcode_table + value;
604 }
605 
606 bool
aarch64_insert_operand(const aarch64_operand * self,const aarch64_opnd_info * info,aarch64_insn * code,const aarch64_inst * inst,aarch64_operand_error * errors)607 aarch64_insert_operand (const aarch64_operand *self,
608 			   const aarch64_opnd_info *info,
609 			   aarch64_insn *code, const aarch64_inst *inst,
610 			   aarch64_operand_error *errors)
611 {
612   /* Use the index as the key.  */
613   int key = self - aarch64_operands;
614   switch (key)
615     {
616     case 1:
617     case 2:
618     case 3:
619     case 4:
620     case 5:
621     case 6:
622     case 7:
623     case 8:
624     case 9:
625     case 10:
626     case 11:
627     case 12:
628     case 13:
629     case 17:
630     case 18:
631     case 19:
632     case 20:
633     case 22:
634     case 23:
635     case 24:
636     case 25:
637     case 26:
638     case 27:
639     case 28:
640     case 29:
641     case 30:
642     case 31:
643     case 167:
644     case 168:
645     case 169:
646     case 170:
647     case 171:
648     case 172:
649     case 173:
650     case 174:
651     case 175:
652     case 176:
653     case 191:
654     case 192:
655     case 193:
656     case 194:
657     case 195:
658     case 196:
659     case 197:
660     case 198:
661     case 199:
662     case 205:
663     case 208:
664     case 210:
665     case 211:
666     case 214:
667       return aarch64_ins_regno (self, info, code, inst, errors);
668     case 15:
669       return aarch64_ins_reg_extended (self, info, code, inst, errors);
670     case 16:
671       return aarch64_ins_reg_shifted (self, info, code, inst, errors);
672     case 21:
673       return aarch64_ins_ft (self, info, code, inst, errors);
674     case 32:
675     case 33:
676     case 34:
677     case 35:
678     case 222:
679       return aarch64_ins_reglane (self, info, code, inst, errors);
680     case 36:
681       return aarch64_ins_reglist (self, info, code, inst, errors);
682     case 37:
683       return aarch64_ins_ldst_reglist (self, info, code, inst, errors);
684     case 38:
685       return aarch64_ins_ldst_reglist_r (self, info, code, inst, errors);
686     case 39:
687       return aarch64_ins_ldst_elemlist (self, info, code, inst, errors);
688     case 40:
689     case 41:
690     case 42:
691     case 43:
692     case 53:
693     case 54:
694     case 55:
695     case 56:
696     case 57:
697     case 58:
698     case 59:
699     case 60:
700     case 61:
701     case 62:
702     case 63:
703     case 64:
704     case 65:
705     case 66:
706     case 67:
707     case 68:
708     case 69:
709     case 81:
710     case 82:
711     case 83:
712     case 84:
713     case 164:
714     case 166:
715     case 183:
716     case 184:
717     case 185:
718     case 186:
719     case 187:
720     case 188:
721     case 189:
722     case 190:
723     case 215:
724     case 221:
725       return aarch64_ins_imm (self, info, code, inst, errors);
726     case 44:
727     case 45:
728       return aarch64_ins_advsimd_imm_shift (self, info, code, inst, errors);
729     case 46:
730     case 47:
731     case 48:
732       return aarch64_ins_advsimd_imm_modified (self, info, code, inst, errors);
733     case 52:
734     case 154:
735       return aarch64_ins_fpimm (self, info, code, inst, errors);
736     case 70:
737     case 162:
738       return aarch64_ins_limm (self, info, code, inst, errors);
739     case 71:
740       return aarch64_ins_aimm (self, info, code, inst, errors);
741     case 72:
742       return aarch64_ins_imm_half (self, info, code, inst, errors);
743     case 73:
744       return aarch64_ins_fbits (self, info, code, inst, errors);
745     case 75:
746     case 76:
747     case 159:
748       return aarch64_ins_imm_rotate2 (self, info, code, inst, errors);
749     case 77:
750     case 158:
751     case 160:
752       return aarch64_ins_imm_rotate1 (self, info, code, inst, errors);
753     case 78:
754     case 79:
755       return aarch64_ins_cond (self, info, code, inst, errors);
756     case 85:
757     case 94:
758       return aarch64_ins_addr_simple (self, info, code, inst, errors);
759     case 86:
760       return aarch64_ins_addr_regoff (self, info, code, inst, errors);
761     case 87:
762     case 88:
763     case 89:
764     case 91:
765     case 93:
766       return aarch64_ins_addr_simm (self, info, code, inst, errors);
767     case 90:
768       return aarch64_ins_addr_simm10 (self, info, code, inst, errors);
769     case 92:
770       return aarch64_ins_addr_uimm12 (self, info, code, inst, errors);
771     case 95:
772       return aarch64_ins_addr_offset (self, info, code, inst, errors);
773     case 96:
774       return aarch64_ins_simd_addr_post (self, info, code, inst, errors);
775     case 97:
776       return aarch64_ins_sysreg (self, info, code, inst, errors);
777     case 98:
778       return aarch64_ins_pstatefield (self, info, code, inst, errors);
779     case 99:
780     case 100:
781     case 101:
782     case 102:
783     case 103:
784       return aarch64_ins_sysins_op (self, info, code, inst, errors);
785     case 104:
786     case 106:
787       return aarch64_ins_barrier (self, info, code, inst, errors);
788     case 105:
789       return aarch64_ins_barrier_dsb_nxs (self, info, code, inst, errors);
790     case 107:
791       return aarch64_ins_prfop (self, info, code, inst, errors);
792     case 108:
793       return aarch64_ins_none (self, info, code, inst, errors);
794     case 109:
795       return aarch64_ins_hint (self, info, code, inst, errors);
796     case 110:
797     case 111:
798       return aarch64_ins_sve_addr_ri_s4 (self, info, code, inst, errors);
799     case 112:
800     case 113:
801     case 114:
802     case 115:
803       return aarch64_ins_sve_addr_ri_s4xvl (self, info, code, inst, errors);
804     case 116:
805       return aarch64_ins_sve_addr_ri_s6xvl (self, info, code, inst, errors);
806     case 117:
807       return aarch64_ins_sve_addr_ri_s9xvl (self, info, code, inst, errors);
808     case 118:
809     case 119:
810     case 120:
811     case 121:
812       return aarch64_ins_sve_addr_ri_u6 (self, info, code, inst, errors);
813     case 122:
814     case 123:
815     case 124:
816     case 125:
817     case 126:
818     case 127:
819     case 128:
820     case 129:
821     case 130:
822     case 131:
823     case 132:
824     case 133:
825     case 134:
826     case 135:
827     case 136:
828       return aarch64_ins_sve_addr_rr_lsl (self, info, code, inst, errors);
829     case 137:
830     case 138:
831     case 139:
832     case 140:
833     case 141:
834     case 142:
835     case 143:
836     case 144:
837       return aarch64_ins_sve_addr_rz_xtw (self, info, code, inst, errors);
838     case 145:
839     case 146:
840     case 147:
841     case 148:
842       return aarch64_ins_sve_addr_zi_u5 (self, info, code, inst, errors);
843     case 149:
844       return aarch64_ins_sve_addr_zz_lsl (self, info, code, inst, errors);
845     case 150:
846       return aarch64_ins_sve_addr_zz_sxtw (self, info, code, inst, errors);
847     case 151:
848       return aarch64_ins_sve_addr_zz_uxtw (self, info, code, inst, errors);
849     case 152:
850       return aarch64_ins_sve_aimm (self, info, code, inst, errors);
851     case 153:
852       return aarch64_ins_sve_asimm (self, info, code, inst, errors);
853     case 155:
854       return aarch64_ins_sve_float_half_one (self, info, code, inst, errors);
855     case 156:
856       return aarch64_ins_sve_float_half_two (self, info, code, inst, errors);
857     case 157:
858       return aarch64_ins_sve_float_zero_one (self, info, code, inst, errors);
859     case 161:
860       return aarch64_ins_inv_limm (self, info, code, inst, errors);
861     case 163:
862       return aarch64_ins_sve_limm_mov (self, info, code, inst, errors);
863     case 165:
864       return aarch64_ins_sve_scale (self, info, code, inst, errors);
865     case 177:
866     case 178:
867     case 179:
868       return aarch64_ins_sve_shlimm (self, info, code, inst, errors);
869     case 180:
870     case 181:
871     case 182:
872       return aarch64_ins_sve_shrimm (self, info, code, inst, errors);
873     case 200:
874     case 201:
875     case 202:
876     case 203:
877     case 204:
878       return aarch64_ins_sve_quad_index (self, info, code, inst, errors);
879     case 206:
880       return aarch64_ins_sve_index (self, info, code, inst, errors);
881     case 207:
882     case 209:
883       return aarch64_ins_sve_reglist (self, info, code, inst, errors);
884     case 212:
885     case 213:
886     case 216:
887       return aarch64_ins_sme_za_hv_tiles (self, info, code, inst, errors);
888     case 217:
889       return aarch64_ins_sme_za_array (self, info, code, inst, errors);
890     case 218:
891       return aarch64_ins_sme_addr_ri_u4xvl (self, info, code, inst, errors);
892     case 219:
893       return aarch64_ins_sme_sm_za (self, info, code, inst, errors);
894     case 220:
895       return aarch64_ins_sme_pred_reg_with_index (self, info, code, inst, errors);
896     case 223:
897     case 224:
898     case 225:
899       return aarch64_ins_x0_to_x30 (self, info, code, inst, errors);
900     default: assert (0); abort ();
901     }
902 }
903