[AArch64][PATCH 5/14] Support FP16 Scalar Two Register Misc. instructions.
[deliverable/binutils-gdb.git] / opcodes / aarch64-dis-2.c
1 /* This file is automatically generated by aarch64-gen. Do not edit! */
2 /* Copyright (C) 2012-2015 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-dis.h"
23
24 /* Called by aarch64_opcode_lookup. */
25
26 static int
27 aarch64_opcode_lookup_1 (uint32_t word)
28 {
29 if (((word >> 26) & 0x1) == 0)
30 {
31 if (((word >> 25) & 0x1) == 0)
32 {
33 if (((word >> 27) & 0x1) == 0)
34 {
35 if (((word >> 24) & 0x1) == 0)
36 {
37 if (((word >> 31) & 0x1) == 0)
38 {
39 /* 33222222222211111111110000000000
40 10987654321098765432109876543210
41 xxxxxxxxxxxxxxxxxxxxxxxx0000xxx0
42 adr. */
43 return 1089;
44 }
45 else
46 {
47 /* 33222222222211111111110000000000
48 10987654321098765432109876543210
49 xxxxxxxxxxxxxxxxxxxxxxxx0000xxx1
50 adrp. */
51 return 1090;
52 }
53 }
54 else
55 {
56 if (((word >> 29) & 0x1) == 0)
57 {
58 if (((word >> 30) & 0x1) == 0)
59 {
60 /* 33222222222211111111110000000000
61 10987654321098765432109876543210
62 xxxxxxxxxxxxxxxxxxxxxxxx1000x00x
63 add. */
64 return 12;
65 }
66 else
67 {
68 /* 33222222222211111111110000000000
69 10987654321098765432109876543210
70 xxxxxxxxxxxxxxxxxxxxxxxx1000x01x
71 sub. */
72 return 16;
73 }
74 }
75 else
76 {
77 if (((word >> 30) & 0x1) == 0)
78 {
79 /* 33222222222211111111110000000000
80 10987654321098765432109876543210
81 xxxxxxxxxxxxxxxxxxxxxxxx1000x10x
82 adds. */
83 return 14;
84 }
85 else
86 {
87 /* 33222222222211111111110000000000
88 10987654321098765432109876543210
89 xxxxxxxxxxxxxxxxxxxxxxxx1000x11x
90 subs. */
91 return 17;
92 }
93 }
94 }
95 }
96 else
97 {
98 if (((word >> 28) & 0x1) == 0)
99 {
100 if (((word >> 22) & 0x1) == 0)
101 {
102 if (((word >> 23) & 0x1) == 0)
103 {
104 if (((word >> 29) & 0x1) == 0)
105 {
106 if (((word >> 15) & 0x1) == 0)
107 {
108 if (((word >> 21) & 0x1) == 0)
109 {
110 if (((word >> 31) & 0x1) == 0)
111 {
112 if (((word >> 30) & 0x1) == 0)
113 {
114 /* 33222222222211111111110000000000
115 10987654321098765432109876543210
116 xxxxxxxxxxxxxxx0xxxxx000x0010000
117 stxrb. */
118 return 847;
119 }
120 else
121 {
122 /* 33222222222211111111110000000000
123 10987654321098765432109876543210
124 xxxxxxxxxxxxxxx0xxxxx000x0010010
125 stxrh. */
126 return 853;
127 }
128 }
129 else
130 {
131 /* 33222222222211111111110000000000
132 10987654321098765432109876543210
133 xxxxxxxxxxxxxxx0xxxxx000x00100x1
134 stxr. */
135 return 859;
136 }
137 }
138 else
139 {
140 if (((word >> 31) & 0x1) == 0)
141 {
142 /* 33222222222211111111110000000000
143 10987654321098765432109876543210
144 xxxxxxxxxxxxxxx0xxxxx100x00100x0
145 casp. */
146 return 924;
147 }
148 else
149 {
150 /* 33222222222211111111110000000000
151 10987654321098765432109876543210
152 xxxxxxxxxxxxxxx0xxxxx100x00100x1
153 stxp. */
154 return 861;
155 }
156 }
157 }
158 else
159 {
160 if (((word >> 21) & 0x1) == 0)
161 {
162 if (((word >> 31) & 0x1) == 0)
163 {
164 if (((word >> 30) & 0x1) == 0)
165 {
166 /* 33222222222211111111110000000000
167 10987654321098765432109876543210
168 xxxxxxxxxxxxxxx1xxxxx000x0010000
169 stlxrb. */
170 return 848;
171 }
172 else
173 {
174 /* 33222222222211111111110000000000
175 10987654321098765432109876543210
176 xxxxxxxxxxxxxxx1xxxxx000x0010010
177 stlxrh. */
178 return 854;
179 }
180 }
181 else
182 {
183 /* 33222222222211111111110000000000
184 10987654321098765432109876543210
185 xxxxxxxxxxxxxxx1xxxxx000x00100x1
186 stlxr. */
187 return 860;
188 }
189 }
190 else
191 {
192 if (((word >> 31) & 0x1) == 0)
193 {
194 /* 33222222222211111111110000000000
195 10987654321098765432109876543210
196 xxxxxxxxxxxxxxx1xxxxx100x00100x0
197 caspl. */
198 return 926;
199 }
200 else
201 {
202 /* 33222222222211111111110000000000
203 10987654321098765432109876543210
204 xxxxxxxxxxxxxxx1xxxxx100x00100x1
205 stlxp. */
206 return 862;
207 }
208 }
209 }
210 }
211 else
212 {
213 /* 33222222222211111111110000000000
214 10987654321098765432109876543210
215 xxxxxxxxxxxxxxxxxxxxxx00x00101xx
216 stnp. */
217 return 875;
218 }
219 }
220 else
221 {
222 if (((word >> 29) & 0x1) == 0)
223 {
224 if (((word >> 15) & 0x1) == 0)
225 {
226 if (((word >> 21) & 0x1) == 0)
227 {
228 if (((word >> 31) & 0x1) == 0)
229 {
230 /* 33222222222211111111110000000000
231 10987654321098765432109876543210
232 xxxxxxxxxxxxxxx0xxxxx001x00100x0
233 stllrb. */
234 return 873;
235 }
236 else
237 {
238 /* 33222222222211111111110000000000
239 10987654321098765432109876543210
240 xxxxxxxxxxxxxxx0xxxxx001x00100x1
241 stllr. */
242 return 872;
243 }
244 }
245 else
246 {
247 if (((word >> 31) & 0x1) == 0)
248 {
249 if (((word >> 30) & 0x1) == 0)
250 {
251 /* 33222222222211111111110000000000
252 10987654321098765432109876543210
253 xxxxxxxxxxxxxxx0xxxxx101x0010000
254 casb. */
255 return 912;
256 }
257 else
258 {
259 /* 33222222222211111111110000000000
260 10987654321098765432109876543210
261 xxxxxxxxxxxxxxx0xxxxx101x0010010
262 cash. */
263 return 913;
264 }
265 }
266 else
267 {
268 /* 33222222222211111111110000000000
269 10987654321098765432109876543210
270 xxxxxxxxxxxxxxx0xxxxx101x00100x1
271 cas. */
272 return 914;
273 }
274 }
275 }
276 else
277 {
278 if (((word >> 21) & 0x1) == 0)
279 {
280 if (((word >> 31) & 0x1) == 0)
281 {
282 if (((word >> 30) & 0x1) == 0)
283 {
284 /* 33222222222211111111110000000000
285 10987654321098765432109876543210
286 xxxxxxxxxxxxxxx1xxxxx001x0010000
287 stlrb. */
288 return 851;
289 }
290 else
291 {
292 /* 33222222222211111111110000000000
293 10987654321098765432109876543210
294 xxxxxxxxxxxxxxx1xxxxx001x0010010
295 stlrh. */
296 return 857;
297 }
298 }
299 else
300 {
301 /* 33222222222211111111110000000000
302 10987654321098765432109876543210
303 xxxxxxxxxxxxxxx1xxxxx001x00100x1
304 stlr. */
305 return 867;
306 }
307 }
308 else
309 {
310 if (((word >> 31) & 0x1) == 0)
311 {
312 if (((word >> 30) & 0x1) == 0)
313 {
314 /* 33222222222211111111110000000000
315 10987654321098765432109876543210
316 xxxxxxxxxxxxxxx1xxxxx101x0010000
317 caslb. */
318 return 916;
319 }
320 else
321 {
322 /* 33222222222211111111110000000000
323 10987654321098765432109876543210
324 xxxxxxxxxxxxxxx1xxxxx101x0010010
325 caslh. */
326 return 919;
327 }
328 }
329 else
330 {
331 /* 33222222222211111111110000000000
332 10987654321098765432109876543210
333 xxxxxxxxxxxxxxx1xxxxx101x00100x1
334 casl. */
335 return 922;
336 }
337 }
338 }
339 }
340 else
341 {
342 /* 33222222222211111111110000000000
343 10987654321098765432109876543210
344 xxxxxxxxxxxxxxxxxxxxxx01x00101xx
345 stp. */
346 return 884;
347 }
348 }
349 }
350 else
351 {
352 if (((word >> 23) & 0x1) == 0)
353 {
354 if (((word >> 29) & 0x1) == 0)
355 {
356 if (((word >> 15) & 0x1) == 0)
357 {
358 if (((word >> 21) & 0x1) == 0)
359 {
360 if (((word >> 31) & 0x1) == 0)
361 {
362 if (((word >> 30) & 0x1) == 0)
363 {
364 /* 33222222222211111111110000000000
365 10987654321098765432109876543210
366 xxxxxxxxxxxxxxx0xxxxx010x0010000
367 ldxrb. */
368 return 849;
369 }
370 else
371 {
372 /* 33222222222211111111110000000000
373 10987654321098765432109876543210
374 xxxxxxxxxxxxxxx0xxxxx010x0010010
375 ldxrh. */
376 return 855;
377 }
378 }
379 else
380 {
381 /* 33222222222211111111110000000000
382 10987654321098765432109876543210
383 xxxxxxxxxxxxxxx0xxxxx010x00100x1
384 ldxr. */
385 return 863;
386 }
387 }
388 else
389 {
390 if (((word >> 31) & 0x1) == 0)
391 {
392 /* 33222222222211111111110000000000
393 10987654321098765432109876543210
394 xxxxxxxxxxxxxxx0xxxxx110x00100x0
395 caspa. */
396 return 925;
397 }
398 else
399 {
400 /* 33222222222211111111110000000000
401 10987654321098765432109876543210
402 xxxxxxxxxxxxxxx0xxxxx110x00100x1
403 ldxp. */
404 return 865;
405 }
406 }
407 }
408 else
409 {
410 if (((word >> 21) & 0x1) == 0)
411 {
412 if (((word >> 31) & 0x1) == 0)
413 {
414 if (((word >> 30) & 0x1) == 0)
415 {
416 /* 33222222222211111111110000000000
417 10987654321098765432109876543210
418 xxxxxxxxxxxxxxx1xxxxx010x0010000
419 ldaxrb. */
420 return 850;
421 }
422 else
423 {
424 /* 33222222222211111111110000000000
425 10987654321098765432109876543210
426 xxxxxxxxxxxxxxx1xxxxx010x0010010
427 ldaxrh. */
428 return 856;
429 }
430 }
431 else
432 {
433 /* 33222222222211111111110000000000
434 10987654321098765432109876543210
435 xxxxxxxxxxxxxxx1xxxxx010x00100x1
436 ldaxr. */
437 return 864;
438 }
439 }
440 else
441 {
442 if (((word >> 31) & 0x1) == 0)
443 {
444 /* 33222222222211111111110000000000
445 10987654321098765432109876543210
446 xxxxxxxxxxxxxxx1xxxxx110x00100x0
447 caspal. */
448 return 927;
449 }
450 else
451 {
452 /* 33222222222211111111110000000000
453 10987654321098765432109876543210
454 xxxxxxxxxxxxxxx1xxxxx110x00100x1
455 ldaxp. */
456 return 866;
457 }
458 }
459 }
460 }
461 else
462 {
463 if (((word >> 30) & 0x1) == 0)
464 {
465 /* 33222222222211111111110000000000
466 10987654321098765432109876543210
467 xxxxxxxxxxxxxxxxxxxxxx10x001010x
468 ldnp. */
469 return 876;
470 }
471 else
472 {
473 /* 33222222222211111111110000000000
474 10987654321098765432109876543210
475 xxxxxxxxxxxxxxxxxxxxxx10x001011x
476 ldpsw. */
477 return 883;
478 }
479 }
480 }
481 else
482 {
483 if (((word >> 29) & 0x1) == 0)
484 {
485 if (((word >> 15) & 0x1) == 0)
486 {
487 if (((word >> 21) & 0x1) == 0)
488 {
489 if (((word >> 31) & 0x1) == 0)
490 {
491 if (((word >> 30) & 0x1) == 0)
492 {
493 /* 33222222222211111111110000000000
494 10987654321098765432109876543210
495 xxxxxxxxxxxxxxx0xxxxx011x0010000
496 ldlarb. */
497 return 870;
498 }
499 else
500 {
501 /* 33222222222211111111110000000000
502 10987654321098765432109876543210
503 xxxxxxxxxxxxxxx0xxxxx011x0010010
504 ldlarh. */
505 return 871;
506 }
507 }
508 else
509 {
510 /* 33222222222211111111110000000000
511 10987654321098765432109876543210
512 xxxxxxxxxxxxxxx0xxxxx011x00100x1
513 ldlar. */
514 return 869;
515 }
516 }
517 else
518 {
519 if (((word >> 31) & 0x1) == 0)
520 {
521 if (((word >> 30) & 0x1) == 0)
522 {
523 /* 33222222222211111111110000000000
524 10987654321098765432109876543210
525 xxxxxxxxxxxxxxx0xxxxx111x0010000
526 casab. */
527 return 915;
528 }
529 else
530 {
531 /* 33222222222211111111110000000000
532 10987654321098765432109876543210
533 xxxxxxxxxxxxxxx0xxxxx111x0010010
534 casah. */
535 return 918;
536 }
537 }
538 else
539 {
540 /* 33222222222211111111110000000000
541 10987654321098765432109876543210
542 xxxxxxxxxxxxxxx0xxxxx111x00100x1
543 casa. */
544 return 921;
545 }
546 }
547 }
548 else
549 {
550 if (((word >> 21) & 0x1) == 0)
551 {
552 if (((word >> 31) & 0x1) == 0)
553 {
554 if (((word >> 30) & 0x1) == 0)
555 {
556 /* 33222222222211111111110000000000
557 10987654321098765432109876543210
558 xxxxxxxxxxxxxxx1xxxxx011x0010000
559 ldarb. */
560 return 852;
561 }
562 else
563 {
564 /* 33222222222211111111110000000000
565 10987654321098765432109876543210
566 xxxxxxxxxxxxxxx1xxxxx011x0010010
567 ldarh. */
568 return 858;
569 }
570 }
571 else
572 {
573 /* 33222222222211111111110000000000
574 10987654321098765432109876543210
575 xxxxxxxxxxxxxxx1xxxxx011x00100x1
576 ldar. */
577 return 868;
578 }
579 }
580 else
581 {
582 if (((word >> 31) & 0x1) == 0)
583 {
584 if (((word >> 30) & 0x1) == 0)
585 {
586 /* 33222222222211111111110000000000
587 10987654321098765432109876543210
588 xxxxxxxxxxxxxxx1xxxxx111x0010000
589 casalb. */
590 return 917;
591 }
592 else
593 {
594 /* 33222222222211111111110000000000
595 10987654321098765432109876543210
596 xxxxxxxxxxxxxxx1xxxxx111x0010010
597 casalh. */
598 return 920;
599 }
600 }
601 else
602 {
603 /* 33222222222211111111110000000000
604 10987654321098765432109876543210
605 xxxxxxxxxxxxxxx1xxxxx111x00100x1
606 casal. */
607 return 923;
608 }
609 }
610 }
611 }
612 else
613 {
614 if (((word >> 30) & 0x1) == 0)
615 {
616 /* 33222222222211111111110000000000
617 10987654321098765432109876543210
618 xxxxxxxxxxxxxxxxxxxxxx11x001010x
619 ldp. */
620 return 885;
621 }
622 else
623 {
624 /* 33222222222211111111110000000000
625 10987654321098765432109876543210
626 xxxxxxxxxxxxxxxxxxxxxx11x001011x
627 ldpsw. */
628 return 888;
629 }
630 }
631 }
632 }
633 }
634 else
635 {
636 if (((word >> 24) & 0x1) == 0)
637 {
638 if (((word >> 29) & 0x1) == 0)
639 {
640 if (((word >> 31) & 0x1) == 0)
641 {
642 /* 33222222222211111111110000000000
643 10987654321098765432109876543210
644 xxxxxxxxxxxxxxxxxxxxxxxx000110x0
645 ldr. */
646 return 889;
647 }
648 else
649 {
650 if (((word >> 30) & 0x1) == 0)
651 {
652 /* 33222222222211111111110000000000
653 10987654321098765432109876543210
654 xxxxxxxxxxxxxxxxxxxxxxxx00011001
655 ldrsw. */
656 return 891;
657 }
658 else
659 {
660 /* 33222222222211111111110000000000
661 10987654321098765432109876543210
662 xxxxxxxxxxxxxxxxxxxxxxxx00011011
663 prfm. */
664 return 892;
665 }
666 }
667 }
668 else
669 {
670 if (((word >> 10) & 0x1) == 0)
671 {
672 if (((word >> 11) & 0x1) == 0)
673 {
674 if (((word >> 21) & 0x1) == 0)
675 {
676 if (((word >> 23) & 0x1) == 0)
677 {
678 if (((word >> 22) & 0x1) == 0)
679 {
680 if (((word >> 31) & 0x1) == 0)
681 {
682 if (((word >> 30) & 0x1) == 0)
683 {
684 /* 33222222222211111111110000000000
685 10987654321098765432109876543210
686 xxxxxxxxxx00xxxxxxxxx00000011100
687 sturb. */
688 return 835;
689 }
690 else
691 {
692 /* 33222222222211111111110000000000
693 10987654321098765432109876543210
694 xxxxxxxxxx00xxxxxxxxx00000011110
695 sturh. */
696 return 840;
697 }
698 }
699 else
700 {
701 /* 33222222222211111111110000000000
702 10987654321098765432109876543210
703 xxxxxxxxxx00xxxxxxxxx000000111x1
704 stur. */
705 return 843;
706 }
707 }
708 else
709 {
710 if (((word >> 31) & 0x1) == 0)
711 {
712 if (((word >> 30) & 0x1) == 0)
713 {
714 /* 33222222222211111111110000000000
715 10987654321098765432109876543210
716 xxxxxxxxxx00xxxxxxxxx01000011100
717 ldurb. */
718 return 836;
719 }
720 else
721 {
722 /* 33222222222211111111110000000000
723 10987654321098765432109876543210
724 xxxxxxxxxx00xxxxxxxxx01000011110
725 ldurh. */
726 return 841;
727 }
728 }
729 else
730 {
731 /* 33222222222211111111110000000000
732 10987654321098765432109876543210
733 xxxxxxxxxx00xxxxxxxxx010000111x1
734 ldur. */
735 return 844;
736 }
737 }
738 }
739 else
740 {
741 if (((word >> 30) & 0x1) == 0)
742 {
743 if (((word >> 31) & 0x1) == 0)
744 {
745 /* 33222222222211111111110000000000
746 10987654321098765432109876543210
747 xxxxxxxxxx00xxxxxxxxx0x100011100
748 ldursb. */
749 return 837;
750 }
751 else
752 {
753 /* 33222222222211111111110000000000
754 10987654321098765432109876543210
755 xxxxxxxxxx00xxxxxxxxx0x100011101
756 ldursw. */
757 return 845;
758 }
759 }
760 else
761 {
762 if (((word >> 31) & 0x1) == 0)
763 {
764 /* 33222222222211111111110000000000
765 10987654321098765432109876543210
766 xxxxxxxxxx00xxxxxxxxx0x100011110
767 ldursh. */
768 return 842;
769 }
770 else
771 {
772 /* 33222222222211111111110000000000
773 10987654321098765432109876543210
774 xxxxxxxxxx00xxxxxxxxx0x100011111
775 prfum. */
776 return 846;
777 }
778 }
779 }
780 }
781 else
782 {
783 if (((word >> 12) & 0x1) == 0)
784 {
785 if (((word >> 13) & 0x1) == 0)
786 {
787 if (((word >> 14) & 0x1) == 0)
788 {
789 if (((word >> 15) & 0x1) == 0)
790 {
791 if (((word >> 22) & 0x1) == 0)
792 {
793 if (((word >> 23) & 0x1) == 0)
794 {
795 if (((word >> 31) & 0x1) == 0)
796 {
797 if (((word >> 30) & 0x1) == 0)
798 {
799 /* 33222222222211111111110000000000
800 10987654321098765432109876543210
801 xxxxxxxxxx000000xxxxx10000011100
802 ldaddb. */
803 return 940;
804 }
805 else
806 {
807 /* 33222222222211111111110000000000
808 10987654321098765432109876543210
809 xxxxxxxxxx000000xxxxx10000011110
810 ldaddh. */
811 return 941;
812 }
813 }
814 else
815 {
816 /* 33222222222211111111110000000000
817 10987654321098765432109876543210
818 xxxxxxxxxx000000xxxxx100000111x1
819 ldadd. */
820 return 942;
821 }
822 }
823 else
824 {
825 if (((word >> 31) & 0x1) == 0)
826 {
827 if (((word >> 30) & 0x1) == 0)
828 {
829 /* 33222222222211111111110000000000
830 10987654321098765432109876543210
831 xxxxxxxxxx000000xxxxx10100011100
832 ldaddab. */
833 return 943;
834 }
835 else
836 {
837 /* 33222222222211111111110000000000
838 10987654321098765432109876543210
839 xxxxxxxxxx000000xxxxx10100011110
840 ldaddah. */
841 return 946;
842 }
843 }
844 else
845 {
846 /* 33222222222211111111110000000000
847 10987654321098765432109876543210
848 xxxxxxxxxx000000xxxxx101000111x1
849 ldadda. */
850 return 949;
851 }
852 }
853 }
854 else
855 {
856 if (((word >> 23) & 0x1) == 0)
857 {
858 if (((word >> 31) & 0x1) == 0)
859 {
860 if (((word >> 30) & 0x1) == 0)
861 {
862 /* 33222222222211111111110000000000
863 10987654321098765432109876543210
864 xxxxxxxxxx000000xxxxx11000011100
865 ldaddlb. */
866 return 944;
867 }
868 else
869 {
870 /* 33222222222211111111110000000000
871 10987654321098765432109876543210
872 xxxxxxxxxx000000xxxxx11000011110
873 ldaddlh. */
874 return 947;
875 }
876 }
877 else
878 {
879 /* 33222222222211111111110000000000
880 10987654321098765432109876543210
881 xxxxxxxxxx000000xxxxx110000111x1
882 ldaddl. */
883 return 950;
884 }
885 }
886 else
887 {
888 if (((word >> 31) & 0x1) == 0)
889 {
890 if (((word >> 30) & 0x1) == 0)
891 {
892 /* 33222222222211111111110000000000
893 10987654321098765432109876543210
894 xxxxxxxxxx000000xxxxx11100011100
895 ldaddalb. */
896 return 945;
897 }
898 else
899 {
900 /* 33222222222211111111110000000000
901 10987654321098765432109876543210
902 xxxxxxxxxx000000xxxxx11100011110
903 ldaddalh. */
904 return 948;
905 }
906 }
907 else
908 {
909 /* 33222222222211111111110000000000
910 10987654321098765432109876543210
911 xxxxxxxxxx000000xxxxx111000111x1
912 ldaddal. */
913 return 951;
914 }
915 }
916 }
917 }
918 else
919 {
920 if (((word >> 22) & 0x1) == 0)
921 {
922 if (((word >> 23) & 0x1) == 0)
923 {
924 if (((word >> 31) & 0x1) == 0)
925 {
926 if (((word >> 30) & 0x1) == 0)
927 {
928 /* 33222222222211111111110000000000
929 10987654321098765432109876543210
930 xxxxxxxxxx000001xxxxx10000011100
931 swpb. */
932 return 928;
933 }
934 else
935 {
936 /* 33222222222211111111110000000000
937 10987654321098765432109876543210
938 xxxxxxxxxx000001xxxxx10000011110
939 swph. */
940 return 929;
941 }
942 }
943 else
944 {
945 /* 33222222222211111111110000000000
946 10987654321098765432109876543210
947 xxxxxxxxxx000001xxxxx100000111x1
948 swp. */
949 return 930;
950 }
951 }
952 else
953 {
954 if (((word >> 31) & 0x1) == 0)
955 {
956 if (((word >> 30) & 0x1) == 0)
957 {
958 /* 33222222222211111111110000000000
959 10987654321098765432109876543210
960 xxxxxxxxxx000001xxxxx10100011100
961 swpab. */
962 return 931;
963 }
964 else
965 {
966 /* 33222222222211111111110000000000
967 10987654321098765432109876543210
968 xxxxxxxxxx000001xxxxx10100011110
969 swpah. */
970 return 934;
971 }
972 }
973 else
974 {
975 /* 33222222222211111111110000000000
976 10987654321098765432109876543210
977 xxxxxxxxxx000001xxxxx101000111x1
978 swpa. */
979 return 937;
980 }
981 }
982 }
983 else
984 {
985 if (((word >> 23) & 0x1) == 0)
986 {
987 if (((word >> 31) & 0x1) == 0)
988 {
989 if (((word >> 30) & 0x1) == 0)
990 {
991 /* 33222222222211111111110000000000
992 10987654321098765432109876543210
993 xxxxxxxxxx000001xxxxx11000011100
994 swplb. */
995 return 932;
996 }
997 else
998 {
999 /* 33222222222211111111110000000000
1000 10987654321098765432109876543210
1001 xxxxxxxxxx000001xxxxx11000011110
1002 swplh. */
1003 return 935;
1004 }
1005 }
1006 else
1007 {
1008 /* 33222222222211111111110000000000
1009 10987654321098765432109876543210
1010 xxxxxxxxxx000001xxxxx110000111x1
1011 swpl. */
1012 return 938;
1013 }
1014 }
1015 else
1016 {
1017 if (((word >> 31) & 0x1) == 0)
1018 {
1019 if (((word >> 30) & 0x1) == 0)
1020 {
1021 /* 33222222222211111111110000000000
1022 10987654321098765432109876543210
1023 xxxxxxxxxx000001xxxxx11100011100
1024 swpalb. */
1025 return 933;
1026 }
1027 else
1028 {
1029 /* 33222222222211111111110000000000
1030 10987654321098765432109876543210
1031 xxxxxxxxxx000001xxxxx11100011110
1032 swpalh. */
1033 return 936;
1034 }
1035 }
1036 else
1037 {
1038 /* 33222222222211111111110000000000
1039 10987654321098765432109876543210
1040 xxxxxxxxxx000001xxxxx111000111x1
1041 swpal. */
1042 return 939;
1043 }
1044 }
1045 }
1046 }
1047 }
1048 else
1049 {
1050 if (((word >> 22) & 0x1) == 0)
1051 {
1052 if (((word >> 23) & 0x1) == 0)
1053 {
1054 if (((word >> 31) & 0x1) == 0)
1055 {
1056 if (((word >> 30) & 0x1) == 0)
1057 {
1058 /* 33222222222211111111110000000000
1059 10987654321098765432109876543210
1060 xxxxxxxxxx00001xxxxxx10000011100
1061 ldsmaxb. */
1062 return 988;
1063 }
1064 else
1065 {
1066 /* 33222222222211111111110000000000
1067 10987654321098765432109876543210
1068 xxxxxxxxxx00001xxxxxx10000011110
1069 ldsmaxh. */
1070 return 989;
1071 }
1072 }
1073 else
1074 {
1075 /* 33222222222211111111110000000000
1076 10987654321098765432109876543210
1077 xxxxxxxxxx00001xxxxxx100000111x1
1078 ldsmax. */
1079 return 990;
1080 }
1081 }
1082 else
1083 {
1084 if (((word >> 31) & 0x1) == 0)
1085 {
1086 if (((word >> 30) & 0x1) == 0)
1087 {
1088 /* 33222222222211111111110000000000
1089 10987654321098765432109876543210
1090 xxxxxxxxxx00001xxxxxx10100011100
1091 ldsmaxab. */
1092 return 991;
1093 }
1094 else
1095 {
1096 /* 33222222222211111111110000000000
1097 10987654321098765432109876543210
1098 xxxxxxxxxx00001xxxxxx10100011110
1099 ldsmaxah. */
1100 return 994;
1101 }
1102 }
1103 else
1104 {
1105 /* 33222222222211111111110000000000
1106 10987654321098765432109876543210
1107 xxxxxxxxxx00001xxxxxx101000111x1
1108 ldsmaxa. */
1109 return 997;
1110 }
1111 }
1112 }
1113 else
1114 {
1115 if (((word >> 23) & 0x1) == 0)
1116 {
1117 if (((word >> 31) & 0x1) == 0)
1118 {
1119 if (((word >> 30) & 0x1) == 0)
1120 {
1121 /* 33222222222211111111110000000000
1122 10987654321098765432109876543210
1123 xxxxxxxxxx00001xxxxxx11000011100
1124 ldsmaxlb. */
1125 return 992;
1126 }
1127 else
1128 {
1129 /* 33222222222211111111110000000000
1130 10987654321098765432109876543210
1131 xxxxxxxxxx00001xxxxxx11000011110
1132 ldsmaxlh. */
1133 return 995;
1134 }
1135 }
1136 else
1137 {
1138 /* 33222222222211111111110000000000
1139 10987654321098765432109876543210
1140 xxxxxxxxxx00001xxxxxx110000111x1
1141 ldsmaxl. */
1142 return 998;
1143 }
1144 }
1145 else
1146 {
1147 if (((word >> 31) & 0x1) == 0)
1148 {
1149 if (((word >> 30) & 0x1) == 0)
1150 {
1151 /* 33222222222211111111110000000000
1152 10987654321098765432109876543210
1153 xxxxxxxxxx00001xxxxxx11100011100
1154 ldsmaxalb. */
1155 return 993;
1156 }
1157 else
1158 {
1159 /* 33222222222211111111110000000000
1160 10987654321098765432109876543210
1161 xxxxxxxxxx00001xxxxxx11100011110
1162 ldsmaxalh. */
1163 return 996;
1164 }
1165 }
1166 else
1167 {
1168 /* 33222222222211111111110000000000
1169 10987654321098765432109876543210
1170 xxxxxxxxxx00001xxxxxx111000111x1
1171 ldsmaxal. */
1172 return 999;
1173 }
1174 }
1175 }
1176 }
1177 }
1178 else
1179 {
1180 if (((word >> 14) & 0x1) == 0)
1181 {
1182 if (((word >> 22) & 0x1) == 0)
1183 {
1184 if (((word >> 23) & 0x1) == 0)
1185 {
1186 if (((word >> 31) & 0x1) == 0)
1187 {
1188 if (((word >> 30) & 0x1) == 0)
1189 {
1190 /* 33222222222211111111110000000000
1191 10987654321098765432109876543210
1192 xxxxxxxxxx00010xxxxxx10000011100
1193 ldeorb. */
1194 return 964;
1195 }
1196 else
1197 {
1198 /* 33222222222211111111110000000000
1199 10987654321098765432109876543210
1200 xxxxxxxxxx00010xxxxxx10000011110
1201 ldeorh. */
1202 return 965;
1203 }
1204 }
1205 else
1206 {
1207 /* 33222222222211111111110000000000
1208 10987654321098765432109876543210
1209 xxxxxxxxxx00010xxxxxx100000111x1
1210 ldeor. */
1211 return 966;
1212 }
1213 }
1214 else
1215 {
1216 if (((word >> 31) & 0x1) == 0)
1217 {
1218 if (((word >> 30) & 0x1) == 0)
1219 {
1220 /* 33222222222211111111110000000000
1221 10987654321098765432109876543210
1222 xxxxxxxxxx00010xxxxxx10100011100
1223 ldeorab. */
1224 return 967;
1225 }
1226 else
1227 {
1228 /* 33222222222211111111110000000000
1229 10987654321098765432109876543210
1230 xxxxxxxxxx00010xxxxxx10100011110
1231 ldeorah. */
1232 return 970;
1233 }
1234 }
1235 else
1236 {
1237 /* 33222222222211111111110000000000
1238 10987654321098765432109876543210
1239 xxxxxxxxxx00010xxxxxx101000111x1
1240 ldeora. */
1241 return 973;
1242 }
1243 }
1244 }
1245 else
1246 {
1247 if (((word >> 23) & 0x1) == 0)
1248 {
1249 if (((word >> 31) & 0x1) == 0)
1250 {
1251 if (((word >> 30) & 0x1) == 0)
1252 {
1253 /* 33222222222211111111110000000000
1254 10987654321098765432109876543210
1255 xxxxxxxxxx00010xxxxxx11000011100
1256 ldeorlb. */
1257 return 968;
1258 }
1259 else
1260 {
1261 /* 33222222222211111111110000000000
1262 10987654321098765432109876543210
1263 xxxxxxxxxx00010xxxxxx11000011110
1264 ldeorlh. */
1265 return 971;
1266 }
1267 }
1268 else
1269 {
1270 /* 33222222222211111111110000000000
1271 10987654321098765432109876543210
1272 xxxxxxxxxx00010xxxxxx110000111x1
1273 ldeorl. */
1274 return 974;
1275 }
1276 }
1277 else
1278 {
1279 if (((word >> 31) & 0x1) == 0)
1280 {
1281 if (((word >> 30) & 0x1) == 0)
1282 {
1283 /* 33222222222211111111110000000000
1284 10987654321098765432109876543210
1285 xxxxxxxxxx00010xxxxxx11100011100
1286 ldeoralb. */
1287 return 969;
1288 }
1289 else
1290 {
1291 /* 33222222222211111111110000000000
1292 10987654321098765432109876543210
1293 xxxxxxxxxx00010xxxxxx11100011110
1294 ldeoralh. */
1295 return 972;
1296 }
1297 }
1298 else
1299 {
1300 /* 33222222222211111111110000000000
1301 10987654321098765432109876543210
1302 xxxxxxxxxx00010xxxxxx111000111x1
1303 ldeoral. */
1304 return 975;
1305 }
1306 }
1307 }
1308 }
1309 else
1310 {
1311 if (((word >> 22) & 0x1) == 0)
1312 {
1313 if (((word >> 23) & 0x1) == 0)
1314 {
1315 if (((word >> 31) & 0x1) == 0)
1316 {
1317 if (((word >> 30) & 0x1) == 0)
1318 {
1319 /* 33222222222211111111110000000000
1320 10987654321098765432109876543210
1321 xxxxxxxxxx00011xxxxxx10000011100
1322 ldumaxb. */
1323 return 1012;
1324 }
1325 else
1326 {
1327 /* 33222222222211111111110000000000
1328 10987654321098765432109876543210
1329 xxxxxxxxxx00011xxxxxx10000011110
1330 ldumaxh. */
1331 return 1013;
1332 }
1333 }
1334 else
1335 {
1336 /* 33222222222211111111110000000000
1337 10987654321098765432109876543210
1338 xxxxxxxxxx00011xxxxxx100000111x1
1339 ldumax. */
1340 return 1014;
1341 }
1342 }
1343 else
1344 {
1345 if (((word >> 31) & 0x1) == 0)
1346 {
1347 if (((word >> 30) & 0x1) == 0)
1348 {
1349 /* 33222222222211111111110000000000
1350 10987654321098765432109876543210
1351 xxxxxxxxxx00011xxxxxx10100011100
1352 ldumaxab. */
1353 return 1015;
1354 }
1355 else
1356 {
1357 /* 33222222222211111111110000000000
1358 10987654321098765432109876543210
1359 xxxxxxxxxx00011xxxxxx10100011110
1360 ldumaxah. */
1361 return 1018;
1362 }
1363 }
1364 else
1365 {
1366 /* 33222222222211111111110000000000
1367 10987654321098765432109876543210
1368 xxxxxxxxxx00011xxxxxx101000111x1
1369 ldumaxa. */
1370 return 1021;
1371 }
1372 }
1373 }
1374 else
1375 {
1376 if (((word >> 23) & 0x1) == 0)
1377 {
1378 if (((word >> 31) & 0x1) == 0)
1379 {
1380 if (((word >> 30) & 0x1) == 0)
1381 {
1382 /* 33222222222211111111110000000000
1383 10987654321098765432109876543210
1384 xxxxxxxxxx00011xxxxxx11000011100
1385 ldumaxlb. */
1386 return 1016;
1387 }
1388 else
1389 {
1390 /* 33222222222211111111110000000000
1391 10987654321098765432109876543210
1392 xxxxxxxxxx00011xxxxxx11000011110
1393 ldumaxlh. */
1394 return 1019;
1395 }
1396 }
1397 else
1398 {
1399 /* 33222222222211111111110000000000
1400 10987654321098765432109876543210
1401 xxxxxxxxxx00011xxxxxx110000111x1
1402 ldumaxl. */
1403 return 1022;
1404 }
1405 }
1406 else
1407 {
1408 if (((word >> 31) & 0x1) == 0)
1409 {
1410 if (((word >> 30) & 0x1) == 0)
1411 {
1412 /* 33222222222211111111110000000000
1413 10987654321098765432109876543210
1414 xxxxxxxxxx00011xxxxxx11100011100
1415 ldumaxalb. */
1416 return 1017;
1417 }
1418 else
1419 {
1420 /* 33222222222211111111110000000000
1421 10987654321098765432109876543210
1422 xxxxxxxxxx00011xxxxxx11100011110
1423 ldumaxalh. */
1424 return 1020;
1425 }
1426 }
1427 else
1428 {
1429 /* 33222222222211111111110000000000
1430 10987654321098765432109876543210
1431 xxxxxxxxxx00011xxxxxx111000111x1
1432 ldumaxal. */
1433 return 1023;
1434 }
1435 }
1436 }
1437 }
1438 }
1439 }
1440 else
1441 {
1442 if (((word >> 13) & 0x1) == 0)
1443 {
1444 if (((word >> 14) & 0x1) == 0)
1445 {
1446 if (((word >> 22) & 0x1) == 0)
1447 {
1448 if (((word >> 23) & 0x1) == 0)
1449 {
1450 if (((word >> 31) & 0x1) == 0)
1451 {
1452 if (((word >> 30) & 0x1) == 0)
1453 {
1454 /* 33222222222211111111110000000000
1455 10987654321098765432109876543210
1456 xxxxxxxxxx00100xxxxxx10000011100
1457 ldclrb. */
1458 return 952;
1459 }
1460 else
1461 {
1462 /* 33222222222211111111110000000000
1463 10987654321098765432109876543210
1464 xxxxxxxxxx00100xxxxxx10000011110
1465 ldclrh. */
1466 return 953;
1467 }
1468 }
1469 else
1470 {
1471 /* 33222222222211111111110000000000
1472 10987654321098765432109876543210
1473 xxxxxxxxxx00100xxxxxx100000111x1
1474 ldclr. */
1475 return 954;
1476 }
1477 }
1478 else
1479 {
1480 if (((word >> 31) & 0x1) == 0)
1481 {
1482 if (((word >> 30) & 0x1) == 0)
1483 {
1484 /* 33222222222211111111110000000000
1485 10987654321098765432109876543210
1486 xxxxxxxxxx00100xxxxxx10100011100
1487 ldclrab. */
1488 return 955;
1489 }
1490 else
1491 {
1492 /* 33222222222211111111110000000000
1493 10987654321098765432109876543210
1494 xxxxxxxxxx00100xxxxxx10100011110
1495 ldclrah. */
1496 return 958;
1497 }
1498 }
1499 else
1500 {
1501 /* 33222222222211111111110000000000
1502 10987654321098765432109876543210
1503 xxxxxxxxxx00100xxxxxx101000111x1
1504 ldclra. */
1505 return 961;
1506 }
1507 }
1508 }
1509 else
1510 {
1511 if (((word >> 23) & 0x1) == 0)
1512 {
1513 if (((word >> 31) & 0x1) == 0)
1514 {
1515 if (((word >> 30) & 0x1) == 0)
1516 {
1517 /* 33222222222211111111110000000000
1518 10987654321098765432109876543210
1519 xxxxxxxxxx00100xxxxxx11000011100
1520 ldclrlb. */
1521 return 956;
1522 }
1523 else
1524 {
1525 /* 33222222222211111111110000000000
1526 10987654321098765432109876543210
1527 xxxxxxxxxx00100xxxxxx11000011110
1528 ldclrlh. */
1529 return 959;
1530 }
1531 }
1532 else
1533 {
1534 /* 33222222222211111111110000000000
1535 10987654321098765432109876543210
1536 xxxxxxxxxx00100xxxxxx110000111x1
1537 ldclrl. */
1538 return 962;
1539 }
1540 }
1541 else
1542 {
1543 if (((word >> 31) & 0x1) == 0)
1544 {
1545 if (((word >> 30) & 0x1) == 0)
1546 {
1547 /* 33222222222211111111110000000000
1548 10987654321098765432109876543210
1549 xxxxxxxxxx00100xxxxxx11100011100
1550 ldclralb. */
1551 return 957;
1552 }
1553 else
1554 {
1555 /* 33222222222211111111110000000000
1556 10987654321098765432109876543210
1557 xxxxxxxxxx00100xxxxxx11100011110
1558 ldclralh. */
1559 return 960;
1560 }
1561 }
1562 else
1563 {
1564 /* 33222222222211111111110000000000
1565 10987654321098765432109876543210
1566 xxxxxxxxxx00100xxxxxx111000111x1
1567 ldclral. */
1568 return 963;
1569 }
1570 }
1571 }
1572 }
1573 else
1574 {
1575 if (((word >> 22) & 0x1) == 0)
1576 {
1577 if (((word >> 23) & 0x1) == 0)
1578 {
1579 if (((word >> 31) & 0x1) == 0)
1580 {
1581 if (((word >> 30) & 0x1) == 0)
1582 {
1583 /* 33222222222211111111110000000000
1584 10987654321098765432109876543210
1585 xxxxxxxxxx00101xxxxxx10000011100
1586 ldsminb. */
1587 return 1000;
1588 }
1589 else
1590 {
1591 /* 33222222222211111111110000000000
1592 10987654321098765432109876543210
1593 xxxxxxxxxx00101xxxxxx10000011110
1594 ldsminh. */
1595 return 1001;
1596 }
1597 }
1598 else
1599 {
1600 /* 33222222222211111111110000000000
1601 10987654321098765432109876543210
1602 xxxxxxxxxx00101xxxxxx100000111x1
1603 ldsmin. */
1604 return 1002;
1605 }
1606 }
1607 else
1608 {
1609 if (((word >> 31) & 0x1) == 0)
1610 {
1611 if (((word >> 30) & 0x1) == 0)
1612 {
1613 /* 33222222222211111111110000000000
1614 10987654321098765432109876543210
1615 xxxxxxxxxx00101xxxxxx10100011100
1616 ldsminab. */
1617 return 1003;
1618 }
1619 else
1620 {
1621 /* 33222222222211111111110000000000
1622 10987654321098765432109876543210
1623 xxxxxxxxxx00101xxxxxx10100011110
1624 ldsminah. */
1625 return 1006;
1626 }
1627 }
1628 else
1629 {
1630 /* 33222222222211111111110000000000
1631 10987654321098765432109876543210
1632 xxxxxxxxxx00101xxxxxx101000111x1
1633 ldsmina. */
1634 return 1009;
1635 }
1636 }
1637 }
1638 else
1639 {
1640 if (((word >> 23) & 0x1) == 0)
1641 {
1642 if (((word >> 31) & 0x1) == 0)
1643 {
1644 if (((word >> 30) & 0x1) == 0)
1645 {
1646 /* 33222222222211111111110000000000
1647 10987654321098765432109876543210
1648 xxxxxxxxxx00101xxxxxx11000011100
1649 ldsminlb. */
1650 return 1004;
1651 }
1652 else
1653 {
1654 /* 33222222222211111111110000000000
1655 10987654321098765432109876543210
1656 xxxxxxxxxx00101xxxxxx11000011110
1657 ldsminlh. */
1658 return 1007;
1659 }
1660 }
1661 else
1662 {
1663 /* 33222222222211111111110000000000
1664 10987654321098765432109876543210
1665 xxxxxxxxxx00101xxxxxx110000111x1
1666 ldsminl. */
1667 return 1010;
1668 }
1669 }
1670 else
1671 {
1672 if (((word >> 31) & 0x1) == 0)
1673 {
1674 if (((word >> 30) & 0x1) == 0)
1675 {
1676 /* 33222222222211111111110000000000
1677 10987654321098765432109876543210
1678 xxxxxxxxxx00101xxxxxx11100011100
1679 ldsminalb. */
1680 return 1005;
1681 }
1682 else
1683 {
1684 /* 33222222222211111111110000000000
1685 10987654321098765432109876543210
1686 xxxxxxxxxx00101xxxxxx11100011110
1687 ldsminalh. */
1688 return 1008;
1689 }
1690 }
1691 else
1692 {
1693 /* 33222222222211111111110000000000
1694 10987654321098765432109876543210
1695 xxxxxxxxxx00101xxxxxx111000111x1
1696 ldsminal. */
1697 return 1011;
1698 }
1699 }
1700 }
1701 }
1702 }
1703 else
1704 {
1705 if (((word >> 14) & 0x1) == 0)
1706 {
1707 if (((word >> 22) & 0x1) == 0)
1708 {
1709 if (((word >> 23) & 0x1) == 0)
1710 {
1711 if (((word >> 31) & 0x1) == 0)
1712 {
1713 if (((word >> 30) & 0x1) == 0)
1714 {
1715 /* 33222222222211111111110000000000
1716 10987654321098765432109876543210
1717 xxxxxxxxxx00110xxxxxx10000011100
1718 ldsetb. */
1719 return 976;
1720 }
1721 else
1722 {
1723 /* 33222222222211111111110000000000
1724 10987654321098765432109876543210
1725 xxxxxxxxxx00110xxxxxx10000011110
1726 ldseth. */
1727 return 977;
1728 }
1729 }
1730 else
1731 {
1732 /* 33222222222211111111110000000000
1733 10987654321098765432109876543210
1734 xxxxxxxxxx00110xxxxxx100000111x1
1735 ldset. */
1736 return 978;
1737 }
1738 }
1739 else
1740 {
1741 if (((word >> 31) & 0x1) == 0)
1742 {
1743 if (((word >> 30) & 0x1) == 0)
1744 {
1745 /* 33222222222211111111110000000000
1746 10987654321098765432109876543210
1747 xxxxxxxxxx00110xxxxxx10100011100
1748 ldsetab. */
1749 return 979;
1750 }
1751 else
1752 {
1753 /* 33222222222211111111110000000000
1754 10987654321098765432109876543210
1755 xxxxxxxxxx00110xxxxxx10100011110
1756 ldsetah. */
1757 return 982;
1758 }
1759 }
1760 else
1761 {
1762 /* 33222222222211111111110000000000
1763 10987654321098765432109876543210
1764 xxxxxxxxxx00110xxxxxx101000111x1
1765 ldseta. */
1766 return 985;
1767 }
1768 }
1769 }
1770 else
1771 {
1772 if (((word >> 23) & 0x1) == 0)
1773 {
1774 if (((word >> 31) & 0x1) == 0)
1775 {
1776 if (((word >> 30) & 0x1) == 0)
1777 {
1778 /* 33222222222211111111110000000000
1779 10987654321098765432109876543210
1780 xxxxxxxxxx00110xxxxxx11000011100
1781 ldsetlb. */
1782 return 980;
1783 }
1784 else
1785 {
1786 /* 33222222222211111111110000000000
1787 10987654321098765432109876543210
1788 xxxxxxxxxx00110xxxxxx11000011110
1789 ldsetlh. */
1790 return 983;
1791 }
1792 }
1793 else
1794 {
1795 /* 33222222222211111111110000000000
1796 10987654321098765432109876543210
1797 xxxxxxxxxx00110xxxxxx110000111x1
1798 ldsetl. */
1799 return 986;
1800 }
1801 }
1802 else
1803 {
1804 if (((word >> 31) & 0x1) == 0)
1805 {
1806 if (((word >> 30) & 0x1) == 0)
1807 {
1808 /* 33222222222211111111110000000000
1809 10987654321098765432109876543210
1810 xxxxxxxxxx00110xxxxxx11100011100
1811 ldsetalb. */
1812 return 981;
1813 }
1814 else
1815 {
1816 /* 33222222222211111111110000000000
1817 10987654321098765432109876543210
1818 xxxxxxxxxx00110xxxxxx11100011110
1819 ldsetalh. */
1820 return 984;
1821 }
1822 }
1823 else
1824 {
1825 /* 33222222222211111111110000000000
1826 10987654321098765432109876543210
1827 xxxxxxxxxx00110xxxxxx111000111x1
1828 ldsetal. */
1829 return 987;
1830 }
1831 }
1832 }
1833 }
1834 else
1835 {
1836 if (((word >> 22) & 0x1) == 0)
1837 {
1838 if (((word >> 23) & 0x1) == 0)
1839 {
1840 if (((word >> 31) & 0x1) == 0)
1841 {
1842 if (((word >> 30) & 0x1) == 0)
1843 {
1844 /* 33222222222211111111110000000000
1845 10987654321098765432109876543210
1846 xxxxxxxxxx00111xxxxxx10000011100
1847 lduminb. */
1848 return 1024;
1849 }
1850 else
1851 {
1852 /* 33222222222211111111110000000000
1853 10987654321098765432109876543210
1854 xxxxxxxxxx00111xxxxxx10000011110
1855 lduminh. */
1856 return 1025;
1857 }
1858 }
1859 else
1860 {
1861 /* 33222222222211111111110000000000
1862 10987654321098765432109876543210
1863 xxxxxxxxxx00111xxxxxx100000111x1
1864 ldumin. */
1865 return 1026;
1866 }
1867 }
1868 else
1869 {
1870 if (((word >> 31) & 0x1) == 0)
1871 {
1872 if (((word >> 30) & 0x1) == 0)
1873 {
1874 /* 33222222222211111111110000000000
1875 10987654321098765432109876543210
1876 xxxxxxxxxx00111xxxxxx10100011100
1877 lduminab. */
1878 return 1027;
1879 }
1880 else
1881 {
1882 /* 33222222222211111111110000000000
1883 10987654321098765432109876543210
1884 xxxxxxxxxx00111xxxxxx10100011110
1885 lduminah. */
1886 return 1030;
1887 }
1888 }
1889 else
1890 {
1891 /* 33222222222211111111110000000000
1892 10987654321098765432109876543210
1893 xxxxxxxxxx00111xxxxxx101000111x1
1894 ldumina. */
1895 return 1033;
1896 }
1897 }
1898 }
1899 else
1900 {
1901 if (((word >> 23) & 0x1) == 0)
1902 {
1903 if (((word >> 31) & 0x1) == 0)
1904 {
1905 if (((word >> 30) & 0x1) == 0)
1906 {
1907 /* 33222222222211111111110000000000
1908 10987654321098765432109876543210
1909 xxxxxxxxxx00111xxxxxx11000011100
1910 lduminlb. */
1911 return 1028;
1912 }
1913 else
1914 {
1915 /* 33222222222211111111110000000000
1916 10987654321098765432109876543210
1917 xxxxxxxxxx00111xxxxxx11000011110
1918 lduminlh. */
1919 return 1031;
1920 }
1921 }
1922 else
1923 {
1924 /* 33222222222211111111110000000000
1925 10987654321098765432109876543210
1926 xxxxxxxxxx00111xxxxxx110000111x1
1927 lduminl. */
1928 return 1034;
1929 }
1930 }
1931 else
1932 {
1933 if (((word >> 31) & 0x1) == 0)
1934 {
1935 if (((word >> 30) & 0x1) == 0)
1936 {
1937 /* 33222222222211111111110000000000
1938 10987654321098765432109876543210
1939 xxxxxxxxxx00111xxxxxx11100011100
1940 lduminalb. */
1941 return 1029;
1942 }
1943 else
1944 {
1945 /* 33222222222211111111110000000000
1946 10987654321098765432109876543210
1947 xxxxxxxxxx00111xxxxxx11100011110
1948 lduminalh. */
1949 return 1032;
1950 }
1951 }
1952 else
1953 {
1954 /* 33222222222211111111110000000000
1955 10987654321098765432109876543210
1956 xxxxxxxxxx00111xxxxxx111000111x1
1957 lduminal. */
1958 return 1035;
1959 }
1960 }
1961 }
1962 }
1963 }
1964 }
1965 }
1966 }
1967 else
1968 {
1969 if (((word >> 21) & 0x1) == 0)
1970 {
1971 if (((word >> 23) & 0x1) == 0)
1972 {
1973 if (((word >> 22) & 0x1) == 0)
1974 {
1975 if (((word >> 31) & 0x1) == 0)
1976 {
1977 if (((word >> 30) & 0x1) == 0)
1978 {
1979 /* 33222222222211111111110000000000
1980 10987654321098765432109876543210
1981 xxxxxxxxxx01xxxxxxxxx00000011100
1982 sttrb. */
1983 return 826;
1984 }
1985 else
1986 {
1987 /* 33222222222211111111110000000000
1988 10987654321098765432109876543210
1989 xxxxxxxxxx01xxxxxxxxx00000011110
1990 sttrh. */
1991 return 829;
1992 }
1993 }
1994 else
1995 {
1996 /* 33222222222211111111110000000000
1997 10987654321098765432109876543210
1998 xxxxxxxxxx01xxxxxxxxx000000111x1
1999 sttr. */
2000 return 832;
2001 }
2002 }
2003 else
2004 {
2005 if (((word >> 31) & 0x1) == 0)
2006 {
2007 if (((word >> 30) & 0x1) == 0)
2008 {
2009 /* 33222222222211111111110000000000
2010 10987654321098765432109876543210
2011 xxxxxxxxxx01xxxxxxxxx01000011100
2012 ldtrb. */
2013 return 827;
2014 }
2015 else
2016 {
2017 /* 33222222222211111111110000000000
2018 10987654321098765432109876543210
2019 xxxxxxxxxx01xxxxxxxxx01000011110
2020 ldtrh. */
2021 return 830;
2022 }
2023 }
2024 else
2025 {
2026 /* 33222222222211111111110000000000
2027 10987654321098765432109876543210
2028 xxxxxxxxxx01xxxxxxxxx010000111x1
2029 ldtr. */
2030 return 833;
2031 }
2032 }
2033 }
2034 else
2035 {
2036 if (((word >> 30) & 0x1) == 0)
2037 {
2038 if (((word >> 31) & 0x1) == 0)
2039 {
2040 /* 33222222222211111111110000000000
2041 10987654321098765432109876543210
2042 xxxxxxxxxx01xxxxxxxxx0x100011100
2043 ldtrsb. */
2044 return 828;
2045 }
2046 else
2047 {
2048 /* 33222222222211111111110000000000
2049 10987654321098765432109876543210
2050 xxxxxxxxxx01xxxxxxxxx0x100011101
2051 ldtrsw. */
2052 return 834;
2053 }
2054 }
2055 else
2056 {
2057 /* 33222222222211111111110000000000
2058 10987654321098765432109876543210
2059 xxxxxxxxxx01xxxxxxxxx0x10001111x
2060 ldtrsh. */
2061 return 831;
2062 }
2063 }
2064 }
2065 else
2066 {
2067 if (((word >> 23) & 0x1) == 0)
2068 {
2069 if (((word >> 22) & 0x1) == 0)
2070 {
2071 if (((word >> 31) & 0x1) == 0)
2072 {
2073 if (((word >> 30) & 0x1) == 0)
2074 {
2075 /* 33222222222211111111110000000000
2076 10987654321098765432109876543210
2077 xxxxxxxxxx01xxxxxxxxx10000011100
2078 strb. */
2079 return 814;
2080 }
2081 else
2082 {
2083 /* 33222222222211111111110000000000
2084 10987654321098765432109876543210
2085 xxxxxxxxxx01xxxxxxxxx10000011110
2086 strh. */
2087 return 819;
2088 }
2089 }
2090 else
2091 {
2092 /* 33222222222211111111110000000000
2093 10987654321098765432109876543210
2094 xxxxxxxxxx01xxxxxxxxx100000111x1
2095 str. */
2096 return 822;
2097 }
2098 }
2099 else
2100 {
2101 if (((word >> 31) & 0x1) == 0)
2102 {
2103 if (((word >> 30) & 0x1) == 0)
2104 {
2105 /* 33222222222211111111110000000000
2106 10987654321098765432109876543210
2107 xxxxxxxxxx01xxxxxxxxx11000011100
2108 ldrb. */
2109 return 815;
2110 }
2111 else
2112 {
2113 /* 33222222222211111111110000000000
2114 10987654321098765432109876543210
2115 xxxxxxxxxx01xxxxxxxxx11000011110
2116 ldrh. */
2117 return 820;
2118 }
2119 }
2120 else
2121 {
2122 /* 33222222222211111111110000000000
2123 10987654321098765432109876543210
2124 xxxxxxxxxx01xxxxxxxxx110000111x1
2125 ldr. */
2126 return 823;
2127 }
2128 }
2129 }
2130 else
2131 {
2132 if (((word >> 30) & 0x1) == 0)
2133 {
2134 if (((word >> 31) & 0x1) == 0)
2135 {
2136 /* 33222222222211111111110000000000
2137 10987654321098765432109876543210
2138 xxxxxxxxxx01xxxxxxxxx1x100011100
2139 ldrsb. */
2140 return 816;
2141 }
2142 else
2143 {
2144 /* 33222222222211111111110000000000
2145 10987654321098765432109876543210
2146 xxxxxxxxxx01xxxxxxxxx1x100011101
2147 ldrsw. */
2148 return 824;
2149 }
2150 }
2151 else
2152 {
2153 if (((word >> 31) & 0x1) == 0)
2154 {
2155 /* 33222222222211111111110000000000
2156 10987654321098765432109876543210
2157 xxxxxxxxxx01xxxxxxxxx1x100011110
2158 ldrsh. */
2159 return 821;
2160 }
2161 else
2162 {
2163 /* 33222222222211111111110000000000
2164 10987654321098765432109876543210
2165 xxxxxxxxxx01xxxxxxxxx1x100011111
2166 prfm. */
2167 return 825;
2168 }
2169 }
2170 }
2171 }
2172 }
2173 }
2174 else
2175 {
2176 if (((word >> 23) & 0x1) == 0)
2177 {
2178 if (((word >> 22) & 0x1) == 0)
2179 {
2180 if (((word >> 31) & 0x1) == 0)
2181 {
2182 if (((word >> 30) & 0x1) == 0)
2183 {
2184 /* 33222222222211111111110000000000
2185 10987654321098765432109876543210
2186 xxxxxxxxxx1xxxxxxxxxxx0000011100
2187 strb. */
2188 return 791;
2189 }
2190 else
2191 {
2192 /* 33222222222211111111110000000000
2193 10987654321098765432109876543210
2194 xxxxxxxxxx1xxxxxxxxxxx0000011110
2195 strh. */
2196 return 796;
2197 }
2198 }
2199 else
2200 {
2201 /* 33222222222211111111110000000000
2202 10987654321098765432109876543210
2203 xxxxxxxxxx1xxxxxxxxxxx00000111x1
2204 str. */
2205 return 799;
2206 }
2207 }
2208 else
2209 {
2210 if (((word >> 31) & 0x1) == 0)
2211 {
2212 if (((word >> 30) & 0x1) == 0)
2213 {
2214 /* 33222222222211111111110000000000
2215 10987654321098765432109876543210
2216 xxxxxxxxxx1xxxxxxxxxxx1000011100
2217 ldrb. */
2218 return 792;
2219 }
2220 else
2221 {
2222 /* 33222222222211111111110000000000
2223 10987654321098765432109876543210
2224 xxxxxxxxxx1xxxxxxxxxxx1000011110
2225 ldrh. */
2226 return 797;
2227 }
2228 }
2229 else
2230 {
2231 /* 33222222222211111111110000000000
2232 10987654321098765432109876543210
2233 xxxxxxxxxx1xxxxxxxxxxx10000111x1
2234 ldr. */
2235 return 800;
2236 }
2237 }
2238 }
2239 else
2240 {
2241 if (((word >> 30) & 0x1) == 0)
2242 {
2243 if (((word >> 31) & 0x1) == 0)
2244 {
2245 /* 33222222222211111111110000000000
2246 10987654321098765432109876543210
2247 xxxxxxxxxx1xxxxxxxxxxxx100011100
2248 ldrsb. */
2249 return 793;
2250 }
2251 else
2252 {
2253 /* 33222222222211111111110000000000
2254 10987654321098765432109876543210
2255 xxxxxxxxxx1xxxxxxxxxxxx100011101
2256 ldrsw. */
2257 return 801;
2258 }
2259 }
2260 else
2261 {
2262 /* 33222222222211111111110000000000
2263 10987654321098765432109876543210
2264 xxxxxxxxxx1xxxxxxxxxxxx10001111x
2265 ldrsh. */
2266 return 798;
2267 }
2268 }
2269 }
2270 }
2271 }
2272 else
2273 {
2274 if (((word >> 23) & 0x1) == 0)
2275 {
2276 if (((word >> 22) & 0x1) == 0)
2277 {
2278 if (((word >> 31) & 0x1) == 0)
2279 {
2280 if (((word >> 30) & 0x1) == 0)
2281 {
2282 /* 33222222222211111111110000000000
2283 10987654321098765432109876543210
2284 xxxxxxxxxxxxxxxxxxxxxx0010011x00
2285 strb. */
2286 return 802;
2287 }
2288 else
2289 {
2290 /* 33222222222211111111110000000000
2291 10987654321098765432109876543210
2292 xxxxxxxxxxxxxxxxxxxxxx0010011x10
2293 strh. */
2294 return 807;
2295 }
2296 }
2297 else
2298 {
2299 /* 33222222222211111111110000000000
2300 10987654321098765432109876543210
2301 xxxxxxxxxxxxxxxxxxxxxx0010011xx1
2302 str. */
2303 return 810;
2304 }
2305 }
2306 else
2307 {
2308 if (((word >> 31) & 0x1) == 0)
2309 {
2310 if (((word >> 30) & 0x1) == 0)
2311 {
2312 /* 33222222222211111111110000000000
2313 10987654321098765432109876543210
2314 xxxxxxxxxxxxxxxxxxxxxx1010011x00
2315 ldrb. */
2316 return 803;
2317 }
2318 else
2319 {
2320 /* 33222222222211111111110000000000
2321 10987654321098765432109876543210
2322 xxxxxxxxxxxxxxxxxxxxxx1010011x10
2323 ldrh. */
2324 return 808;
2325 }
2326 }
2327 else
2328 {
2329 /* 33222222222211111111110000000000
2330 10987654321098765432109876543210
2331 xxxxxxxxxxxxxxxxxxxxxx1010011xx1
2332 ldr. */
2333 return 811;
2334 }
2335 }
2336 }
2337 else
2338 {
2339 if (((word >> 30) & 0x1) == 0)
2340 {
2341 if (((word >> 31) & 0x1) == 0)
2342 {
2343 /* 33222222222211111111110000000000
2344 10987654321098765432109876543210
2345 xxxxxxxxxxxxxxxxxxxxxxx110011x00
2346 ldrsb. */
2347 return 804;
2348 }
2349 else
2350 {
2351 /* 33222222222211111111110000000000
2352 10987654321098765432109876543210
2353 xxxxxxxxxxxxxxxxxxxxxxx110011x01
2354 ldrsw. */
2355 return 812;
2356 }
2357 }
2358 else
2359 {
2360 if (((word >> 31) & 0x1) == 0)
2361 {
2362 /* 33222222222211111111110000000000
2363 10987654321098765432109876543210
2364 xxxxxxxxxxxxxxxxxxxxxxx110011x10
2365 ldrsh. */
2366 return 809;
2367 }
2368 else
2369 {
2370 /* 33222222222211111111110000000000
2371 10987654321098765432109876543210
2372 xxxxxxxxxxxxxxxxxxxxxxx110011x11
2373 prfm. */
2374 return 813;
2375 }
2376 }
2377 }
2378 }
2379 }
2380 }
2381 }
2382 else
2383 {
2384 if (((word >> 24) & 0x1) == 0)
2385 {
2386 if (((word >> 27) & 0x1) == 0)
2387 {
2388 if (((word >> 23) & 0x1) == 0)
2389 {
2390 if (((word >> 29) & 0x1) == 0)
2391 {
2392 if (((word >> 30) & 0x1) == 0)
2393 {
2394 /* 33222222222211111111110000000000
2395 10987654321098765432109876543210
2396 xxxxxxxxxxxxxxxxxxxxxxx00100x00x
2397 and. */
2398 return 893;
2399 }
2400 else
2401 {
2402 /* 33222222222211111111110000000000
2403 10987654321098765432109876543210
2404 xxxxxxxxxxxxxxxxxxxxxxx00100x01x
2405 eor. */
2406 return 897;
2407 }
2408 }
2409 else
2410 {
2411 if (((word >> 30) & 0x1) == 0)
2412 {
2413 /* 33222222222211111111110000000000
2414 10987654321098765432109876543210
2415 xxxxxxxxxxxxxxxxxxxxxxx00100x10x
2416 orr. */
2417 return 895;
2418 }
2419 else
2420 {
2421 /* 33222222222211111111110000000000
2422 10987654321098765432109876543210
2423 xxxxxxxxxxxxxxxxxxxxxxx00100x11x
2424 ands. */
2425 return 898;
2426 }
2427 }
2428 }
2429 else
2430 {
2431 if (((word >> 29) & 0x1) == 0)
2432 {
2433 if (((word >> 30) & 0x1) == 0)
2434 {
2435 /* 33222222222211111111110000000000
2436 10987654321098765432109876543210
2437 xxxxxxxxxxxxxxxxxxxxxxx10100x00x
2438 movn. */
2439 return 1084;
2440 }
2441 else
2442 {
2443 /* 33222222222211111111110000000000
2444 10987654321098765432109876543210
2445 xxxxxxxxxxxxxxxxxxxxxxx10100x01x
2446 movz. */
2447 return 1086;
2448 }
2449 }
2450 else
2451 {
2452 /* 33222222222211111111110000000000
2453 10987654321098765432109876543210
2454 xxxxxxxxxxxxxxxxxxxxxxx10100x1xx
2455 movk. */
2456 return 1088;
2457 }
2458 }
2459 }
2460 else
2461 {
2462 if (((word >> 21) & 0x1) == 0)
2463 {
2464 if (((word >> 28) & 0x1) == 0)
2465 {
2466 if (((word >> 29) & 0x1) == 0)
2467 {
2468 if (((word >> 30) & 0x1) == 0)
2469 {
2470 /* 33222222222211111111110000000000
2471 10987654321098765432109876543210
2472 xxxxxxxxxxxxxxxxxxxxx0xx0101000x
2473 and. */
2474 return 900;
2475 }
2476 else
2477 {
2478 /* 33222222222211111111110000000000
2479 10987654321098765432109876543210
2480 xxxxxxxxxxxxxxxxxxxxx0xx0101001x
2481 eor. */
2482 return 907;
2483 }
2484 }
2485 else
2486 {
2487 if (((word >> 30) & 0x1) == 0)
2488 {
2489 /* 33222222222211111111110000000000
2490 10987654321098765432109876543210
2491 xxxxxxxxxxxxxxxxxxxxx0xx0101010x
2492 orr. */
2493 return 902;
2494 }
2495 else
2496 {
2497 /* 33222222222211111111110000000000
2498 10987654321098765432109876543210
2499 xxxxxxxxxxxxxxxxxxxxx0xx0101011x
2500 ands. */
2501 return 909;
2502 }
2503 }
2504 }
2505 else
2506 {
2507 if (((word >> 10) & 0x1) == 0)
2508 {
2509 if (((word >> 11) & 0x1) == 0)
2510 {
2511 if (((word >> 22) & 0x1) == 0)
2512 {
2513 if (((word >> 23) & 0x1) == 0)
2514 {
2515 if (((word >> 29) & 0x1) == 0)
2516 {
2517 if (((word >> 30) & 0x1) == 0)
2518 {
2519 /* 33222222222211111111110000000000
2520 10987654321098765432109876543210
2521 xxxxxxxxxx00xxxxxxxxx0000101100x
2522 adc. */
2523 return 0;
2524 }
2525 else
2526 {
2527 /* 33222222222211111111110000000000
2528 10987654321098765432109876543210
2529 xxxxxxxxxx00xxxxxxxxx0000101101x
2530 sbc. */
2531 return 2;
2532 }
2533 }
2534 else
2535 {
2536 if (((word >> 30) & 0x1) == 0)
2537 {
2538 /* 33222222222211111111110000000000
2539 10987654321098765432109876543210
2540 xxxxxxxxxx00xxxxxxxxx0000101110x
2541 adcs. */
2542 return 1;
2543 }
2544 else
2545 {
2546 /* 33222222222211111111110000000000
2547 10987654321098765432109876543210
2548 xxxxxxxxxx00xxxxxxxxx0000101111x
2549 sbcs. */
2550 return 4;
2551 }
2552 }
2553 }
2554 else
2555 {
2556 if (((word >> 30) & 0x1) == 0)
2557 {
2558 /* 33222222222211111111110000000000
2559 10987654321098765432109876543210
2560 xxxxxxxxxx00xxxxxxxxx00101011x0x
2561 csel. */
2562 return 615;
2563 }
2564 else
2565 {
2566 /* 33222222222211111111110000000000
2567 10987654321098765432109876543210
2568 xxxxxxxxxx00xxxxxxxxx00101011x1x
2569 csinv. */
2570 return 619;
2571 }
2572 }
2573 }
2574 else
2575 {
2576 if (((word >> 23) & 0x1) == 0)
2577 {
2578 if (((word >> 30) & 0x1) == 0)
2579 {
2580 /* 33222222222211111111110000000000
2581 10987654321098765432109876543210
2582 xxxxxxxxxx00xxxxxxxxx01001011x0x
2583 ccmn. */
2584 return 613;
2585 }
2586 else
2587 {
2588 /* 33222222222211111111110000000000
2589 10987654321098765432109876543210
2590 xxxxxxxxxx00xxxxxxxxx01001011x1x
2591 ccmp. */
2592 return 614;
2593 }
2594 }
2595 else
2596 {
2597 if (((word >> 12) & 0x1) == 0)
2598 {
2599 if (((word >> 13) & 0x1) == 0)
2600 {
2601 if (((word >> 14) & 0x1) == 0)
2602 {
2603 /* 33222222222211111111110000000000
2604 10987654321098765432109876543210
2605 xxxxxxxxxx00000xxxxxx01101011xxx
2606 rbit. */
2607 return 638;
2608 }
2609 else
2610 {
2611 /* 33222222222211111111110000000000
2612 10987654321098765432109876543210
2613 xxxxxxxxxx00001xxxxxx01101011xxx
2614 crc32b. */
2615 return 656;
2616 }
2617 }
2618 else
2619 {
2620 /* 33222222222211111111110000000000
2621 10987654321098765432109876543210
2622 xxxxxxxxxx0001xxxxxxx01101011xxx
2623 lslv. */
2624 return 648;
2625 }
2626 }
2627 else
2628 {
2629 if (((word >> 14) & 0x1) == 0)
2630 {
2631 /* 33222222222211111111110000000000
2632 10987654321098765432109876543210
2633 xxxxxxxxxx001x0xxxxxx01101011xxx
2634 clz. */
2635 return 643;
2636 }
2637 else
2638 {
2639 /* 33222222222211111111110000000000
2640 10987654321098765432109876543210
2641 xxxxxxxxxx001x1xxxxxx01101011xxx
2642 crc32cb. */
2643 return 660;
2644 }
2645 }
2646 }
2647 }
2648 }
2649 else
2650 {
2651 if (((word >> 23) & 0x1) == 0)
2652 {
2653 if (((word >> 30) & 0x1) == 0)
2654 {
2655 /* 33222222222211111111110000000000
2656 10987654321098765432109876543210
2657 xxxxxxxxxx01xxxxxxxxx0x001011x0x
2658 ccmn. */
2659 return 611;
2660 }
2661 else
2662 {
2663 /* 33222222222211111111110000000000
2664 10987654321098765432109876543210
2665 xxxxxxxxxx01xxxxxxxxx0x001011x1x
2666 ccmp. */
2667 return 612;
2668 }
2669 }
2670 else
2671 {
2672 if (((word >> 12) & 0x1) == 0)
2673 {
2674 if (((word >> 13) & 0x1) == 0)
2675 {
2676 if (((word >> 14) & 0x1) == 0)
2677 {
2678 if (((word >> 30) & 0x1) == 0)
2679 {
2680 /* 33222222222211111111110000000000
2681 10987654321098765432109876543210
2682 xxxxxxxxxx01000xxxxxx0x101011x0x
2683 udiv. */
2684 return 646;
2685 }
2686 else
2687 {
2688 if (((word >> 31) & 0x1) == 0)
2689 {
2690 /* 33222222222211111111110000000000
2691 10987654321098765432109876543210
2692 xxxxxxxxxx01000xxxxxx0x101011x10
2693 rev. */
2694 return 640;
2695 }
2696 else
2697 {
2698 /* 33222222222211111111110000000000
2699 10987654321098765432109876543210
2700 xxxxxxxxxx01000xxxxxx0x101011x11
2701 rev32. */
2702 return 645;
2703 }
2704 }
2705 }
2706 else
2707 {
2708 /* 33222222222211111111110000000000
2709 10987654321098765432109876543210
2710 xxxxxxxxxx01001xxxxxx0x101011xxx
2711 crc32w. */
2712 return 658;
2713 }
2714 }
2715 else
2716 {
2717 /* 33222222222211111111110000000000
2718 10987654321098765432109876543210
2719 xxxxxxxxxx0101xxxxxxx0x101011xxx
2720 asrv. */
2721 return 652;
2722 }
2723 }
2724 else
2725 {
2726 /* 33222222222211111111110000000000
2727 10987654321098765432109876543210
2728 xxxxxxxxxx011xxxxxxxx0x101011xxx
2729 crc32cw. */
2730 return 662;
2731 }
2732 }
2733 }
2734 }
2735 else
2736 {
2737 if (((word >> 11) & 0x1) == 0)
2738 {
2739 if (((word >> 22) & 0x1) == 0)
2740 {
2741 if (((word >> 30) & 0x1) == 0)
2742 {
2743 /* 33222222222211111111110000000000
2744 10987654321098765432109876543210
2745 xxxxxxxxxx10xxxxxxxxx00x01011x0x
2746 csinc. */
2747 return 616;
2748 }
2749 else
2750 {
2751 /* 33222222222211111111110000000000
2752 10987654321098765432109876543210
2753 xxxxxxxxxx10xxxxxxxxx00x01011x1x
2754 csneg. */
2755 return 622;
2756 }
2757 }
2758 else
2759 {
2760 if (((word >> 12) & 0x1) == 0)
2761 {
2762 if (((word >> 13) & 0x1) == 0)
2763 {
2764 if (((word >> 14) & 0x1) == 0)
2765 {
2766 /* 33222222222211111111110000000000
2767 10987654321098765432109876543210
2768 xxxxxxxxxx10000xxxxxx01x01011xxx
2769 rev16. */
2770 return 639;
2771 }
2772 else
2773 {
2774 /* 33222222222211111111110000000000
2775 10987654321098765432109876543210
2776 xxxxxxxxxx10001xxxxxx01x01011xxx
2777 crc32h. */
2778 return 657;
2779 }
2780 }
2781 else
2782 {
2783 /* 33222222222211111111110000000000
2784 10987654321098765432109876543210
2785 xxxxxxxxxx1001xxxxxxx01x01011xxx
2786 lsrv. */
2787 return 650;
2788 }
2789 }
2790 else
2791 {
2792 if (((word >> 14) & 0x1) == 0)
2793 {
2794 /* 33222222222211111111110000000000
2795 10987654321098765432109876543210
2796 xxxxxxxxxx101x0xxxxxx01x01011xxx
2797 cls. */
2798 return 644;
2799 }
2800 else
2801 {
2802 /* 33222222222211111111110000000000
2803 10987654321098765432109876543210
2804 xxxxxxxxxx101x1xxxxxx01x01011xxx
2805 crc32ch. */
2806 return 661;
2807 }
2808 }
2809 }
2810 }
2811 else
2812 {
2813 if (((word >> 12) & 0x1) == 0)
2814 {
2815 if (((word >> 13) & 0x1) == 0)
2816 {
2817 if (((word >> 14) & 0x1) == 0)
2818 {
2819 if (((word >> 30) & 0x1) == 0)
2820 {
2821 /* 33222222222211111111110000000000
2822 10987654321098765432109876543210
2823 xxxxxxxxxx11000xxxxxx0xx01011x0x
2824 sdiv. */
2825 return 647;
2826 }
2827 else
2828 {
2829 /* 33222222222211111111110000000000
2830 10987654321098765432109876543210
2831 xxxxxxxxxx11000xxxxxx0xx01011x1x
2832 rev. */
2833 return 641;
2834 }
2835 }
2836 else
2837 {
2838 /* 33222222222211111111110000000000
2839 10987654321098765432109876543210
2840 xxxxxxxxxx11001xxxxxx0xx01011xxx
2841 crc32x. */
2842 return 659;
2843 }
2844 }
2845 else
2846 {
2847 /* 33222222222211111111110000000000
2848 10987654321098765432109876543210
2849 xxxxxxxxxx1101xxxxxxx0xx01011xxx
2850 rorv. */
2851 return 654;
2852 }
2853 }
2854 else
2855 {
2856 /* 33222222222211111111110000000000
2857 10987654321098765432109876543210
2858 xxxxxxxxxx111xxxxxxxx0xx01011xxx
2859 crc32cx. */
2860 return 663;
2861 }
2862 }
2863 }
2864 }
2865 }
2866 else
2867 {
2868 if (((word >> 29) & 0x1) == 0)
2869 {
2870 if (((word >> 30) & 0x1) == 0)
2871 {
2872 /* 33222222222211111111110000000000
2873 10987654321098765432109876543210
2874 xxxxxxxxxxxxxxxxxxxxx1xx0101x00x
2875 bic. */
2876 return 901;
2877 }
2878 else
2879 {
2880 /* 33222222222211111111110000000000
2881 10987654321098765432109876543210
2882 xxxxxxxxxxxxxxxxxxxxx1xx0101x01x
2883 eon. */
2884 return 908;
2885 }
2886 }
2887 else
2888 {
2889 if (((word >> 30) & 0x1) == 0)
2890 {
2891 /* 33222222222211111111110000000000
2892 10987654321098765432109876543210
2893 xxxxxxxxxxxxxxxxxxxxx1xx0101x10x
2894 orn. */
2895 return 905;
2896 }
2897 else
2898 {
2899 /* 33222222222211111111110000000000
2900 10987654321098765432109876543210
2901 xxxxxxxxxxxxxxxxxxxxx1xx0101x11x
2902 bics. */
2903 return 911;
2904 }
2905 }
2906 }
2907 }
2908 }
2909 else
2910 {
2911 if (((word >> 27) & 0x1) == 0)
2912 {
2913 if (((word >> 23) & 0x1) == 0)
2914 {
2915 if (((word >> 29) & 0x1) == 0)
2916 {
2917 if (((word >> 30) & 0x1) == 0)
2918 {
2919 /* 33222222222211111111110000000000
2920 10987654321098765432109876543210
2921 xxxxxxxxxxxxxxxxxxxxxxx01100x00x
2922 sbfm. */
2923 return 583;
2924 }
2925 else
2926 {
2927 /* 33222222222211111111110000000000
2928 10987654321098765432109876543210
2929 xxxxxxxxxxxxxxxxxxxxxxx01100x01x
2930 ubfm. */
2931 return 594;
2932 }
2933 }
2934 else
2935 {
2936 /* 33222222222211111111110000000000
2937 10987654321098765432109876543210
2938 xxxxxxxxxxxxxxxxxxxxxxx01100x1xx
2939 bfm. */
2940 return 590;
2941 }
2942 }
2943 else
2944 {
2945 /* 33222222222211111111110000000000
2946 10987654321098765432109876543210
2947 xxxxxxxxxxxxxxxxxxxxxxx11100xxxx
2948 extr. */
2949 return 686;
2950 }
2951 }
2952 else
2953 {
2954 if (((word >> 21) & 0x1) == 0)
2955 {
2956 if (((word >> 28) & 0x1) == 0)
2957 {
2958 if (((word >> 29) & 0x1) == 0)
2959 {
2960 if (((word >> 30) & 0x1) == 0)
2961 {
2962 /* 33222222222211111111110000000000
2963 10987654321098765432109876543210
2964 xxxxxxxxxxxxxxxxxxxxx0xx1101000x
2965 add. */
2966 return 19;
2967 }
2968 else
2969 {
2970 /* 33222222222211111111110000000000
2971 10987654321098765432109876543210
2972 xxxxxxxxxxxxxxxxxxxxx0xx1101001x
2973 sub. */
2974 return 22;
2975 }
2976 }
2977 else
2978 {
2979 if (((word >> 30) & 0x1) == 0)
2980 {
2981 /* 33222222222211111111110000000000
2982 10987654321098765432109876543210
2983 xxxxxxxxxxxxxxxxxxxxx0xx1101010x
2984 adds. */
2985 return 20;
2986 }
2987 else
2988 {
2989 /* 33222222222211111111110000000000
2990 10987654321098765432109876543210
2991 xxxxxxxxxxxxxxxxxxxxx0xx1101011x
2992 subs. */
2993 return 24;
2994 }
2995 }
2996 }
2997 else
2998 {
2999 if (((word >> 15) & 0x1) == 0)
3000 {
3001 if (((word >> 22) & 0x1) == 0)
3002 {
3003 /* 33222222222211111111110000000000
3004 10987654321098765432109876543210
3005 xxxxxxxxxxxxxxx0xxxxx00x11011xxx
3006 madd. */
3007 return 664;
3008 }
3009 else
3010 {
3011 if (((word >> 23) & 0x1) == 0)
3012 {
3013 /* 33222222222211111111110000000000
3014 10987654321098765432109876543210
3015 xxxxxxxxxxxxxxx0xxxxx01011011xxx
3016 smulh. */
3017 return 672;
3018 }
3019 else
3020 {
3021 /* 33222222222211111111110000000000
3022 10987654321098765432109876543210
3023 xxxxxxxxxxxxxxx0xxxxx01111011xxx
3024 umulh. */
3025 return 677;
3026 }
3027 }
3028 }
3029 else
3030 {
3031 /* 33222222222211111111110000000000
3032 10987654321098765432109876543210
3033 xxxxxxxxxxxxxxx1xxxxx0xx11011xxx
3034 msub. */
3035 return 666;
3036 }
3037 }
3038 }
3039 else
3040 {
3041 if (((word >> 23) & 0x1) == 0)
3042 {
3043 if (((word >> 28) & 0x1) == 0)
3044 {
3045 if (((word >> 29) & 0x1) == 0)
3046 {
3047 if (((word >> 30) & 0x1) == 0)
3048 {
3049 /* 33222222222211111111110000000000
3050 10987654321098765432109876543210
3051 xxxxxxxxxxxxxxxxxxxxx1x01101000x
3052 add. */
3053 return 6;
3054 }
3055 else
3056 {
3057 /* 33222222222211111111110000000000
3058 10987654321098765432109876543210
3059 xxxxxxxxxxxxxxxxxxxxx1x01101001x
3060 sub. */
3061 return 9;
3062 }
3063 }
3064 else
3065 {
3066 if (((word >> 30) & 0x1) == 0)
3067 {
3068 /* 33222222222211111111110000000000
3069 10987654321098765432109876543210
3070 xxxxxxxxxxxxxxxxxxxxx1x01101010x
3071 adds. */
3072 return 7;
3073 }
3074 else
3075 {
3076 /* 33222222222211111111110000000000
3077 10987654321098765432109876543210
3078 xxxxxxxxxxxxxxxxxxxxx1x01101011x
3079 subs. */
3080 return 10;
3081 }
3082 }
3083 }
3084 else
3085 {
3086 if (((word >> 15) & 0x1) == 0)
3087 {
3088 /* 33222222222211111111110000000000
3089 10987654321098765432109876543210
3090 xxxxxxxxxxxxxxx0xxxxx1x011011xxx
3091 smaddl. */
3092 return 668;
3093 }
3094 else
3095 {
3096 /* 33222222222211111111110000000000
3097 10987654321098765432109876543210
3098 xxxxxxxxxxxxxxx1xxxxx1x011011xxx
3099 smsubl. */
3100 return 670;
3101 }
3102 }
3103 }
3104 else
3105 {
3106 if (((word >> 15) & 0x1) == 0)
3107 {
3108 /* 33222222222211111111110000000000
3109 10987654321098765432109876543210
3110 xxxxxxxxxxxxxxx0xxxxx1x11101xxxx
3111 umaddl. */
3112 return 673;
3113 }
3114 else
3115 {
3116 /* 33222222222211111111110000000000
3117 10987654321098765432109876543210
3118 xxxxxxxxxxxxxxx1xxxxx1x11101xxxx
3119 umsubl. */
3120 return 675;
3121 }
3122 }
3123 }
3124 }
3125 }
3126 }
3127 }
3128 else
3129 {
3130 if (((word >> 27) & 0x1) == 0)
3131 {
3132 if (((word >> 29) & 0x1) == 0)
3133 {
3134 if (((word >> 30) & 0x1) == 0)
3135 {
3136 if (((word >> 31) & 0x1) == 0)
3137 {
3138 /* 33222222222211111111110000000000
3139 10987654321098765432109876543210
3140 xxxxxxxxxxxxxxxxxxxxxxxxxx10x000
3141 b. */
3142 return 601;
3143 }
3144 else
3145 {
3146 /* 33222222222211111111110000000000
3147 10987654321098765432109876543210
3148 xxxxxxxxxxxxxxxxxxxxxxxxxx10x001
3149 bl. */
3150 return 602;
3151 }
3152 }
3153 else
3154 {
3155 if (((word >> 24) & 0x1) == 0)
3156 {
3157 if (((word >> 25) & 0x1) == 0)
3158 {
3159 if (((word >> 31) & 0x1) == 0)
3160 {
3161 /* 33222222222211111111110000000000
3162 10987654321098765432109876543210
3163 xxxxxxxxxxxxxxxxxxxxxxxx0010x010
3164 b.c. */
3165 return 610;
3166 }
3167 else
3168 {
3169 if (((word >> 0) & 0x1) == 0)
3170 {
3171 if (((word >> 1) & 0x1) == 0)
3172 {
3173 if (((word >> 21) & 0x1) == 0)
3174 {
3175 /* 33222222222211111111110000000000
3176 10987654321098765432109876543210
3177 00xxxxxxxxxxxxxxxxxxx0xx0010x011
3178 hlt. */
3179 return 682;
3180 }
3181 else
3182 {
3183 /* 33222222222211111111110000000000
3184 10987654321098765432109876543210
3185 00xxxxxxxxxxxxxxxxxxx1xx0010x011
3186 brk. */
3187 return 681;
3188 }
3189 }
3190 else
3191 {
3192 if (((word >> 21) & 0x1) == 0)
3193 {
3194 /* 33222222222211111111110000000000
3195 10987654321098765432109876543210
3196 01xxxxxxxxxxxxxxxxxxx0xx0010x011
3197 hvc. */
3198 return 679;
3199 }
3200 else
3201 {
3202 /* 33222222222211111111110000000000
3203 10987654321098765432109876543210
3204 01xxxxxxxxxxxxxxxxxxx1xx0010x011
3205 dcps2. */
3206 return 684;
3207 }
3208 }
3209 }
3210 else
3211 {
3212 if (((word >> 1) & 0x1) == 0)
3213 {
3214 if (((word >> 21) & 0x1) == 0)
3215 {
3216 /* 33222222222211111111110000000000
3217 10987654321098765432109876543210
3218 10xxxxxxxxxxxxxxxxxxx0xx0010x011
3219 svc. */
3220 return 678;
3221 }
3222 else
3223 {
3224 /* 33222222222211111111110000000000
3225 10987654321098765432109876543210
3226 10xxxxxxxxxxxxxxxxxxx1xx0010x011
3227 dcps1. */
3228 return 683;
3229 }
3230 }
3231 else
3232 {
3233 if (((word >> 21) & 0x1) == 0)
3234 {
3235 /* 33222222222211111111110000000000
3236 10987654321098765432109876543210
3237 11xxxxxxxxxxxxxxxxxxx0xx0010x011
3238 smc. */
3239 return 680;
3240 }
3241 else
3242 {
3243 /* 33222222222211111111110000000000
3244 10987654321098765432109876543210
3245 11xxxxxxxxxxxxxxxxxxx1xx0010x011
3246 dcps3. */
3247 return 685;
3248 }
3249 }
3250 }
3251 }
3252 }
3253 else
3254 {
3255 if (((word >> 21) & 0x1) == 0)
3256 {
3257 if (((word >> 22) & 0x1) == 0)
3258 {
3259 if (((word >> 23) & 0x1) == 0)
3260 {
3261 /* 33222222222211111111110000000000
3262 10987654321098765432109876543210
3263 xxxxxxxxxxxxxxxxxxxxx0000110x01x
3264 br. */
3265 return 603;
3266 }
3267 else
3268 {
3269 /* 33222222222211111111110000000000
3270 10987654321098765432109876543210
3271 xxxxxxxxxxxxxxxxxxxxx0010110x01x
3272 eret. */
3273 return 606;
3274 }
3275 }
3276 else
3277 {
3278 /* 33222222222211111111110000000000
3279 10987654321098765432109876543210
3280 xxxxxxxxxxxxxxxxxxxxx01x0110x01x
3281 ret. */
3282 return 605;
3283 }
3284 }
3285 else
3286 {
3287 if (((word >> 23) & 0x1) == 0)
3288 {
3289 /* 33222222222211111111110000000000
3290 10987654321098765432109876543210
3291 xxxxxxxxxxxxxxxxxxxxx1x00110x01x
3292 blr. */
3293 return 604;
3294 }
3295 else
3296 {
3297 /* 33222222222211111111110000000000
3298 10987654321098765432109876543210
3299 xxxxxxxxxxxxxxxxxxxxx1x10110x01x
3300 drps. */
3301 return 607;
3302 }
3303 }
3304 }
3305 }
3306 else
3307 {
3308 if (((word >> 21) & 0x1) == 0)
3309 {
3310 /* 33222222222211111111110000000000
3311 10987654321098765432109876543210
3312 xxxxxxxxxxxxxxxxxxxxx0xx1x10x01x
3313 msr. */
3314 return 1091;
3315 }
3316 else
3317 {
3318 /* 33222222222211111111110000000000
3319 10987654321098765432109876543210
3320 xxxxxxxxxxxxxxxxxxxxx1xx1x10x01x
3321 sysl. */
3322 return 1111;
3323 }
3324 }
3325 }
3326 }
3327 else
3328 {
3329 if (((word >> 24) & 0x1) == 0)
3330 {
3331 if (((word >> 25) & 0x1) == 0)
3332 {
3333 /* 33222222222211111111110000000000
3334 10987654321098765432109876543210
3335 xxxxxxxxxxxxxxxxxxxxxxxx0010x1xx
3336 cbz. */
3337 return 608;
3338 }
3339 else
3340 {
3341 /* 33222222222211111111110000000000
3342 10987654321098765432109876543210
3343 xxxxxxxxxxxxxxxxxxxxxxxx0110x1xx
3344 tbz. */
3345 return 1113;
3346 }
3347 }
3348 else
3349 {
3350 if (((word >> 25) & 0x1) == 0)
3351 {
3352 /* 33222222222211111111110000000000
3353 10987654321098765432109876543210
3354 xxxxxxxxxxxxxxxxxxxxxxxx1010x1xx
3355 cbnz. */
3356 return 609;
3357 }
3358 else
3359 {
3360 /* 33222222222211111111110000000000
3361 10987654321098765432109876543210
3362 xxxxxxxxxxxxxxxxxxxxxxxx1110x1xx
3363 tbnz. */
3364 return 1114;
3365 }
3366 }
3367 }
3368 }
3369 else
3370 {
3371 if (((word >> 25) & 0x1) == 0)
3372 {
3373 if (((word >> 28) & 0x1) == 0)
3374 {
3375 if (((word >> 22) & 0x1) == 0)
3376 {
3377 if (((word >> 23) & 0x1) == 0)
3378 {
3379 if (((word >> 24) & 0x1) == 0)
3380 {
3381 if (((word >> 29) & 0x1) == 0)
3382 {
3383 /* 33222222222211111111110000000000
3384 10987654321098765432109876543210
3385 xxxxxxxxxxxxxxxxxxxxxx00001100xx
3386 st4. */
3387 return 414;
3388 }
3389 else
3390 {
3391 /* 33222222222211111111110000000000
3392 10987654321098765432109876543210
3393 xxxxxxxxxxxxxxxxxxxxxx00001101xx
3394 stnp. */
3395 return 877;
3396 }
3397 }
3398 else
3399 {
3400 if (((word >> 29) & 0x1) == 0)
3401 {
3402 if (((word >> 13) & 0x1) == 0)
3403 {
3404 if (((word >> 21) & 0x1) == 0)
3405 {
3406 /* 33222222222211111111110000000000
3407 10987654321098765432109876543210
3408 xxxxxxxxxxxxx0xxxxxxx000101100xx
3409 st1. */
3410 return 430;
3411 }
3412 else
3413 {
3414 /* 33222222222211111111110000000000
3415 10987654321098765432109876543210
3416 xxxxxxxxxxxxx0xxxxxxx100101100xx
3417 st2. */
3418 return 432;
3419 }
3420 }
3421 else
3422 {
3423 if (((word >> 21) & 0x1) == 0)
3424 {
3425 /* 33222222222211111111110000000000
3426 10987654321098765432109876543210
3427 xxxxxxxxxxxxx1xxxxxxx000101100xx
3428 st3. */
3429 return 431;
3430 }
3431 else
3432 {
3433 /* 33222222222211111111110000000000
3434 10987654321098765432109876543210
3435 xxxxxxxxxxxxx1xxxxxxx100101100xx
3436 st4. */
3437 return 433;
3438 }
3439 }
3440 }
3441 else
3442 {
3443 /* 33222222222211111111110000000000
3444 10987654321098765432109876543210
3445 xxxxxxxxxxxxxxxxxxxxxx00101101xx
3446 stp. */
3447 return 881;
3448 }
3449 }
3450 }
3451 else
3452 {
3453 if (((word >> 29) & 0x1) == 0)
3454 {
3455 if (((word >> 21) & 0x1) == 0)
3456 {
3457 if (((word >> 24) & 0x1) == 0)
3458 {
3459 /* 33222222222211111111110000000000
3460 10987654321098765432109876543210
3461 xxxxxxxxxxxxxxxxxxxxx001001100xx
3462 st4. */
3463 return 422;
3464 }
3465 else
3466 {
3467 if (((word >> 13) & 0x1) == 0)
3468 {
3469 /* 33222222222211111111110000000000
3470 10987654321098765432109876543210
3471 xxxxxxxxxxxxx0xxxxxxx001101100xx
3472 st1. */
3473 return 442;
3474 }
3475 else
3476 {
3477 /* 33222222222211111111110000000000
3478 10987654321098765432109876543210
3479 xxxxxxxxxxxxx1xxxxxxx001101100xx
3480 st3. */
3481 return 443;
3482 }
3483 }
3484 }
3485 else
3486 {
3487 if (((word >> 13) & 0x1) == 0)
3488 {
3489 /* 33222222222211111111110000000000
3490 10987654321098765432109876543210
3491 xxxxxxxxxxxxx0xxxxxxx101x01100xx
3492 st2. */
3493 return 444;
3494 }
3495 else
3496 {
3497 /* 33222222222211111111110000000000
3498 10987654321098765432109876543210
3499 xxxxxxxxxxxxx1xxxxxxx101x01100xx
3500 st4. */
3501 return 445;
3502 }
3503 }
3504 }
3505 else
3506 {
3507 /* 33222222222211111111110000000000
3508 10987654321098765432109876543210
3509 xxxxxxxxxxxxxxxxxxxxxx01x01101xx
3510 stp. */
3511 return 886;
3512 }
3513 }
3514 }
3515 else
3516 {
3517 if (((word >> 23) & 0x1) == 0)
3518 {
3519 if (((word >> 24) & 0x1) == 0)
3520 {
3521 if (((word >> 29) & 0x1) == 0)
3522 {
3523 /* 33222222222211111111110000000000
3524 10987654321098765432109876543210
3525 xxxxxxxxxxxxxxxxxxxxxx10001100xx
3526 ld4. */
3527 return 418;
3528 }
3529 else
3530 {
3531 /* 33222222222211111111110000000000
3532 10987654321098765432109876543210
3533 xxxxxxxxxxxxxxxxxxxxxx10001101xx
3534 ldnp. */
3535 return 878;
3536 }
3537 }
3538 else
3539 {
3540 if (((word >> 29) & 0x1) == 0)
3541 {
3542 if (((word >> 13) & 0x1) == 0)
3543 {
3544 if (((word >> 21) & 0x1) == 0)
3545 {
3546 /* 33222222222211111111110000000000
3547 10987654321098765432109876543210
3548 xxxxxxxxxxxxx0xxxxxxx010101100xx
3549 ld1. */
3550 return 434;
3551 }
3552 else
3553 {
3554 /* 33222222222211111111110000000000
3555 10987654321098765432109876543210
3556 xxxxxxxxxxxxx0xxxxxxx110101100xx
3557 ld2. */
3558 return 438;
3559 }
3560 }
3561 else
3562 {
3563 if (((word >> 21) & 0x1) == 0)
3564 {
3565 /* 33222222222211111111110000000000
3566 10987654321098765432109876543210
3567 xxxxxxxxxxxxx1xxxxxxx010101100xx
3568 ld3. */
3569 return 435;
3570 }
3571 else
3572 {
3573 /* 33222222222211111111110000000000
3574 10987654321098765432109876543210
3575 xxxxxxxxxxxxx1xxxxxxx110101100xx
3576 ld4. */
3577 return 439;
3578 }
3579 }
3580 }
3581 else
3582 {
3583 /* 33222222222211111111110000000000
3584 10987654321098765432109876543210
3585 xxxxxxxxxxxxxxxxxxxxxx10101101xx
3586 ldp. */
3587 return 882;
3588 }
3589 }
3590 }
3591 else
3592 {
3593 if (((word >> 29) & 0x1) == 0)
3594 {
3595 if (((word >> 21) & 0x1) == 0)
3596 {
3597 if (((word >> 24) & 0x1) == 0)
3598 {
3599 /* 33222222222211111111110000000000
3600 10987654321098765432109876543210
3601 xxxxxxxxxxxxxxxxxxxxx011001100xx
3602 ld4. */
3603 return 426;
3604 }
3605 else
3606 {
3607 if (((word >> 13) & 0x1) == 0)
3608 {
3609 /* 33222222222211111111110000000000
3610 10987654321098765432109876543210
3611 xxxxxxxxxxxxx0xxxxxxx011101100xx
3612 ld1. */
3613 return 446;
3614 }
3615 else
3616 {
3617 /* 33222222222211111111110000000000
3618 10987654321098765432109876543210
3619 xxxxxxxxxxxxx1xxxxxxx011101100xx
3620 ld3. */
3621 return 447;
3622 }
3623 }
3624 }
3625 else
3626 {
3627 if (((word >> 13) & 0x1) == 0)
3628 {
3629 /* 33222222222211111111110000000000
3630 10987654321098765432109876543210
3631 xxxxxxxxxxxxx0xxxxxxx111x01100xx
3632 ld2. */
3633 return 450;
3634 }
3635 else
3636 {
3637 /* 33222222222211111111110000000000
3638 10987654321098765432109876543210
3639 xxxxxxxxxxxxx1xxxxxxx111x01100xx
3640 ld4. */
3641 return 451;
3642 }
3643 }
3644 }
3645 else
3646 {
3647 /* 33222222222211111111110000000000
3648 10987654321098765432109876543210
3649 xxxxxxxxxxxxxxxxxxxxxx11x01101xx
3650 ldp. */
3651 return 887;
3652 }
3653 }
3654 }
3655 }
3656 else
3657 {
3658 if (((word >> 24) & 0x1) == 0)
3659 {
3660 if (((word >> 29) & 0x1) == 0)
3661 {
3662 /* 33222222222211111111110000000000
3663 10987654321098765432109876543210
3664 xxxxxxxxxxxxxxxxxxxxxxxx001110xx
3665 ldr. */
3666 return 890;
3667 }
3668 else
3669 {
3670 if (((word >> 10) & 0x1) == 0)
3671 {
3672 if (((word >> 11) & 0x1) == 0)
3673 {
3674 if (((word >> 22) & 0x1) == 0)
3675 {
3676 /* 33222222222211111111110000000000
3677 10987654321098765432109876543210
3678 xxxxxxxxxx00xxxxxxxxxx0x001111xx
3679 stur. */
3680 return 838;
3681 }
3682 else
3683 {
3684 /* 33222222222211111111110000000000
3685 10987654321098765432109876543210
3686 xxxxxxxxxx00xxxxxxxxxx1x001111xx
3687 ldur. */
3688 return 839;
3689 }
3690 }
3691 else
3692 {
3693 if (((word >> 22) & 0x1) == 0)
3694 {
3695 /* 33222222222211111111110000000000
3696 10987654321098765432109876543210
3697 xxxxxxxxxx01xxxxxxxxxx0x001111xx
3698 str. */
3699 return 817;
3700 }
3701 else
3702 {
3703 /* 33222222222211111111110000000000
3704 10987654321098765432109876543210
3705 xxxxxxxxxx01xxxxxxxxxx1x001111xx
3706 ldr. */
3707 return 818;
3708 }
3709 }
3710 }
3711 else
3712 {
3713 if (((word >> 22) & 0x1) == 0)
3714 {
3715 /* 33222222222211111111110000000000
3716 10987654321098765432109876543210
3717 xxxxxxxxxx1xxxxxxxxxxx0x001111xx
3718 str. */
3719 return 794;
3720 }
3721 else
3722 {
3723 /* 33222222222211111111110000000000
3724 10987654321098765432109876543210
3725 xxxxxxxxxx1xxxxxxxxxxx1x001111xx
3726 ldr. */
3727 return 795;
3728 }
3729 }
3730 }
3731 }
3732 else
3733 {
3734 if (((word >> 22) & 0x1) == 0)
3735 {
3736 /* 33222222222211111111110000000000
3737 10987654321098765432109876543210
3738 xxxxxxxxxxxxxxxxxxxxxx0x10111xxx
3739 str. */
3740 return 805;
3741 }
3742 else
3743 {
3744 /* 33222222222211111111110000000000
3745 10987654321098765432109876543210
3746 xxxxxxxxxxxxxxxxxxxxxx1x10111xxx
3747 ldr. */
3748 return 806;
3749 }
3750 }
3751 }
3752 }
3753 else
3754 {
3755 if (((word >> 24) & 0x1) == 0)
3756 {
3757 if (((word >> 21) & 0x1) == 0)
3758 {
3759 if (((word >> 28) & 0x1) == 0)
3760 {
3761 if (((word >> 10) & 0x1) == 0)
3762 {
3763 if (((word >> 29) & 0x1) == 0)
3764 {
3765 if (((word >> 11) & 0x1) == 0)
3766 {
3767 if (((word >> 12) & 0x1) == 0)
3768 {
3769 /* 33222222222211111111110000000000
3770 10987654321098765432109876543210
3771 xxxxxxxxxx000xxxxxxxx0xx011100xx
3772 tbl. */
3773 return 398;
3774 }
3775 else
3776 {
3777 /* 33222222222211111111110000000000
3778 10987654321098765432109876543210
3779 xxxxxxxxxx001xxxxxxxx0xx011100xx
3780 tbx. */
3781 return 399;
3782 }
3783 }
3784 else
3785 {
3786 if (((word >> 12) & 0x1) == 0)
3787 {
3788 if (((word >> 14) & 0x1) == 0)
3789 {
3790 /* 33222222222211111111110000000000
3791 10987654321098765432109876543210
3792 xxxxxxxxxx010x0xxxxxx0xx011100xx
3793 trn1. */
3794 return 247;
3795 }
3796 else
3797 {
3798 /* 33222222222211111111110000000000
3799 10987654321098765432109876543210
3800 xxxxxxxxxx010x1xxxxxx0xx011100xx
3801 trn2. */
3802 return 250;
3803 }
3804 }
3805 else
3806 {
3807 if (((word >> 13) & 0x1) == 0)
3808 {
3809 if (((word >> 14) & 0x1) == 0)
3810 {
3811 /* 33222222222211111111110000000000
3812 10987654321098765432109876543210
3813 xxxxxxxxxx01100xxxxxx0xx011100xx
3814 uzp1. */
3815 return 246;
3816 }
3817 else
3818 {
3819 /* 33222222222211111111110000000000
3820 10987654321098765432109876543210
3821 xxxxxxxxxx01101xxxxxx0xx011100xx
3822 uzp2. */
3823 return 249;
3824 }
3825 }
3826 else
3827 {
3828 if (((word >> 14) & 0x1) == 0)
3829 {
3830 /* 33222222222211111111110000000000
3831 10987654321098765432109876543210
3832 xxxxxxxxxx01110xxxxxx0xx011100xx
3833 zip1. */
3834 return 248;
3835 }
3836 else
3837 {
3838 /* 33222222222211111111110000000000
3839 10987654321098765432109876543210
3840 xxxxxxxxxx01111xxxxxx0xx011100xx
3841 zip2. */
3842 return 251;
3843 }
3844 }
3845 }
3846 }
3847 }
3848 else
3849 {
3850 /* 33222222222211111111110000000000
3851 10987654321098765432109876543210
3852 xxxxxxxxxx0xxxxxxxxxx0xx011101xx
3853 ext. */
3854 return 121;
3855 }
3856 }
3857 else
3858 {
3859 if (((word >> 15) & 0x1) == 0)
3860 {
3861 if (((word >> 22) & 0x1) == 0)
3862 {
3863 if (((word >> 29) & 0x1) == 0)
3864 {
3865 if (((word >> 11) & 0x1) == 0)
3866 {
3867 /* 33222222222211111111110000000000
3868 10987654321098765432109876543210
3869 xxxxxxxxxx10xxx0xxxxx00x011100xx
3870 dup. */
3871 return 137;
3872 }
3873 else
3874 {
3875 if (((word >> 12) & 0x1) == 0)
3876 {
3877 if (((word >> 13) & 0x1) == 0)
3878 {
3879 /* 33222222222211111111110000000000
3880 10987654321098765432109876543210
3881 xxxxxxxxxx1100x0xxxxx00x011100xx
3882 dup. */
3883 return 138;
3884 }
3885 else
3886 {
3887 /* 33222222222211111111110000000000
3888 10987654321098765432109876543210
3889 xxxxxxxxxx1101x0xxxxx00x011100xx
3890 smov. */
3891 return 139;
3892 }
3893 }
3894 else
3895 {
3896 if (((word >> 13) & 0x1) == 0)
3897 {
3898 /* 33222222222211111111110000000000
3899 10987654321098765432109876543210
3900 xxxxxxxxxx1110x0xxxxx00x011100xx
3901 ins. */
3902 return 142;
3903 }
3904 else
3905 {
3906 /* 33222222222211111111110000000000
3907 10987654321098765432109876543210
3908 xxxxxxxxxx1111x0xxxxx00x011100xx
3909 umov. */
3910 return 140;
3911 }
3912 }
3913 }
3914 }
3915 else
3916 {
3917 /* 33222222222211111111110000000000
3918 10987654321098765432109876543210
3919 xxxxxxxxxx1xxxx0xxxxx00x011101xx
3920 ins. */
3921 return 144;
3922 }
3923 }
3924 else
3925 {
3926 if (((word >> 11) & 0x1) == 0)
3927 {
3928 if (((word >> 12) & 0x1) == 0)
3929 {
3930 if (((word >> 13) & 0x1) == 0)
3931 {
3932 if (((word >> 23) & 0x1) == 0)
3933 {
3934 if (((word >> 29) & 0x1) == 0)
3935 {
3936 /* 33222222222211111111110000000000
3937 10987654321098765432109876543210
3938 xxxxxxxxxx1000x0xxxxx010011100xx
3939 fmaxnm. */
3940 return 276;
3941 }
3942 else
3943 {
3944 /* 33222222222211111111110000000000
3945 10987654321098765432109876543210
3946 xxxxxxxxxx1000x0xxxxx010011101xx
3947 fmaxnmp. */
3948 return 327;
3949 }
3950 }
3951 else
3952 {
3953 if (((word >> 29) & 0x1) == 0)
3954 {
3955 /* 33222222222211111111110000000000
3956 10987654321098765432109876543210
3957 xxxxxxxxxx1000x0xxxxx011011100xx
3958 fminnm. */
3959 return 292;
3960 }
3961 else
3962 {
3963 /* 33222222222211111111110000000000
3964 10987654321098765432109876543210
3965 xxxxxxxxxx1000x0xxxxx011011101xx
3966 fminnmp. */
3967 return 343;
3968 }
3969 }
3970 }
3971 else
3972 {
3973 if (((word >> 23) & 0x1) == 0)
3974 {
3975 if (((word >> 29) & 0x1) == 0)
3976 {
3977 /* 33222222222211111111110000000000
3978 10987654321098765432109876543210
3979 xxxxxxxxxx1001x0xxxxx010011100xx
3980 fcmeq. */
3981 return 284;
3982 }
3983 else
3984 {
3985 /* 33222222222211111111110000000000
3986 10987654321098765432109876543210
3987 xxxxxxxxxx1001x0xxxxx010011101xx
3988 fcmge. */
3989 return 333;
3990 }
3991 }
3992 else
3993 {
3994 /* 33222222222211111111110000000000
3995 10987654321098765432109876543210
3996 xxxxxxxxxx1001x0xxxxx01101110xxx
3997 fcmgt. */
3998 return 347;
3999 }
4000 }
4001 }
4002 else
4003 {
4004 if (((word >> 13) & 0x1) == 0)
4005 {
4006 if (((word >> 23) & 0x1) == 0)
4007 {
4008 if (((word >> 29) & 0x1) == 0)
4009 {
4010 /* 33222222222211111111110000000000
4011 10987654321098765432109876543210
4012 xxxxxxxxxx1010x0xxxxx010011100xx
4013 fadd. */
4014 return 280;
4015 }
4016 else
4017 {
4018 /* 33222222222211111111110000000000
4019 10987654321098765432109876543210
4020 xxxxxxxxxx1010x0xxxxx010011101xx
4021 faddp. */
4022 return 329;
4023 }
4024 }
4025 else
4026 {
4027 if (((word >> 29) & 0x1) == 0)
4028 {
4029 /* 33222222222211111111110000000000
4030 10987654321098765432109876543210
4031 xxxxxxxxxx1010x0xxxxx011011100xx
4032 fsub. */
4033 return 296;
4034 }
4035 else
4036 {
4037 /* 33222222222211111111110000000000
4038 10987654321098765432109876543210
4039 xxxxxxxxxx1010x0xxxxx011011101xx
4040 fabd. */
4041 return 345;
4042 }
4043 }
4044 }
4045 else
4046 {
4047 if (((word >> 23) & 0x1) == 0)
4048 {
4049 if (((word >> 29) & 0x1) == 0)
4050 {
4051 /* 33222222222211111111110000000000
4052 10987654321098765432109876543210
4053 xxxxxxxxxx1011x0xxxxx010011100xx
4054 fmax. */
4055 return 286;
4056 }
4057 else
4058 {
4059 /* 33222222222211111111110000000000
4060 10987654321098765432109876543210
4061 xxxxxxxxxx1011x0xxxxx010011101xx
4062 fmaxp. */
4063 return 337;
4064 }
4065 }
4066 else
4067 {
4068 if (((word >> 29) & 0x1) == 0)
4069 {
4070 /* 33222222222211111111110000000000
4071 10987654321098765432109876543210
4072 xxxxxxxxxx1011x0xxxxx011011100xx
4073 fmin. */
4074 return 298;
4075 }
4076 else
4077 {
4078 /* 33222222222211111111110000000000
4079 10987654321098765432109876543210
4080 xxxxxxxxxx1011x0xxxxx011011101xx
4081 fminp. */
4082 return 351;
4083 }
4084 }
4085 }
4086 }
4087 }
4088 else
4089 {
4090 if (((word >> 12) & 0x1) == 0)
4091 {
4092 if (((word >> 13) & 0x1) == 0)
4093 {
4094 if (((word >> 23) & 0x1) == 0)
4095 {
4096 /* 33222222222211111111110000000000
4097 10987654321098765432109876543210
4098 xxxxxxxxxx1100x0xxxxx01001110xxx
4099 fmla. */
4100 return 278;
4101 }
4102 else
4103 {
4104 /* 33222222222211111111110000000000
4105 10987654321098765432109876543210
4106 xxxxxxxxxx1100x0xxxxx01101110xxx
4107 fmls. */
4108 return 294;
4109 }
4110 }
4111 else
4112 {
4113 if (((word >> 23) & 0x1) == 0)
4114 {
4115 /* 33222222222211111111110000000000
4116 10987654321098765432109876543210
4117 xxxxxxxxxx1101x0xxxxx01001110xxx
4118 facge. */
4119 return 335;
4120 }
4121 else
4122 {
4123 /* 33222222222211111111110000000000
4124 10987654321098765432109876543210
4125 xxxxxxxxxx1101x0xxxxx01101110xxx
4126 facgt. */
4127 return 349;
4128 }
4129 }
4130 }
4131 else
4132 {
4133 if (((word >> 13) & 0x1) == 0)
4134 {
4135 if (((word >> 29) & 0x1) == 0)
4136 {
4137 /* 33222222222211111111110000000000
4138 10987654321098765432109876543210
4139 xxxxxxxxxx1110x0xxxxx01x011100xx
4140 fmulx. */
4141 return 282;
4142 }
4143 else
4144 {
4145 /* 33222222222211111111110000000000
4146 10987654321098765432109876543210
4147 xxxxxxxxxx1110x0xxxxx01x011101xx
4148 fmul. */
4149 return 331;
4150 }
4151 }
4152 else
4153 {
4154 if (((word >> 23) & 0x1) == 0)
4155 {
4156 if (((word >> 29) & 0x1) == 0)
4157 {
4158 /* 33222222222211111111110000000000
4159 10987654321098765432109876543210
4160 xxxxxxxxxx1111x0xxxxx010011100xx
4161 frecps. */
4162 return 288;
4163 }
4164 else
4165 {
4166 /* 33222222222211111111110000000000
4167 10987654321098765432109876543210
4168 xxxxxxxxxx1111x0xxxxx010011101xx
4169 fdiv. */
4170 return 339;
4171 }
4172 }
4173 else
4174 {
4175 /* 33222222222211111111110000000000
4176 10987654321098765432109876543210
4177 xxxxxxxxxx1111x0xxxxx01101110xxx
4178 frsqrts. */
4179 return 300;
4180 }
4181 }
4182 }
4183 }
4184 }
4185 }
4186 else
4187 {
4188 if (((word >> 11) & 0x1) == 0)
4189 {
4190 /* 33222222222211111111110000000000
4191 10987654321098765432109876543210
4192 xxxxxxxxxx10xxx1xxxxx0xx01110xxx
4193 sqrdmlah. */
4194 return 354;
4195 }
4196 else
4197 {
4198 /* 33222222222211111111110000000000
4199 10987654321098765432109876543210
4200 xxxxxxxxxx11xxx1xxxxx0xx01110xxx
4201 sqrdmlsh. */
4202 return 355;
4203 }
4204 }
4205 }
4206 }
4207 else
4208 {
4209 if (((word >> 29) & 0x1) == 0)
4210 {
4211 if (((word >> 30) & 0x1) == 0)
4212 {
4213 if (((word >> 16) & 0x1) == 0)
4214 {
4215 if (((word >> 17) & 0x1) == 0)
4216 {
4217 /* 33222222222211111111110000000000
4218 10987654321098765432109876543210
4219 xxxxxxxxxxxxxxxx00xxx0xx0111100x
4220 fcvtzs. */
4221 return 692;
4222 }
4223 else
4224 {
4225 /* 33222222222211111111110000000000
4226 10987654321098765432109876543210
4227 xxxxxxxxxxxxxxxx01xxx0xx0111100x
4228 scvtf. */
4229 return 688;
4230 }
4231 }
4232 else
4233 {
4234 if (((word >> 17) & 0x1) == 0)
4235 {
4236 /* 33222222222211111111110000000000
4237 10987654321098765432109876543210
4238 xxxxxxxxxxxxxxxx10xxx0xx0111100x
4239 fcvtzu. */
4240 return 694;
4241 }
4242 else
4243 {
4244 /* 33222222222211111111110000000000
4245 10987654321098765432109876543210
4246 xxxxxxxxxxxxxxxx11xxx0xx0111100x
4247 ucvtf. */
4248 return 690;
4249 }
4250 }
4251 }
4252 else
4253 {
4254 if (((word >> 10) & 0x1) == 0)
4255 {
4256 if (((word >> 12) & 0x1) == 0)
4257 {
4258 if (((word >> 13) & 0x1) == 0)
4259 {
4260 if (((word >> 14) & 0x1) == 0)
4261 {
4262 /* 33222222222211111111110000000000
4263 10987654321098765432109876543210
4264 xxxxxxxxxx0x000xxxxxx0xx0111101x
4265 sha1c. */
4266 return 631;
4267 }
4268 else
4269 {
4270 /* 33222222222211111111110000000000
4271 10987654321098765432109876543210
4272 xxxxxxxxxx0x001xxxxxx0xx0111101x
4273 sha256h. */
4274 return 635;
4275 }
4276 }
4277 else
4278 {
4279 if (((word >> 14) & 0x1) == 0)
4280 {
4281 /* 33222222222211111111110000000000
4282 10987654321098765432109876543210
4283 xxxxxxxxxx0x010xxxxxx0xx0111101x
4284 sha1m. */
4285 return 633;
4286 }
4287 else
4288 {
4289 /* 33222222222211111111110000000000
4290 10987654321098765432109876543210
4291 xxxxxxxxxx0x011xxxxxx0xx0111101x
4292 sha256su1. */
4293 return 637;
4294 }
4295 }
4296 }
4297 else
4298 {
4299 if (((word >> 13) & 0x1) == 0)
4300 {
4301 if (((word >> 14) & 0x1) == 0)
4302 {
4303 /* 33222222222211111111110000000000
4304 10987654321098765432109876543210
4305 xxxxxxxxxx0x100xxxxxx0xx0111101x
4306 sha1p. */
4307 return 632;
4308 }
4309 else
4310 {
4311 /* 33222222222211111111110000000000
4312 10987654321098765432109876543210
4313 xxxxxxxxxx0x101xxxxxx0xx0111101x
4314 sha256h2. */
4315 return 636;
4316 }
4317 }
4318 else
4319 {
4320 /* 33222222222211111111110000000000
4321 10987654321098765432109876543210
4322 xxxxxxxxxx0x11xxxxxxx0xx0111101x
4323 sha1su0. */
4324 return 634;
4325 }
4326 }
4327 }
4328 else
4329 {
4330 if (((word >> 11) & 0x1) == 0)
4331 {
4332 if (((word >> 13) & 0x1) == 0)
4333 {
4334 /* 33222222222211111111110000000000
4335 10987654321098765432109876543210
4336 xxxxxxxxxx10x0xxxxxxx0xx0111101x
4337 dup. */
4338 return 509;
4339 }
4340 else
4341 {
4342 /* 33222222222211111111110000000000
4343 10987654321098765432109876543210
4344 xxxxxxxxxx10x1xxxxxxx0xx0111101x
4345 fcmeq. */
4346 return 525;
4347 }
4348 }
4349 else
4350 {
4351 if (((word >> 13) & 0x1) == 0)
4352 {
4353 /* 33222222222211111111110000000000
4354 10987654321098765432109876543210
4355 xxxxxxxxxx11x0xxxxxxx0xx0111101x
4356 fmulx. */
4357 return 523;
4358 }
4359 else
4360 {
4361 if (((word >> 23) & 0x1) == 0)
4362 {
4363 /* 33222222222211111111110000000000
4364 10987654321098765432109876543210
4365 xxxxxxxxxx11x1xxxxxxx0x00111101x
4366 frecps. */
4367 return 527;
4368 }
4369 else
4370 {
4371 /* 33222222222211111111110000000000
4372 10987654321098765432109876543210
4373 xxxxxxxxxx11x1xxxxxxx0x10111101x
4374 frsqrts. */
4375 return 529;
4376 }
4377 }
4378 }
4379 }
4380 }
4381 }
4382 else
4383 {
4384 if (((word >> 11) & 0x1) == 0)
4385 {
4386 if (((word >> 12) & 0x1) == 0)
4387 {
4388 if (((word >> 13) & 0x1) == 0)
4389 {
4390 /* 33222222222211111111110000000000
4391 10987654321098765432109876543210
4392 xxxxxxxxxxx000xxxxxxx0xx011111xx
4393 sqrdmlah. */
4394 return 557;
4395 }
4396 else
4397 {
4398 if (((word >> 23) & 0x1) == 0)
4399 {
4400 /* 33222222222211111111110000000000
4401 10987654321098765432109876543210
4402 xxxxxxxxxxx001xxxxxxx0x0011111xx
4403 fcmge. */
4404 return 542;
4405 }
4406 else
4407 {
4408 /* 33222222222211111111110000000000
4409 10987654321098765432109876543210
4410 xxxxxxxxxxx001xxxxxxx0x1011111xx
4411 fcmgt. */
4412 return 548;
4413 }
4414 }
4415 }
4416 else
4417 {
4418 /* 33222222222211111111110000000000
4419 10987654321098765432109876543210
4420 xxxxxxxxxxx01xxxxxxxx0xx011111xx
4421 fabd. */
4422 return 546;
4423 }
4424 }
4425 else
4426 {
4427 if (((word >> 13) & 0x1) == 0)
4428 {
4429 /* 33222222222211111111110000000000
4430 10987654321098765432109876543210
4431 xxxxxxxxxxx1x0xxxxxxx0xx011111xx
4432 sqrdmlsh. */
4433 return 558;
4434 }
4435 else
4436 {
4437 if (((word >> 23) & 0x1) == 0)
4438 {
4439 /* 33222222222211111111110000000000
4440 10987654321098765432109876543210
4441 xxxxxxxxxxx1x1xxxxxxx0x0011111xx
4442 facge. */
4443 return 544;
4444 }
4445 else
4446 {
4447 /* 33222222222211111111110000000000
4448 10987654321098765432109876543210
4449 xxxxxxxxxxx1x1xxxxxxx0x1011111xx
4450 facgt. */
4451 return 550;
4452 }
4453 }
4454 }
4455 }
4456 }
4457 }
4458 else
4459 {
4460 if (((word >> 10) & 0x1) == 0)
4461 {
4462 if (((word >> 11) & 0x1) == 0)
4463 {
4464 if (((word >> 12) & 0x1) == 0)
4465 {
4466 if (((word >> 13) & 0x1) == 0)
4467 {
4468 if (((word >> 14) & 0x1) == 0)
4469 {
4470 if (((word >> 15) & 0x1) == 0)
4471 {
4472 if (((word >> 28) & 0x1) == 0)
4473 {
4474 if (((word >> 29) & 0x1) == 0)
4475 {
4476 if (((word >> 30) & 0x1) == 0)
4477 {
4478 /* 33222222222211111111110000000000
4479 10987654321098765432109876543210
4480 xxxxxxxxxx000000xxxxx1xx0111000x
4481 saddl. */
4482 return 38;
4483 }
4484 else
4485 {
4486 /* 33222222222211111111110000000000
4487 10987654321098765432109876543210
4488 xxxxxxxxxx000000xxxxx1xx0111001x
4489 saddl2. */
4490 return 39;
4491 }
4492 }
4493 else
4494 {
4495 if (((word >> 30) & 0x1) == 0)
4496 {
4497 /* 33222222222211111111110000000000
4498 10987654321098765432109876543210
4499 xxxxxxxxxx000000xxxxx1xx0111010x
4500 uaddl. */
4501 return 70;
4502 }
4503 else
4504 {
4505 /* 33222222222211111111110000000000
4506 10987654321098765432109876543210
4507 xxxxxxxxxx000000xxxxx1xx0111011x
4508 uaddl2. */
4509 return 71;
4510 }
4511 }
4512 }
4513 else
4514 {
4515 if (((word >> 16) & 0x1) == 0)
4516 {
4517 if (((word >> 17) & 0x1) == 0)
4518 {
4519 if (((word >> 18) & 0x1) == 0)
4520 {
4521 if (((word >> 19) & 0x1) == 0)
4522 {
4523 if (((word >> 20) & 0x1) == 0)
4524 {
4525 /* 33222222222211111111110000000000
4526 10987654321098765432109876543210
4527 xxxxxxxxxx000000000001xx01111xxx
4528 fcvtns. */
4529 return 696;
4530 }
4531 else
4532 {
4533 /* 33222222222211111111110000000000
4534 10987654321098765432109876543210
4535 xxxxxxxxxx000000000011xx01111xxx
4536 fcvtms. */
4537 return 716;
4538 }
4539 }
4540 else
4541 {
4542 if (((word >> 20) & 0x1) == 0)
4543 {
4544 /* 33222222222211111111110000000000
4545 10987654321098765432109876543210
4546 xxxxxxxxxx000000000101xx01111xxx
4547 fcvtps. */
4548 return 712;
4549 }
4550 else
4551 {
4552 /* 33222222222211111111110000000000
4553 10987654321098765432109876543210
4554 xxxxxxxxxx000000000111xx01111xxx
4555 fcvtzs. */
4556 return 720;
4557 }
4558 }
4559 }
4560 else
4561 {
4562 /* 33222222222211111111110000000000
4563 10987654321098765432109876543210
4564 xxxxxxxxxx000000001xx1xx01111xxx
4565 fcvtas. */
4566 return 704;
4567 }
4568 }
4569 else
4570 {
4571 if (((word >> 18) & 0x1) == 0)
4572 {
4573 /* 33222222222211111111110000000000
4574 10987654321098765432109876543210
4575 xxxxxxxxxx000000010xx1xx01111xxx
4576 scvtf. */
4577 return 700;
4578 }
4579 else
4580 {
4581 if (((word >> 19) & 0x1) == 0)
4582 {
4583 /* 33222222222211111111110000000000
4584 10987654321098765432109876543210
4585 xxxxxxxxxx0000000110x1xx01111xxx
4586 fmov. */
4587 return 708;
4588 }
4589 else
4590 {
4591 /* 33222222222211111111110000000000
4592 10987654321098765432109876543210
4593 xxxxxxxxxx0000000111x1xx01111xxx
4594 fmov. */
4595 return 724;
4596 }
4597 }
4598 }
4599 }
4600 else
4601 {
4602 if (((word >> 17) & 0x1) == 0)
4603 {
4604 if (((word >> 18) & 0x1) == 0)
4605 {
4606 if (((word >> 19) & 0x1) == 0)
4607 {
4608 if (((word >> 20) & 0x1) == 0)
4609 {
4610 /* 33222222222211111111110000000000
4611 10987654321098765432109876543210
4612 xxxxxxxxxx000000100001xx01111xxx
4613 fcvtnu. */
4614 return 698;
4615 }
4616 else
4617 {
4618 /* 33222222222211111111110000000000
4619 10987654321098765432109876543210
4620 xxxxxxxxxx000000100011xx01111xxx
4621 fcvtmu. */
4622 return 718;
4623 }
4624 }
4625 else
4626 {
4627 if (((word >> 20) & 0x1) == 0)
4628 {
4629 /* 33222222222211111111110000000000
4630 10987654321098765432109876543210
4631 xxxxxxxxxx000000100101xx01111xxx
4632 fcvtpu. */
4633 return 714;
4634 }
4635 else
4636 {
4637 /* 33222222222211111111110000000000
4638 10987654321098765432109876543210
4639 xxxxxxxxxx000000100111xx01111xxx
4640 fcvtzu. */
4641 return 722;
4642 }
4643 }
4644 }
4645 else
4646 {
4647 /* 33222222222211111111110000000000
4648 10987654321098765432109876543210
4649 xxxxxxxxxx000000101xx1xx01111xxx
4650 fcvtau. */
4651 return 706;
4652 }
4653 }
4654 else
4655 {
4656 if (((word >> 18) & 0x1) == 0)
4657 {
4658 /* 33222222222211111111110000000000
4659 10987654321098765432109876543210
4660 xxxxxxxxxx000000110xx1xx01111xxx
4661 ucvtf. */
4662 return 702;
4663 }
4664 else
4665 {
4666 if (((word >> 19) & 0x1) == 0)
4667 {
4668 /* 33222222222211111111110000000000
4669 10987654321098765432109876543210
4670 xxxxxxxxxx0000001110x1xx01111xxx
4671 fmov. */
4672 return 710;
4673 }
4674 else
4675 {
4676 /* 33222222222211111111110000000000
4677 10987654321098765432109876543210
4678 xxxxxxxxxx0000001111x1xx01111xxx
4679 fmov. */
4680 return 725;
4681 }
4682 }
4683 }
4684 }
4685 }
4686 }
4687 else
4688 {
4689 if (((word >> 29) & 0x1) == 0)
4690 {
4691 if (((word >> 30) & 0x1) == 0)
4692 {
4693 /* 33222222222211111111110000000000
4694 10987654321098765432109876543210
4695 xxxxxxxxxx000001xxxxx1xx0111x00x
4696 smlal. */
4697 return 54;
4698 }
4699 else
4700 {
4701 /* 33222222222211111111110000000000
4702 10987654321098765432109876543210
4703 xxxxxxxxxx000001xxxxx1xx0111x01x
4704 smlal2. */
4705 return 55;
4706 }
4707 }
4708 else
4709 {
4710 if (((word >> 30) & 0x1) == 0)
4711 {
4712 /* 33222222222211111111110000000000
4713 10987654321098765432109876543210
4714 xxxxxxxxxx000001xxxxx1xx0111x10x
4715 umlal. */
4716 return 86;
4717 }
4718 else
4719 {
4720 /* 33222222222211111111110000000000
4721 10987654321098765432109876543210
4722 xxxxxxxxxx000001xxxxx1xx0111x11x
4723 umlal2. */
4724 return 87;
4725 }
4726 }
4727 }
4728 }
4729 else
4730 {
4731 if (((word >> 28) & 0x1) == 0)
4732 {
4733 if (((word >> 15) & 0x1) == 0)
4734 {
4735 if (((word >> 29) & 0x1) == 0)
4736 {
4737 if (((word >> 30) & 0x1) == 0)
4738 {
4739 /* 33222222222211111111110000000000
4740 10987654321098765432109876543210
4741 xxxxxxxxxx000010xxxxx1xx0111000x
4742 addhn. */
4743 return 46;
4744 }
4745 else
4746 {
4747 /* 33222222222211111111110000000000
4748 10987654321098765432109876543210
4749 xxxxxxxxxx000010xxxxx1xx0111001x
4750 addhn2. */
4751 return 47;
4752 }
4753 }
4754 else
4755 {
4756 if (((word >> 30) & 0x1) == 0)
4757 {
4758 /* 33222222222211111111110000000000
4759 10987654321098765432109876543210
4760 xxxxxxxxxx000010xxxxx1xx0111010x
4761 raddhn. */
4762 return 78;
4763 }
4764 else
4765 {
4766 /* 33222222222211111111110000000000
4767 10987654321098765432109876543210
4768 xxxxxxxxxx000010xxxxx1xx0111011x
4769 raddhn2. */
4770 return 79;
4771 }
4772 }
4773 }
4774 else
4775 {
4776 if (((word >> 29) & 0x1) == 0)
4777 {
4778 if (((word >> 30) & 0x1) == 0)
4779 {
4780 /* 33222222222211111111110000000000
4781 10987654321098765432109876543210
4782 xxxxxxxxxx000011xxxxx1xx0111000x
4783 smull. */
4784 return 62;
4785 }
4786 else
4787 {
4788 /* 33222222222211111111110000000000
4789 10987654321098765432109876543210
4790 xxxxxxxxxx000011xxxxx1xx0111001x
4791 smull2. */
4792 return 63;
4793 }
4794 }
4795 else
4796 {
4797 if (((word >> 30) & 0x1) == 0)
4798 {
4799 /* 33222222222211111111110000000000
4800 10987654321098765432109876543210
4801 xxxxxxxxxx000011xxxxx1xx0111010x
4802 umull. */
4803 return 90;
4804 }
4805 else
4806 {
4807 /* 33222222222211111111110000000000
4808 10987654321098765432109876543210
4809 xxxxxxxxxx000011xxxxx1xx0111011x
4810 umull2. */
4811 return 91;
4812 }
4813 }
4814 }
4815 }
4816 else
4817 {
4818 if (((word >> 17) & 0x1) == 0)
4819 {
4820 if (((word >> 15) & 0x1) == 0)
4821 {
4822 if (((word >> 16) & 0x1) == 0)
4823 {
4824 if (((word >> 18) & 0x1) == 0)
4825 {
4826 /* 33222222222211111111110000000000
4827 10987654321098765432109876543210
4828 xxxxxxxxxx000010000xx1xx01111xxx
4829 fmov. */
4830 return 738;
4831 }
4832 else
4833 {
4834 /* 33222222222211111111110000000000
4835 10987654321098765432109876543210
4836 xxxxxxxxxx000010001xx1xx01111xxx
4837 frintn. */
4838 return 747;
4839 }
4840 }
4841 else
4842 {
4843 if (((word >> 18) & 0x1) == 0)
4844 {
4845 /* 33222222222211111111110000000000
4846 10987654321098765432109876543210
4847 xxxxxxxxxx000010100xx1xx01111xxx
4848 fneg. */
4849 return 742;
4850 }
4851 else
4852 {
4853 /* 33222222222211111111110000000000
4854 10987654321098765432109876543210
4855 xxxxxxxxxx000010101xx1xx01111xxx
4856 frintm. */
4857 return 751;
4858 }
4859 }
4860 }
4861 else
4862 {
4863 if (((word >> 16) & 0x1) == 0)
4864 {
4865 if (((word >> 18) & 0x1) == 0)
4866 {
4867 /* 33222222222211111111110000000000
4868 10987654321098765432109876543210
4869 xxxxxxxxxx000011000xx1xx01111xxx
4870 fabs. */
4871 return 740;
4872 }
4873 else
4874 {
4875 /* 33222222222211111111110000000000
4876 10987654321098765432109876543210
4877 xxxxxxxxxx000011001xx1xx01111xxx
4878 frintp. */
4879 return 749;
4880 }
4881 }
4882 else
4883 {
4884 if (((word >> 18) & 0x1) == 0)
4885 {
4886 /* 33222222222211111111110000000000
4887 10987654321098765432109876543210
4888 xxxxxxxxxx000011100xx1xx01111xxx
4889 fsqrt. */
4890 return 744;
4891 }
4892 else
4893 {
4894 /* 33222222222211111111110000000000
4895 10987654321098765432109876543210
4896 xxxxxxxxxx000011101xx1xx01111xxx
4897 frintz. */
4898 return 753;
4899 }
4900 }
4901 }
4902 }
4903 else
4904 {
4905 if (((word >> 18) & 0x1) == 0)
4906 {
4907 /* 33222222222211111111110000000000
4908 10987654321098765432109876543210
4909 xxxxxxxxxx00001xx10xx1xx01111xxx
4910 fcvt. */
4911 return 746;
4912 }
4913 else
4914 {
4915 if (((word >> 15) & 0x1) == 0)
4916 {
4917 if (((word >> 16) & 0x1) == 0)
4918 {
4919 /* 33222222222211111111110000000000
4920 10987654321098765432109876543210
4921 xxxxxxxxxx000010011xx1xx01111xxx
4922 frinta. */
4923 return 755;
4924 }
4925 else
4926 {
4927 /* 33222222222211111111110000000000
4928 10987654321098765432109876543210
4929 xxxxxxxxxx000010111xx1xx01111xxx
4930 frintx. */
4931 return 757;
4932 }
4933 }
4934 else
4935 {
4936 /* 33222222222211111111110000000000
4937 10987654321098765432109876543210
4938 xxxxxxxxxx000011x11xx1xx01111xxx
4939 frinti. */
4940 return 759;
4941 }
4942 }
4943 }
4944 }
4945 }
4946 }
4947 else
4948 {
4949 if (((word >> 14) & 0x1) == 0)
4950 {
4951 if (((word >> 15) & 0x1) == 0)
4952 {
4953 if (((word >> 28) & 0x1) == 0)
4954 {
4955 if (((word >> 29) & 0x1) == 0)
4956 {
4957 if (((word >> 30) & 0x1) == 0)
4958 {
4959 /* 33222222222211111111110000000000
4960 10987654321098765432109876543210
4961 xxxxxxxxxx000100xxxxx1xx0111000x
4962 ssubl. */
4963 return 42;
4964 }
4965 else
4966 {
4967 /* 33222222222211111111110000000000
4968 10987654321098765432109876543210
4969 xxxxxxxxxx000100xxxxx1xx0111001x
4970 ssubl2. */
4971 return 43;
4972 }
4973 }
4974 else
4975 {
4976 if (((word >> 30) & 0x1) == 0)
4977 {
4978 /* 33222222222211111111110000000000
4979 10987654321098765432109876543210
4980 xxxxxxxxxx000100xxxxx1xx0111010x
4981 usubl. */
4982 return 74;
4983 }
4984 else
4985 {
4986 /* 33222222222211111111110000000000
4987 10987654321098765432109876543210
4988 xxxxxxxxxx000100xxxxx1xx0111011x
4989 usubl2. */
4990 return 75;
4991 }
4992 }
4993 }
4994 else
4995 {
4996 if (((word >> 3) & 0x1) == 0)
4997 {
4998 if (((word >> 4) & 0x1) == 0)
4999 {
5000 /* 33222222222211111111110000000000
5001 10987654321098765432109876543210
5002 xxx00xxxxx000100xxxxx1xx01111xxx
5003 fcmp. */
5004 return 730;
5005 }
5006 else
5007 {
5008 /* 33222222222211111111110000000000
5009 10987654321098765432109876543210
5010 xxx01xxxxx000100xxxxx1xx01111xxx
5011 fcmpe. */
5012 return 732;
5013 }
5014 }
5015 else
5016 {
5017 if (((word >> 4) & 0x1) == 0)
5018 {
5019 /* 33222222222211111111110000000000
5020 10987654321098765432109876543210
5021 xxx10xxxxx000100xxxxx1xx01111xxx
5022 fcmp. */
5023 return 734;
5024 }
5025 else
5026 {
5027 /* 33222222222211111111110000000000
5028 10987654321098765432109876543210
5029 xxx11xxxxx000100xxxxx1xx01111xxx
5030 fcmpe. */
5031 return 736;
5032 }
5033 }
5034 }
5035 }
5036 else
5037 {
5038 if (((word >> 29) & 0x1) == 0)
5039 {
5040 if (((word >> 30) & 0x1) == 0)
5041 {
5042 /* 33222222222211111111110000000000
5043 10987654321098765432109876543210
5044 xxxxxxxxxx000101xxxxx1xx0111x00x
5045 smlsl. */
5046 return 58;
5047 }
5048 else
5049 {
5050 /* 33222222222211111111110000000000
5051 10987654321098765432109876543210
5052 xxxxxxxxxx000101xxxxx1xx0111x01x
5053 smlsl2. */
5054 return 59;
5055 }
5056 }
5057 else
5058 {
5059 if (((word >> 30) & 0x1) == 0)
5060 {
5061 /* 33222222222211111111110000000000
5062 10987654321098765432109876543210
5063 xxxxxxxxxx000101xxxxx1xx0111x10x
5064 umlsl. */
5065 return 88;
5066 }
5067 else
5068 {
5069 /* 33222222222211111111110000000000
5070 10987654321098765432109876543210
5071 xxxxxxxxxx000101xxxxx1xx0111x11x
5072 umlsl2. */
5073 return 89;
5074 }
5075 }
5076 }
5077 }
5078 else
5079 {
5080 if (((word >> 15) & 0x1) == 0)
5081 {
5082 if (((word >> 29) & 0x1) == 0)
5083 {
5084 if (((word >> 30) & 0x1) == 0)
5085 {
5086 /* 33222222222211111111110000000000
5087 10987654321098765432109876543210
5088 xxxxxxxxxx000110xxxxx1xx0111x00x
5089 subhn. */
5090 return 50;
5091 }
5092 else
5093 {
5094 /* 33222222222211111111110000000000
5095 10987654321098765432109876543210
5096 xxxxxxxxxx000110xxxxx1xx0111x01x
5097 subhn2. */
5098 return 51;
5099 }
5100 }
5101 else
5102 {
5103 if (((word >> 30) & 0x1) == 0)
5104 {
5105 /* 33222222222211111111110000000000
5106 10987654321098765432109876543210
5107 xxxxxxxxxx000110xxxxx1xx0111x10x
5108 rsubhn. */
5109 return 82;
5110 }
5111 else
5112 {
5113 /* 33222222222211111111110000000000
5114 10987654321098765432109876543210
5115 xxxxxxxxxx000110xxxxx1xx0111x11x
5116 rsubhn2. */
5117 return 83;
5118 }
5119 }
5120 }
5121 else
5122 {
5123 if (((word >> 22) & 0x1) == 0)
5124 {
5125 if (((word >> 30) & 0x1) == 0)
5126 {
5127 /* 33222222222211111111110000000000
5128 10987654321098765432109876543210
5129 xxxxxxxxxx000111xxxxx10x0111xx0x
5130 pmull. */
5131 return 66;
5132 }
5133 else
5134 {
5135 /* 33222222222211111111110000000000
5136 10987654321098765432109876543210
5137 xxxxxxxxxx000111xxxxx10x0111xx1x
5138 pmull2. */
5139 return 68;
5140 }
5141 }
5142 else
5143 {
5144 if (((word >> 30) & 0x1) == 0)
5145 {
5146 /* 33222222222211111111110000000000
5147 10987654321098765432109876543210
5148 xxxxxxxxxx000111xxxxx11x0111xx0x
5149 pmull. */
5150 return 67;
5151 }
5152 else
5153 {
5154 /* 33222222222211111111110000000000
5155 10987654321098765432109876543210
5156 xxxxxxxxxx000111xxxxx11x0111xx1x
5157 pmull2. */
5158 return 69;
5159 }
5160 }
5161 }
5162 }
5163 }
5164 }
5165 else
5166 {
5167 if (((word >> 28) & 0x1) == 0)
5168 {
5169 if (((word >> 13) & 0x1) == 0)
5170 {
5171 if (((word >> 14) & 0x1) == 0)
5172 {
5173 if (((word >> 15) & 0x1) == 0)
5174 {
5175 if (((word >> 29) & 0x1) == 0)
5176 {
5177 if (((word >> 30) & 0x1) == 0)
5178 {
5179 /* 33222222222211111111110000000000
5180 10987654321098765432109876543210
5181 xxxxxxxxxx001000xxxxx1xx0111000x
5182 saddw. */
5183 return 40;
5184 }
5185 else
5186 {
5187 /* 33222222222211111111110000000000
5188 10987654321098765432109876543210
5189 xxxxxxxxxx001000xxxxx1xx0111001x
5190 saddw2. */
5191 return 41;
5192 }
5193 }
5194 else
5195 {
5196 if (((word >> 30) & 0x1) == 0)
5197 {
5198 /* 33222222222211111111110000000000
5199 10987654321098765432109876543210
5200 xxxxxxxxxx001000xxxxx1xx0111010x
5201 uaddw. */
5202 return 72;
5203 }
5204 else
5205 {
5206 /* 33222222222211111111110000000000
5207 10987654321098765432109876543210
5208 xxxxxxxxxx001000xxxxx1xx0111011x
5209 uaddw2. */
5210 return 73;
5211 }
5212 }
5213 }
5214 else
5215 {
5216 if (((word >> 30) & 0x1) == 0)
5217 {
5218 /* 33222222222211111111110000000000
5219 10987654321098765432109876543210
5220 xxxxxxxxxx001001xxxxx1xx01110x0x
5221 sqdmlal. */
5222 return 56;
5223 }
5224 else
5225 {
5226 /* 33222222222211111111110000000000
5227 10987654321098765432109876543210
5228 xxxxxxxxxx001001xxxxx1xx01110x1x
5229 sqdmlal2. */
5230 return 57;
5231 }
5232 }
5233 }
5234 else
5235 {
5236 if (((word >> 15) & 0x1) == 0)
5237 {
5238 if (((word >> 29) & 0x1) == 0)
5239 {
5240 if (((word >> 30) & 0x1) == 0)
5241 {
5242 /* 33222222222211111111110000000000
5243 10987654321098765432109876543210
5244 xxxxxxxxxx001010xxxxx1xx0111000x
5245 sabal. */
5246 return 48;
5247 }
5248 else
5249 {
5250 /* 33222222222211111111110000000000
5251 10987654321098765432109876543210
5252 xxxxxxxxxx001010xxxxx1xx0111001x
5253 sabal2. */
5254 return 49;
5255 }
5256 }
5257 else
5258 {
5259 if (((word >> 30) & 0x1) == 0)
5260 {
5261 /* 33222222222211111111110000000000
5262 10987654321098765432109876543210
5263 xxxxxxxxxx001010xxxxx1xx0111010x
5264 uabal. */
5265 return 80;
5266 }
5267 else
5268 {
5269 /* 33222222222211111111110000000000
5270 10987654321098765432109876543210
5271 xxxxxxxxxx001010xxxxx1xx0111011x
5272 uabal2. */
5273 return 81;
5274 }
5275 }
5276 }
5277 else
5278 {
5279 if (((word >> 30) & 0x1) == 0)
5280 {
5281 /* 33222222222211111111110000000000
5282 10987654321098765432109876543210
5283 xxxxxxxxxx001011xxxxx1xx01110x0x
5284 sqdmull. */
5285 return 64;
5286 }
5287 else
5288 {
5289 /* 33222222222211111111110000000000
5290 10987654321098765432109876543210
5291 xxxxxxxxxx001011xxxxx1xx01110x1x
5292 sqdmull2. */
5293 return 65;
5294 }
5295 }
5296 }
5297 }
5298 else
5299 {
5300 if (((word >> 14) & 0x1) == 0)
5301 {
5302 if (((word >> 15) & 0x1) == 0)
5303 {
5304 if (((word >> 29) & 0x1) == 0)
5305 {
5306 if (((word >> 30) & 0x1) == 0)
5307 {
5308 /* 33222222222211111111110000000000
5309 10987654321098765432109876543210
5310 xxxxxxxxxx001100xxxxx1xx0111000x
5311 ssubw. */
5312 return 44;
5313 }
5314 else
5315 {
5316 /* 33222222222211111111110000000000
5317 10987654321098765432109876543210
5318 xxxxxxxxxx001100xxxxx1xx0111001x
5319 ssubw2. */
5320 return 45;
5321 }
5322 }
5323 else
5324 {
5325 if (((word >> 30) & 0x1) == 0)
5326 {
5327 /* 33222222222211111111110000000000
5328 10987654321098765432109876543210
5329 xxxxxxxxxx001100xxxxx1xx0111010x
5330 usubw. */
5331 return 76;
5332 }
5333 else
5334 {
5335 /* 33222222222211111111110000000000
5336 10987654321098765432109876543210
5337 xxxxxxxxxx001100xxxxx1xx0111011x
5338 usubw2. */
5339 return 77;
5340 }
5341 }
5342 }
5343 else
5344 {
5345 if (((word >> 30) & 0x1) == 0)
5346 {
5347 /* 33222222222211111111110000000000
5348 10987654321098765432109876543210
5349 xxxxxxxxxx001101xxxxx1xx01110x0x
5350 sqdmlsl. */
5351 return 60;
5352 }
5353 else
5354 {
5355 /* 33222222222211111111110000000000
5356 10987654321098765432109876543210
5357 xxxxxxxxxx001101xxxxx1xx01110x1x
5358 sqdmlsl2. */
5359 return 61;
5360 }
5361 }
5362 }
5363 else
5364 {
5365 if (((word >> 29) & 0x1) == 0)
5366 {
5367 if (((word >> 30) & 0x1) == 0)
5368 {
5369 /* 33222222222211111111110000000000
5370 10987654321098765432109876543210
5371 xxxxxxxxxx00111xxxxxx1xx0111000x
5372 sabdl. */
5373 return 52;
5374 }
5375 else
5376 {
5377 /* 33222222222211111111110000000000
5378 10987654321098765432109876543210
5379 xxxxxxxxxx00111xxxxxx1xx0111001x
5380 sabdl2. */
5381 return 53;
5382 }
5383 }
5384 else
5385 {
5386 if (((word >> 30) & 0x1) == 0)
5387 {
5388 /* 33222222222211111111110000000000
5389 10987654321098765432109876543210
5390 xxxxxxxxxx00111xxxxxx1xx0111010x
5391 uabdl. */
5392 return 84;
5393 }
5394 else
5395 {
5396 /* 33222222222211111111110000000000
5397 10987654321098765432109876543210
5398 xxxxxxxxxx00111xxxxxx1xx0111011x
5399 uabdl2. */
5400 return 85;
5401 }
5402 }
5403 }
5404 }
5405 }
5406 else
5407 {
5408 if (((word >> 30) & 0x1) == 0)
5409 {
5410 /* 33222222222211111111110000000000
5411 10987654321098765432109876543210
5412 xxxxxxxxxx001xxxxxxxx1xx01111x0x
5413 fmov. */
5414 return 787;
5415 }
5416 else
5417 {
5418 if (((word >> 13) & 0x1) == 0)
5419 {
5420 if (((word >> 14) & 0x1) == 0)
5421 {
5422 /* 33222222222211111111110000000000
5423 10987654321098765432109876543210
5424 xxxxxxxxxx00100xxxxxx1xx01111x1x
5425 sqdmlal. */
5426 return 400;
5427 }
5428 else
5429 {
5430 /* 33222222222211111111110000000000
5431 10987654321098765432109876543210
5432 xxxxxxxxxx00101xxxxxx1xx01111x1x
5433 sqdmull. */
5434 return 402;
5435 }
5436 }
5437 else
5438 {
5439 /* 33222222222211111111110000000000
5440 10987654321098765432109876543210
5441 xxxxxxxxxx0011xxxxxxx1xx01111x1x
5442 sqdmlsl. */
5443 return 401;
5444 }
5445 }
5446 }
5447 }
5448 }
5449 else
5450 {
5451 if (((word >> 12) & 0x1) == 0)
5452 {
5453 if (((word >> 13) & 0x1) == 0)
5454 {
5455 if (((word >> 14) & 0x1) == 0)
5456 {
5457 if (((word >> 15) & 0x1) == 0)
5458 {
5459 if (((word >> 28) & 0x1) == 0)
5460 {
5461 if (((word >> 29) & 0x1) == 0)
5462 {
5463 /* 33222222222211111111110000000000
5464 10987654321098765432109876543210
5465 xxxxxxxxxx010000xxxxx1xx011100xx
5466 rev64. */
5467 return 146;
5468 }
5469 else
5470 {
5471 /* 33222222222211111111110000000000
5472 10987654321098765432109876543210
5473 xxxxxxxxxx010000xxxxx1xx011101xx
5474 rev32. */
5475 return 197;
5476 }
5477 }
5478 else
5479 {
5480 if (((word >> 30) & 0x1) == 0)
5481 {
5482 /* 33222222222211111111110000000000
5483 10987654321098765432109876543210
5484 xxxxxxxxxx010000xxxxx1xx01111x0x
5485 fmul. */
5486 return 761;
5487 }
5488 else
5489 {
5490 /* 33222222222211111111110000000000
5491 10987654321098765432109876543210
5492 xxxxxxxxxx010000xxxxx1xx01111x1x
5493 sha1h. */
5494 return 628;
5495 }
5496 }
5497 }
5498 else
5499 {
5500 if (((word >> 28) & 0x1) == 0)
5501 {
5502 if (((word >> 16) & 0x1) == 0)
5503 {
5504 if (((word >> 29) & 0x1) == 0)
5505 {
5506 /* 33222222222211111111110000000000
5507 10987654321098765432109876543210
5508 xxxxxxxxxx0100010xxxx1xx011100xx
5509 cmgt. */
5510 return 154;
5511 }
5512 else
5513 {
5514 /* 33222222222211111111110000000000
5515 10987654321098765432109876543210
5516 xxxxxxxxxx0100010xxxx1xx011101xx
5517 cmge. */
5518 return 203;
5519 }
5520 }
5521 else
5522 {
5523 if (((word >> 19) & 0x1) == 0)
5524 {
5525 if (((word >> 23) & 0x1) == 0)
5526 {
5527 if (((word >> 29) & 0x1) == 0)
5528 {
5529 /* 33222222222211111111110000000000
5530 10987654321098765432109876543210
5531 xxxxxxxxxx0100011xx0x1x0011100xx
5532 frintn. */
5533 return 166;
5534 }
5535 else
5536 {
5537 /* 33222222222211111111110000000000
5538 10987654321098765432109876543210
5539 xxxxxxxxxx0100011xx0x1x0011101xx
5540 frinta. */
5541 return 214;
5542 }
5543 }
5544 else
5545 {
5546 /* 33222222222211111111110000000000
5547 10987654321098765432109876543210
5548 xxxxxxxxxx0100011xx0x1x101110xxx
5549 frintp. */
5550 return 186;
5551 }
5552 }
5553 else
5554 {
5555 if (((word >> 23) & 0x1) == 0)
5556 {
5557 if (((word >> 29) & 0x1) == 0)
5558 {
5559 /* 33222222222211111111110000000000
5560 10987654321098765432109876543210
5561 xxxxxxxxxx0100011xx1x1x0011100xx
5562 frintn. */
5563 return 167;
5564 }
5565 else
5566 {
5567 /* 33222222222211111111110000000000
5568 10987654321098765432109876543210
5569 xxxxxxxxxx0100011xx1x1x0011101xx
5570 frinta. */
5571 return 215;
5572 }
5573 }
5574 else
5575 {
5576 /* 33222222222211111111110000000000
5577 10987654321098765432109876543210
5578 xxxxxxxxxx0100011xx1x1x101110xxx
5579 frintp. */
5580 return 187;
5581 }
5582 }
5583 }
5584 }
5585 else
5586 {
5587 if (((word >> 29) & 0x1) == 0)
5588 {
5589 if (((word >> 30) & 0x1) == 0)
5590 {
5591 /* 33222222222211111111110000000000
5592 10987654321098765432109876543210
5593 xxxxxxxxxx010001xxxxx1xx0111100x
5594 fnmul. */
5595 return 777;
5596 }
5597 else
5598 {
5599 /* 33222222222211111111110000000000
5600 10987654321098765432109876543210
5601 xxxxxxxxxx010001xxxxx1xx0111101x
5602 cmgt. */
5603 return 456;
5604 }
5605 }
5606 else
5607 {
5608 /* 33222222222211111111110000000000
5609 10987654321098765432109876543210
5610 xxxxxxxxxx010001xxxxx1xx011111xx
5611 cmge. */
5612 return 485;
5613 }
5614 }
5615 }
5616 }
5617 else
5618 {
5619 if (((word >> 15) & 0x1) == 0)
5620 {
5621 if (((word >> 28) & 0x1) == 0)
5622 {
5623 if (((word >> 16) & 0x1) == 0)
5624 {
5625 if (((word >> 19) & 0x1) == 0)
5626 {
5627 if (((word >> 29) & 0x1) == 0)
5628 {
5629 /* 33222222222211111111110000000000
5630 10987654321098765432109876543210
5631 xxxxxxxxxx0100100xx0x1xx011100xx
5632 cls. */
5633 return 150;
5634 }
5635 else
5636 {
5637 /* 33222222222211111111110000000000
5638 10987654321098765432109876543210
5639 xxxxxxxxxx0100100xx0x1xx011101xx
5640 clz. */
5641 return 200;
5642 }
5643 }
5644 else
5645 {
5646 /* 33222222222211111111110000000000
5647 10987654321098765432109876543210
5648 xxxxxxxxxx0100100xx1x1xx01110xxx
5649 aese. */
5650 return 624;
5651 }
5652 }
5653 else
5654 {
5655 if (((word >> 29) & 0x1) == 0)
5656 {
5657 if (((word >> 30) & 0x1) == 0)
5658 {
5659 /* 33222222222211111111110000000000
5660 10987654321098765432109876543210
5661 xxxxxxxxxx0100101xxxx1xx0111000x
5662 sqxtn. */
5663 return 160;
5664 }
5665 else
5666 {
5667 /* 33222222222211111111110000000000
5668 10987654321098765432109876543210
5669 xxxxxxxxxx0100101xxxx1xx0111001x
5670 sqxtn2. */
5671 return 161;
5672 }
5673 }
5674 else
5675 {
5676 if (((word >> 30) & 0x1) == 0)
5677 {
5678 /* 33222222222211111111110000000000
5679 10987654321098765432109876543210
5680 xxxxxxxxxx0100101xxxx1xx0111010x
5681 uqxtn. */
5682 return 210;
5683 }
5684 else
5685 {
5686 /* 33222222222211111111110000000000
5687 10987654321098765432109876543210
5688 xxxxxxxxxx0100101xxxx1xx0111011x
5689 uqxtn2. */
5690 return 211;
5691 }
5692 }
5693 }
5694 }
5695 else
5696 {
5697 if (((word >> 29) & 0x1) == 0)
5698 {
5699 if (((word >> 30) & 0x1) == 0)
5700 {
5701 /* 33222222222211111111110000000000
5702 10987654321098765432109876543210
5703 xxxxxxxxxx010010xxxxx1xx0111100x
5704 fmax. */
5705 return 769;
5706 }
5707 else
5708 {
5709 /* 33222222222211111111110000000000
5710 10987654321098765432109876543210
5711 xxxxxxxxxx010010xxxxx1xx0111101x
5712 sqxtn. */
5713 return 460;
5714 }
5715 }
5716 else
5717 {
5718 /* 33222222222211111111110000000000
5719 10987654321098765432109876543210
5720 xxxxxxxxxx010010xxxxx1xx011111xx
5721 uqxtn. */
5722 return 489;
5723 }
5724 }
5725 }
5726 else
5727 {
5728 if (((word >> 16) & 0x1) == 0)
5729 {
5730 if (((word >> 19) & 0x1) == 0)
5731 {
5732 if (((word >> 20) & 0x1) == 0)
5733 {
5734 if (((word >> 28) & 0x1) == 0)
5735 {
5736 if (((word >> 29) & 0x1) == 0)
5737 {
5738 /* 33222222222211111111110000000000
5739 10987654321098765432109876543210
5740 xxxxxxxxxx0100110xx001xx011100xx
5741 fcmgt. */
5742 return 178;
5743 }
5744 else
5745 {
5746 /* 33222222222211111111110000000000
5747 10987654321098765432109876543210
5748 xxxxxxxxxx0100110xx001xx011101xx
5749 fcmge. */
5750 return 229;
5751 }
5752 }
5753 else
5754 {
5755 if (((word >> 29) & 0x1) == 0)
5756 {
5757 /* 33222222222211111111110000000000
5758 10987654321098765432109876543210
5759 xxxxxxxxxx0100110xx001xx011110xx
5760 fcmgt. */
5761 return 469;
5762 }
5763 else
5764 {
5765 /* 33222222222211111111110000000000
5766 10987654321098765432109876543210
5767 xxxxxxxxxx0100110xx001xx011111xx
5768 fcmge. */
5769 return 499;
5770 }
5771 }
5772 }
5773 else
5774 {
5775 if (((word >> 23) & 0x1) == 0)
5776 {
5777 if (((word >> 28) & 0x1) == 0)
5778 {
5779 /* 33222222222211111111110000000000
5780 10987654321098765432109876543210
5781 xxxxxxxxxx0100110xx011x001110xxx
5782 fmaxnmv. */
5783 return 34;
5784 }
5785 else
5786 {
5787 /* 33222222222211111111110000000000
5788 10987654321098765432109876543210
5789 xxxxxxxxxx0100110xx011x001111xxx
5790 fmaxnmp. */
5791 return 512;
5792 }
5793 }
5794 else
5795 {
5796 if (((word >> 28) & 0x1) == 0)
5797 {
5798 /* 33222222222211111111110000000000
5799 10987654321098765432109876543210
5800 xxxxxxxxxx0100110xx011x101110xxx
5801 fminnmv. */
5802 return 36;
5803 }
5804 else
5805 {
5806 /* 33222222222211111111110000000000
5807 10987654321098765432109876543210
5808 xxxxxxxxxx0100110xx011x101111xxx
5809 fminnmp. */
5810 return 515;
5811 }
5812 }
5813 }
5814 }
5815 else
5816 {
5817 if (((word >> 28) & 0x1) == 0)
5818 {
5819 if (((word >> 29) & 0x1) == 0)
5820 {
5821 /* 33222222222211111111110000000000
5822 10987654321098765432109876543210
5823 xxxxxxxxxx0100110xx1x1xx011100xx
5824 fcmgt. */
5825 return 179;
5826 }
5827 else
5828 {
5829 /* 33222222222211111111110000000000
5830 10987654321098765432109876543210
5831 xxxxxxxxxx0100110xx1x1xx011101xx
5832 fcmge. */
5833 return 230;
5834 }
5835 }
5836 else
5837 {
5838 if (((word >> 29) & 0x1) == 0)
5839 {
5840 /* 33222222222211111111110000000000
5841 10987654321098765432109876543210
5842 xxxxxxxxxx0100110xx1x1xx011110xx
5843 fcmgt. */
5844 return 470;
5845 }
5846 else
5847 {
5848 /* 33222222222211111111110000000000
5849 10987654321098765432109876543210
5850 xxxxxxxxxx0100110xx1x1xx011111xx
5851 fcmge. */
5852 return 500;
5853 }
5854 }
5855 }
5856 }
5857 else
5858 {
5859 if (((word >> 19) & 0x1) == 0)
5860 {
5861 if (((word >> 23) & 0x1) == 0)
5862 {
5863 if (((word >> 28) & 0x1) == 0)
5864 {
5865 if (((word >> 29) & 0x1) == 0)
5866 {
5867 /* 33222222222211111111110000000000
5868 10987654321098765432109876543210
5869 xxxxxxxxxx0100111xx0x1x0011100xx
5870 fcvtas. */
5871 return 174;
5872 }
5873 else
5874 {
5875 /* 33222222222211111111110000000000
5876 10987654321098765432109876543210
5877 xxxxxxxxxx0100111xx0x1x0011101xx
5878 fcvtau. */
5879 return 222;
5880 }
5881 }
5882 else
5883 {
5884 if (((word >> 29) & 0x1) == 0)
5885 {
5886 /* 33222222222211111111110000000000
5887 10987654321098765432109876543210
5888 xxxxxxxxxx0100111xx0x1x0011110xx
5889 fcvtas. */
5890 return 465;
5891 }
5892 else
5893 {
5894 /* 33222222222211111111110000000000
5895 10987654321098765432109876543210
5896 xxxxxxxxxx0100111xx0x1x0011111xx
5897 fcvtau. */
5898 return 495;
5899 }
5900 }
5901 }
5902 else
5903 {
5904 if (((word >> 29) & 0x1) == 0)
5905 {
5906 /* 33222222222211111111110000000000
5907 10987654321098765432109876543210
5908 xxxxxxxxxx0100111xx0x1x10111x0xx
5909 urecpe. */
5910 return 194;
5911 }
5912 else
5913 {
5914 /* 33222222222211111111110000000000
5915 10987654321098765432109876543210
5916 xxxxxxxxxx0100111xx0x1x10111x1xx
5917 ursqrte. */
5918 return 241;
5919 }
5920 }
5921 }
5922 else
5923 {
5924 if (((word >> 28) & 0x1) == 0)
5925 {
5926 if (((word >> 29) & 0x1) == 0)
5927 {
5928 /* 33222222222211111111110000000000
5929 10987654321098765432109876543210
5930 xxxxxxxxxx0100111xx1x1xx011100xx
5931 fcvtas. */
5932 return 175;
5933 }
5934 else
5935 {
5936 /* 33222222222211111111110000000000
5937 10987654321098765432109876543210
5938 xxxxxxxxxx0100111xx1x1xx011101xx
5939 fcvtau. */
5940 return 223;
5941 }
5942 }
5943 else
5944 {
5945 if (((word >> 29) & 0x1) == 0)
5946 {
5947 /* 33222222222211111111110000000000
5948 10987654321098765432109876543210
5949 xxxxxxxxxx0100111xx1x1xx011110xx
5950 fcvtas. */
5951 return 466;
5952 }
5953 else
5954 {
5955 /* 33222222222211111111110000000000
5956 10987654321098765432109876543210
5957 xxxxxxxxxx0100111xx1x1xx011111xx
5958 fcvtau. */
5959 return 496;
5960 }
5961 }
5962 }
5963 }
5964 }
5965 }
5966 }
5967 else
5968 {
5969 if (((word >> 14) & 0x1) == 0)
5970 {
5971 if (((word >> 15) & 0x1) == 0)
5972 {
5973 if (((word >> 28) & 0x1) == 0)
5974 {
5975 if (((word >> 16) & 0x1) == 0)
5976 {
5977 if (((word >> 29) & 0x1) == 0)
5978 {
5979 /* 33222222222211111111110000000000
5980 10987654321098765432109876543210
5981 xxxxxxxxxx0101000xxxx1xx011100xx
5982 saddlp. */
5983 return 148;
5984 }
5985 else
5986 {
5987 /* 33222222222211111111110000000000
5988 10987654321098765432109876543210
5989 xxxxxxxxxx0101000xxxx1xx011101xx
5990 uaddlp. */
5991 return 198;
5992 }
5993 }
5994 else
5995 {
5996 if (((word >> 29) & 0x1) == 0)
5997 {
5998 if (((word >> 30) & 0x1) == 0)
5999 {
6000 /* 33222222222211111111110000000000
6001 10987654321098765432109876543210
6002 xxxxxxxxxx0101001xxxx1xx0111000x
6003 xtn. */
6004 return 158;
6005 }
6006 else
6007 {
6008 /* 33222222222211111111110000000000
6009 10987654321098765432109876543210
6010 xxxxxxxxxx0101001xxxx1xx0111001x
6011 xtn2. */
6012 return 159;
6013 }
6014 }
6015 else
6016 {
6017 if (((word >> 30) & 0x1) == 0)
6018 {
6019 /* 33222222222211111111110000000000
6020 10987654321098765432109876543210
6021 xxxxxxxxxx0101001xxxx1xx0111010x
6022 sqxtun. */
6023 return 206;
6024 }
6025 else
6026 {
6027 /* 33222222222211111111110000000000
6028 10987654321098765432109876543210
6029 xxxxxxxxxx0101001xxxx1xx0111011x
6030 sqxtun2. */
6031 return 207;
6032 }
6033 }
6034 }
6035 }
6036 else
6037 {
6038 if (((word >> 29) & 0x1) == 0)
6039 {
6040 if (((word >> 30) & 0x1) == 0)
6041 {
6042 /* 33222222222211111111110000000000
6043 10987654321098765432109876543210
6044 xxxxxxxxxx010100xxxxx1xx0111100x
6045 fadd. */
6046 return 765;
6047 }
6048 else
6049 {
6050 /* 33222222222211111111110000000000
6051 10987654321098765432109876543210
6052 xxxxxxxxxx010100xxxxx1xx0111101x
6053 sha256su0. */
6054 return 630;
6055 }
6056 }
6057 else
6058 {
6059 /* 33222222222211111111110000000000
6060 10987654321098765432109876543210
6061 xxxxxxxxxx010100xxxxx1xx011111xx
6062 sqxtun. */
6063 return 488;
6064 }
6065 }
6066 }
6067 else
6068 {
6069 if (((word >> 16) & 0x1) == 0)
6070 {
6071 if (((word >> 20) & 0x1) == 0)
6072 {
6073 if (((word >> 28) & 0x1) == 0)
6074 {
6075 /* 33222222222211111111110000000000
6076 10987654321098765432109876543210
6077 xxxxxxxxxx0101010xxx01xx01110xxx
6078 cmlt. */
6079 return 156;
6080 }
6081 else
6082 {
6083 /* 33222222222211111111110000000000
6084 10987654321098765432109876543210
6085 xxxxxxxxxx0101010xxx01xx01111xxx
6086 cmlt. */
6087 return 458;
6088 }
6089 }
6090 else
6091 {
6092 if (((word >> 29) & 0x1) == 0)
6093 {
6094 /* 33222222222211111111110000000000
6095 10987654321098765432109876543210
6096 xxxxxxxxxx0101010xxx11xx0111x0xx
6097 smaxv. */
6098 return 28;
6099 }
6100 else
6101 {
6102 /* 33222222222211111111110000000000
6103 10987654321098765432109876543210
6104 xxxxxxxxxx0101010xxx11xx0111x1xx
6105 umaxv. */
6106 return 32;
6107 }
6108 }
6109 }
6110 else
6111 {
6112 if (((word >> 19) & 0x1) == 0)
6113 {
6114 if (((word >> 20) & 0x1) == 0)
6115 {
6116 if (((word >> 23) & 0x1) == 0)
6117 {
6118 if (((word >> 28) & 0x1) == 0)
6119 {
6120 if (((word >> 29) & 0x1) == 0)
6121 {
6122 /* 33222222222211111111110000000000
6123 10987654321098765432109876543210
6124 xxxxxxxxxx0101011xx001x0011100xx
6125 fcvtns. */
6126 return 170;
6127 }
6128 else
6129 {
6130 /* 33222222222211111111110000000000
6131 10987654321098765432109876543210
6132 xxxxxxxxxx0101011xx001x0011101xx
6133 fcvtnu. */
6134 return 218;
6135 }
6136 }
6137 else
6138 {
6139 if (((word >> 29) & 0x1) == 0)
6140 {
6141 /* 33222222222211111111110000000000
6142 10987654321098765432109876543210
6143 xxxxxxxxxx0101011xx001x0011110xx
6144 fcvtns. */
6145 return 461;
6146 }
6147 else
6148 {
6149 /* 33222222222211111111110000000000
6150 10987654321098765432109876543210
6151 xxxxxxxxxx0101011xx001x0011111xx
6152 fcvtnu. */
6153 return 491;
6154 }
6155 }
6156 }
6157 else
6158 {
6159 if (((word >> 28) & 0x1) == 0)
6160 {
6161 if (((word >> 29) & 0x1) == 0)
6162 {
6163 /* 33222222222211111111110000000000
6164 10987654321098765432109876543210
6165 xxxxxxxxxx0101011xx001x1011100xx
6166 fcvtps. */
6167 return 190;
6168 }
6169 else
6170 {
6171 /* 33222222222211111111110000000000
6172 10987654321098765432109876543210
6173 xxxxxxxxxx0101011xx001x1011101xx
6174 fcvtpu. */
6175 return 237;
6176 }
6177 }
6178 else
6179 {
6180 if (((word >> 29) & 0x1) == 0)
6181 {
6182 /* 33222222222211111111110000000000
6183 10987654321098765432109876543210
6184 xxxxxxxxxx0101011xx001x1011110xx
6185 fcvtps. */
6186 return 475;
6187 }
6188 else
6189 {
6190 /* 33222222222211111111110000000000
6191 10987654321098765432109876543210
6192 xxxxxxxxxx0101011xx001x1011111xx
6193 fcvtpu. */
6194 return 503;
6195 }
6196 }
6197 }
6198 }
6199 else
6200 {
6201 if (((word >> 29) & 0x1) == 0)
6202 {
6203 /* 33222222222211111111110000000000
6204 10987654321098765432109876543210
6205 xxxxxxxxxx0101011xx011xx0111x0xx
6206 sminv. */
6207 return 29;
6208 }
6209 else
6210 {
6211 /* 33222222222211111111110000000000
6212 10987654321098765432109876543210
6213 xxxxxxxxxx0101011xx011xx0111x1xx
6214 uminv. */
6215 return 33;
6216 }
6217 }
6218 }
6219 else
6220 {
6221 if (((word >> 23) & 0x1) == 0)
6222 {
6223 if (((word >> 28) & 0x1) == 0)
6224 {
6225 if (((word >> 29) & 0x1) == 0)
6226 {
6227 /* 33222222222211111111110000000000
6228 10987654321098765432109876543210
6229 xxxxxxxxxx0101011xx1x1x0011100xx
6230 fcvtns. */
6231 return 171;
6232 }
6233 else
6234 {
6235 /* 33222222222211111111110000000000
6236 10987654321098765432109876543210
6237 xxxxxxxxxx0101011xx1x1x0011101xx
6238 fcvtnu. */
6239 return 219;
6240 }
6241 }
6242 else
6243 {
6244 if (((word >> 29) & 0x1) == 0)
6245 {
6246 /* 33222222222211111111110000000000
6247 10987654321098765432109876543210
6248 xxxxxxxxxx0101011xx1x1x0011110xx
6249 fcvtns. */
6250 return 462;
6251 }
6252 else
6253 {
6254 /* 33222222222211111111110000000000
6255 10987654321098765432109876543210
6256 xxxxxxxxxx0101011xx1x1x0011111xx
6257 fcvtnu. */
6258 return 492;
6259 }
6260 }
6261 }
6262 else
6263 {
6264 if (((word >> 28) & 0x1) == 0)
6265 {
6266 if (((word >> 29) & 0x1) == 0)
6267 {
6268 /* 33222222222211111111110000000000
6269 10987654321098765432109876543210
6270 xxxxxxxxxx0101011xx1x1x1011100xx
6271 fcvtps. */
6272 return 191;
6273 }
6274 else
6275 {
6276 /* 33222222222211111111110000000000
6277 10987654321098765432109876543210
6278 xxxxxxxxxx0101011xx1x1x1011101xx
6279 fcvtpu. */
6280 return 238;
6281 }
6282 }
6283 else
6284 {
6285 if (((word >> 29) & 0x1) == 0)
6286 {
6287 /* 33222222222211111111110000000000
6288 10987654321098765432109876543210
6289 xxxxxxxxxx0101011xx1x1x1011110xx
6290 fcvtps. */
6291 return 476;
6292 }
6293 else
6294 {
6295 /* 33222222222211111111110000000000
6296 10987654321098765432109876543210
6297 xxxxxxxxxx0101011xx1x1x1011111xx
6298 fcvtpu. */
6299 return 504;
6300 }
6301 }
6302 }
6303 }
6304 }
6305 }
6306 }
6307 else
6308 {
6309 if (((word >> 15) & 0x1) == 0)
6310 {
6311 if (((word >> 28) & 0x1) == 0)
6312 {
6313 if (((word >> 16) & 0x1) == 0)
6314 {
6315 if (((word >> 19) & 0x1) == 0)
6316 {
6317 if (((word >> 29) & 0x1) == 0)
6318 {
6319 /* 33222222222211111111110000000000
6320 10987654321098765432109876543210
6321 xxxxxxxxxx0101100xx0x1xx011100xx
6322 sadalp. */
6323 return 152;
6324 }
6325 else
6326 {
6327 /* 33222222222211111111110000000000
6328 10987654321098765432109876543210
6329 xxxxxxxxxx0101100xx0x1xx011101xx
6330 uadalp. */
6331 return 201;
6332 }
6333 }
6334 else
6335 {
6336 /* 33222222222211111111110000000000
6337 10987654321098765432109876543210
6338 xxxxxxxxxx0101100xx1x1xx01110xxx
6339 aesmc. */
6340 return 626;
6341 }
6342 }
6343 else
6344 {
6345 if (((word >> 29) & 0x1) == 0)
6346 {
6347 if (((word >> 30) & 0x1) == 0)
6348 {
6349 /* 33222222222211111111110000000000
6350 10987654321098765432109876543210
6351 xxxxxxxxxx0101101xxxx1xx0111000x
6352 fcvtn. */
6353 return 162;
6354 }
6355 else
6356 {
6357 /* 33222222222211111111110000000000
6358 10987654321098765432109876543210
6359 xxxxxxxxxx0101101xxxx1xx0111001x
6360 fcvtn2. */
6361 return 163;
6362 }
6363 }
6364 else
6365 {
6366 if (((word >> 30) & 0x1) == 0)
6367 {
6368 /* 33222222222211111111110000000000
6369 10987654321098765432109876543210
6370 xxxxxxxxxx0101101xxxx1xx0111010x
6371 fcvtxn. */
6372 return 212;
6373 }
6374 else
6375 {
6376 /* 33222222222211111111110000000000
6377 10987654321098765432109876543210
6378 xxxxxxxxxx0101101xxxx1xx0111011x
6379 fcvtxn2. */
6380 return 213;
6381 }
6382 }
6383 }
6384 }
6385 else
6386 {
6387 if (((word >> 29) & 0x1) == 0)
6388 {
6389 /* 33222222222211111111110000000000
6390 10987654321098765432109876543210
6391 xxxxxxxxxx010110xxxxx1xx011110xx
6392 fmaxnm. */
6393 return 773;
6394 }
6395 else
6396 {
6397 /* 33222222222211111111110000000000
6398 10987654321098765432109876543210
6399 xxxxxxxxxx010110xxxxx1xx011111xx
6400 fcvtxn. */
6401 return 490;
6402 }
6403 }
6404 }
6405 else
6406 {
6407 if (((word >> 19) & 0x1) == 0)
6408 {
6409 if (((word >> 28) & 0x1) == 0)
6410 {
6411 /* 33222222222211111111110000000000
6412 10987654321098765432109876543210
6413 xxxxxxxxxx010111xxx0x1xx01110xxx
6414 fcmlt. */
6415 return 182;
6416 }
6417 else
6418 {
6419 /* 33222222222211111111110000000000
6420 10987654321098765432109876543210
6421 xxxxxxxxxx010111xxx0x1xx01111xxx
6422 fcmlt. */
6423 return 473;
6424 }
6425 }
6426 else
6427 {
6428 if (((word >> 28) & 0x1) == 0)
6429 {
6430 /* 33222222222211111111110000000000
6431 10987654321098765432109876543210
6432 xxxxxxxxxx010111xxx1x1xx01110xxx
6433 fcmlt. */
6434 return 183;
6435 }
6436 else
6437 {
6438 /* 33222222222211111111110000000000
6439 10987654321098765432109876543210
6440 xxxxxxxxxx010111xxx1x1xx01111xxx
6441 fcmlt. */
6442 return 474;
6443 }
6444 }
6445 }
6446 }
6447 }
6448 }
6449 else
6450 {
6451 if (((word >> 13) & 0x1) == 0)
6452 {
6453 if (((word >> 14) & 0x1) == 0)
6454 {
6455 if (((word >> 15) & 0x1) == 0)
6456 {
6457 if (((word >> 28) & 0x1) == 0)
6458 {
6459 /* 33222222222211111111110000000000
6460 10987654321098765432109876543210
6461 xxxxxxxxxx011000xxxxx1xx01110xxx
6462 rev16. */
6463 return 147;
6464 }
6465 else
6466 {
6467 if (((word >> 30) & 0x1) == 0)
6468 {
6469 /* 33222222222211111111110000000000
6470 10987654321098765432109876543210
6471 xxxxxxxxxx011000xxxxx1xx01111x0x
6472 fdiv. */
6473 return 763;
6474 }
6475 else
6476 {
6477 /* 33222222222211111111110000000000
6478 10987654321098765432109876543210
6479 xxxxxxxxxx011000xxxxx1xx01111x1x
6480 sha1su1. */
6481 return 629;
6482 }
6483 }
6484 }
6485 else
6486 {
6487 if (((word >> 16) & 0x1) == 0)
6488 {
6489 if (((word >> 28) & 0x1) == 0)
6490 {
6491 if (((word >> 29) & 0x1) == 0)
6492 {
6493 /* 33222222222211111111110000000000
6494 10987654321098765432109876543210
6495 xxxxxxxxxx0110010xxxx1xx011100xx
6496 cmeq. */
6497 return 155;
6498 }
6499 else
6500 {
6501 /* 33222222222211111111110000000000
6502 10987654321098765432109876543210
6503 xxxxxxxxxx0110010xxxx1xx011101xx
6504 cmle. */
6505 return 204;
6506 }
6507 }
6508 else
6509 {
6510 if (((word >> 29) & 0x1) == 0)
6511 {
6512 /* 33222222222211111111110000000000
6513 10987654321098765432109876543210
6514 xxxxxxxxxx0110010xxxx1xx011110xx
6515 cmeq. */
6516 return 457;
6517 }
6518 else
6519 {
6520 /* 33222222222211111111110000000000
6521 10987654321098765432109876543210
6522 xxxxxxxxxx0110010xxxx1xx011111xx
6523 cmle. */
6524 return 486;
6525 }
6526 }
6527 }
6528 else
6529 {
6530 if (((word >> 19) & 0x1) == 0)
6531 {
6532 if (((word >> 23) & 0x1) == 0)
6533 {
6534 if (((word >> 29) & 0x1) == 0)
6535 {
6536 /* 33222222222211111111110000000000
6537 10987654321098765432109876543210
6538 xxxxxxxxxx0110011xx0x1x00111x0xx
6539 frintm. */
6540 return 168;
6541 }
6542 else
6543 {
6544 /* 33222222222211111111110000000000
6545 10987654321098765432109876543210
6546 xxxxxxxxxx0110011xx0x1x00111x1xx
6547 frintx. */
6548 return 216;
6549 }
6550 }
6551 else
6552 {
6553 if (((word >> 29) & 0x1) == 0)
6554 {
6555 /* 33222222222211111111110000000000
6556 10987654321098765432109876543210
6557 xxxxxxxxxx0110011xx0x1x10111x0xx
6558 frintz. */
6559 return 188;
6560 }
6561 else
6562 {
6563 /* 33222222222211111111110000000000
6564 10987654321098765432109876543210
6565 xxxxxxxxxx0110011xx0x1x10111x1xx
6566 frinti. */
6567 return 235;
6568 }
6569 }
6570 }
6571 else
6572 {
6573 if (((word >> 23) & 0x1) == 0)
6574 {
6575 if (((word >> 29) & 0x1) == 0)
6576 {
6577 /* 33222222222211111111110000000000
6578 10987654321098765432109876543210
6579 xxxxxxxxxx0110011xx1x1x00111x0xx
6580 frintm. */
6581 return 169;
6582 }
6583 else
6584 {
6585 /* 33222222222211111111110000000000
6586 10987654321098765432109876543210
6587 xxxxxxxxxx0110011xx1x1x00111x1xx
6588 frintx. */
6589 return 217;
6590 }
6591 }
6592 else
6593 {
6594 if (((word >> 29) & 0x1) == 0)
6595 {
6596 /* 33222222222211111111110000000000
6597 10987654321098765432109876543210
6598 xxxxxxxxxx0110011xx1x1x10111x0xx
6599 frintz. */
6600 return 189;
6601 }
6602 else
6603 {
6604 /* 33222222222211111111110000000000
6605 10987654321098765432109876543210
6606 xxxxxxxxxx0110011xx1x1x10111x1xx
6607 frinti. */
6608 return 236;
6609 }
6610 }
6611 }
6612 }
6613 }
6614 }
6615 else
6616 {
6617 if (((word >> 15) & 0x1) == 0)
6618 {
6619 if (((word >> 28) & 0x1) == 0)
6620 {
6621 if (((word >> 19) & 0x1) == 0)
6622 {
6623 if (((word >> 29) & 0x1) == 0)
6624 {
6625 /* 33222222222211111111110000000000
6626 10987654321098765432109876543210
6627 xxxxxxxxxx011010xxx0x1xx011100xx
6628 cnt. */
6629 return 151;
6630 }
6631 else
6632 {
6633 if (((word >> 22) & 0x1) == 0)
6634 {
6635 /* 33222222222211111111110000000000
6636 10987654321098765432109876543210
6637 xxxxxxxxxx011010xxx0x10x011101xx
6638 not. */
6639 return 226;
6640 }
6641 else
6642 {
6643 /* 33222222222211111111110000000000
6644 10987654321098765432109876543210
6645 xxxxxxxxxx011010xxx0x11x011101xx
6646 rbit. */
6647 return 228;
6648 }
6649 }
6650 }
6651 else
6652 {
6653 /* 33222222222211111111110000000000
6654 10987654321098765432109876543210
6655 xxxxxxxxxx011010xxx1x1xx01110xxx
6656 aesd. */
6657 return 625;
6658 }
6659 }
6660 else
6661 {
6662 /* 33222222222211111111110000000000
6663 10987654321098765432109876543210
6664 xxxxxxxxxx011010xxxxx1xx01111xxx
6665 fmin. */
6666 return 771;
6667 }
6668 }
6669 else
6670 {
6671 if (((word >> 16) & 0x1) == 0)
6672 {
6673 if (((word >> 19) & 0x1) == 0)
6674 {
6675 if (((word >> 20) & 0x1) == 0)
6676 {
6677 if (((word >> 28) & 0x1) == 0)
6678 {
6679 if (((word >> 29) & 0x1) == 0)
6680 {
6681 /* 33222222222211111111110000000000
6682 10987654321098765432109876543210
6683 xxxxxxxxxx0110110xx001xx011100xx
6684 fcmeq. */
6685 return 180;
6686 }
6687 else
6688 {
6689 /* 33222222222211111111110000000000
6690 10987654321098765432109876543210
6691 xxxxxxxxxx0110110xx001xx011101xx
6692 fcmle. */
6693 return 231;
6694 }
6695 }
6696 else
6697 {
6698 if (((word >> 29) & 0x1) == 0)
6699 {
6700 /* 33222222222211111111110000000000
6701 10987654321098765432109876543210
6702 xxxxxxxxxx0110110xx001xx011110xx
6703 fcmeq. */
6704 return 471;
6705 }
6706 else
6707 {
6708 /* 33222222222211111111110000000000
6709 10987654321098765432109876543210
6710 xxxxxxxxxx0110110xx001xx011111xx
6711 fcmle. */
6712 return 501;
6713 }
6714 }
6715 }
6716 else
6717 {
6718 /* 33222222222211111111110000000000
6719 10987654321098765432109876543210
6720 xxxxxxxxxx0110110xx011xx0111xxxx
6721 faddp. */
6722 return 513;
6723 }
6724 }
6725 else
6726 {
6727 if (((word >> 28) & 0x1) == 0)
6728 {
6729 if (((word >> 29) & 0x1) == 0)
6730 {
6731 /* 33222222222211111111110000000000
6732 10987654321098765432109876543210
6733 xxxxxxxxxx0110110xx1x1xx011100xx
6734 fcmeq. */
6735 return 181;
6736 }
6737 else
6738 {
6739 /* 33222222222211111111110000000000
6740 10987654321098765432109876543210
6741 xxxxxxxxxx0110110xx1x1xx011101xx
6742 fcmle. */
6743 return 232;
6744 }
6745 }
6746 else
6747 {
6748 if (((word >> 29) & 0x1) == 0)
6749 {
6750 /* 33222222222211111111110000000000
6751 10987654321098765432109876543210
6752 xxxxxxxxxx0110110xx1x1xx011110xx
6753 fcmeq. */
6754 return 472;
6755 }
6756 else
6757 {
6758 /* 33222222222211111111110000000000
6759 10987654321098765432109876543210
6760 xxxxxxxxxx0110110xx1x1xx011111xx
6761 fcmle. */
6762 return 502;
6763 }
6764 }
6765 }
6766 }
6767 else
6768 {
6769 if (((word >> 19) & 0x1) == 0)
6770 {
6771 if (((word >> 23) & 0x1) == 0)
6772 {
6773 if (((word >> 28) & 0x1) == 0)
6774 {
6775 if (((word >> 29) & 0x1) == 0)
6776 {
6777 /* 33222222222211111111110000000000
6778 10987654321098765432109876543210
6779 xxxxxxxxxx0110111xx0x1x0011100xx
6780 scvtf. */
6781 return 176;
6782 }
6783 else
6784 {
6785 /* 33222222222211111111110000000000
6786 10987654321098765432109876543210
6787 xxxxxxxxxx0110111xx0x1x0011101xx
6788 ucvtf. */
6789 return 224;
6790 }
6791 }
6792 else
6793 {
6794 if (((word >> 29) & 0x1) == 0)
6795 {
6796 /* 33222222222211111111110000000000
6797 10987654321098765432109876543210
6798 xxxxxxxxxx0110111xx0x1x0011110xx
6799 scvtf. */
6800 return 467;
6801 }
6802 else
6803 {
6804 /* 33222222222211111111110000000000
6805 10987654321098765432109876543210
6806 xxxxxxxxxx0110111xx0x1x0011111xx
6807 ucvtf. */
6808 return 497;
6809 }
6810 }
6811 }
6812 else
6813 {
6814 if (((word >> 28) & 0x1) == 0)
6815 {
6816 if (((word >> 29) & 0x1) == 0)
6817 {
6818 /* 33222222222211111111110000000000
6819 10987654321098765432109876543210
6820 xxxxxxxxxx0110111xx0x1x1011100xx
6821 frecpe. */
6822 return 195;
6823 }
6824 else
6825 {
6826 /* 33222222222211111111110000000000
6827 10987654321098765432109876543210
6828 xxxxxxxxxx0110111xx0x1x1011101xx
6829 frsqrte. */
6830 return 242;
6831 }
6832 }
6833 else
6834 {
6835 if (((word >> 29) & 0x1) == 0)
6836 {
6837 /* 33222222222211111111110000000000
6838 10987654321098765432109876543210
6839 xxxxxxxxxx0110111xx0x1x1011110xx
6840 frecpe. */
6841 return 479;
6842 }
6843 else
6844 {
6845 /* 33222222222211111111110000000000
6846 10987654321098765432109876543210
6847 xxxxxxxxxx0110111xx0x1x1011111xx
6848 frsqrte. */
6849 return 507;
6850 }
6851 }
6852 }
6853 }
6854 else
6855 {
6856 if (((word >> 23) & 0x1) == 0)
6857 {
6858 if (((word >> 28) & 0x1) == 0)
6859 {
6860 if (((word >> 29) & 0x1) == 0)
6861 {
6862 /* 33222222222211111111110000000000
6863 10987654321098765432109876543210
6864 xxxxxxxxxx0110111xx1x1x0011100xx
6865 scvtf. */
6866 return 177;
6867 }
6868 else
6869 {
6870 /* 33222222222211111111110000000000
6871 10987654321098765432109876543210
6872 xxxxxxxxxx0110111xx1x1x0011101xx
6873 ucvtf. */
6874 return 225;
6875 }
6876 }
6877 else
6878 {
6879 if (((word >> 29) & 0x1) == 0)
6880 {
6881 /* 33222222222211111111110000000000
6882 10987654321098765432109876543210
6883 xxxxxxxxxx0110111xx1x1x0011110xx
6884 scvtf. */
6885 return 468;
6886 }
6887 else
6888 {
6889 /* 33222222222211111111110000000000
6890 10987654321098765432109876543210
6891 xxxxxxxxxx0110111xx1x1x0011111xx
6892 ucvtf. */
6893 return 498;
6894 }
6895 }
6896 }
6897 else
6898 {
6899 if (((word >> 28) & 0x1) == 0)
6900 {
6901 if (((word >> 29) & 0x1) == 0)
6902 {
6903 /* 33222222222211111111110000000000
6904 10987654321098765432109876543210
6905 xxxxxxxxxx0110111xx1x1x1011100xx
6906 frecpe. */
6907 return 196;
6908 }
6909 else
6910 {
6911 /* 33222222222211111111110000000000
6912 10987654321098765432109876543210
6913 xxxxxxxxxx0110111xx1x1x1011101xx
6914 frsqrte. */
6915 return 243;
6916 }
6917 }
6918 else
6919 {
6920 if (((word >> 29) & 0x1) == 0)
6921 {
6922 /* 33222222222211111111110000000000
6923 10987654321098765432109876543210
6924 xxxxxxxxxx0110111xx1x1x1011110xx
6925 frecpe. */
6926 return 480;
6927 }
6928 else
6929 {
6930 /* 33222222222211111111110000000000
6931 10987654321098765432109876543210
6932 xxxxxxxxxx0110111xx1x1x1011111xx
6933 frsqrte. */
6934 return 508;
6935 }
6936 }
6937 }
6938 }
6939 }
6940 }
6941 }
6942 }
6943 else
6944 {
6945 if (((word >> 14) & 0x1) == 0)
6946 {
6947 if (((word >> 15) & 0x1) == 0)
6948 {
6949 if (((word >> 28) & 0x1) == 0)
6950 {
6951 if (((word >> 16) & 0x1) == 0)
6952 {
6953 if (((word >> 20) & 0x1) == 0)
6954 {
6955 if (((word >> 29) & 0x1) == 0)
6956 {
6957 /* 33222222222211111111110000000000
6958 10987654321098765432109876543210
6959 xxxxxxxxxx0111000xxx01xx011100xx
6960 suqadd. */
6961 return 149;
6962 }
6963 else
6964 {
6965 /* 33222222222211111111110000000000
6966 10987654321098765432109876543210
6967 xxxxxxxxxx0111000xxx01xx011101xx
6968 usqadd. */
6969 return 199;
6970 }
6971 }
6972 else
6973 {
6974 if (((word >> 29) & 0x1) == 0)
6975 {
6976 /* 33222222222211111111110000000000
6977 10987654321098765432109876543210
6978 xxxxxxxxxx0111000xxx11xx011100xx
6979 saddlv. */
6980 return 27;
6981 }
6982 else
6983 {
6984 /* 33222222222211111111110000000000
6985 10987654321098765432109876543210
6986 xxxxxxxxxx0111000xxx11xx011101xx
6987 uaddlv. */
6988 return 31;
6989 }
6990 }
6991 }
6992 else
6993 {
6994 if (((word >> 30) & 0x1) == 0)
6995 {
6996 /* 33222222222211111111110000000000
6997 10987654321098765432109876543210
6998 xxxxxxxxxx0111001xxxx1xx01110x0x
6999 shll. */
7000 return 208;
7001 }
7002 else
7003 {
7004 /* 33222222222211111111110000000000
7005 10987654321098765432109876543210
7006 xxxxxxxxxx0111001xxxx1xx01110x1x
7007 shll2. */
7008 return 209;
7009 }
7010 }
7011 }
7012 else
7013 {
7014 if (((word >> 29) & 0x1) == 0)
7015 {
7016 if (((word >> 30) & 0x1) == 0)
7017 {
7018 /* 33222222222211111111110000000000
7019 10987654321098765432109876543210
7020 xxxxxxxxxx011100xxxxx1xx0111100x
7021 fsub. */
7022 return 767;
7023 }
7024 else
7025 {
7026 /* 33222222222211111111110000000000
7027 10987654321098765432109876543210
7028 xxxxxxxxxx011100xxxxx1xx0111101x
7029 suqadd. */
7030 return 454;
7031 }
7032 }
7033 else
7034 {
7035 /* 33222222222211111111110000000000
7036 10987654321098765432109876543210
7037 xxxxxxxxxx011100xxxxx1xx011111xx
7038 usqadd. */
7039 return 483;
7040 }
7041 }
7042 }
7043 else
7044 {
7045 if (((word >> 16) & 0x1) == 0)
7046 {
7047 if (((word >> 28) & 0x1) == 0)
7048 {
7049 if (((word >> 29) & 0x1) == 0)
7050 {
7051 /* 33222222222211111111110000000000
7052 10987654321098765432109876543210
7053 xxxxxxxxxx0111010xxxx1xx011100xx
7054 abs. */
7055 return 157;
7056 }
7057 else
7058 {
7059 /* 33222222222211111111110000000000
7060 10987654321098765432109876543210
7061 xxxxxxxxxx0111010xxxx1xx011101xx
7062 neg. */
7063 return 205;
7064 }
7065 }
7066 else
7067 {
7068 if (((word >> 29) & 0x1) == 0)
7069 {
7070 /* 33222222222211111111110000000000
7071 10987654321098765432109876543210
7072 xxxxxxxxxx0111010xxxx1xx011110xx
7073 abs. */
7074 return 459;
7075 }
7076 else
7077 {
7078 /* 33222222222211111111110000000000
7079 10987654321098765432109876543210
7080 xxxxxxxxxx0111010xxxx1xx011111xx
7081 neg. */
7082 return 487;
7083 }
7084 }
7085 }
7086 else
7087 {
7088 if (((word >> 19) & 0x1) == 0)
7089 {
7090 if (((word >> 20) & 0x1) == 0)
7091 {
7092 if (((word >> 23) & 0x1) == 0)
7093 {
7094 if (((word >> 28) & 0x1) == 0)
7095 {
7096 if (((word >> 29) & 0x1) == 0)
7097 {
7098 /* 33222222222211111111110000000000
7099 10987654321098765432109876543210
7100 xxxxxxxxxx0111011xx001x0011100xx
7101 fcvtms. */
7102 return 172;
7103 }
7104 else
7105 {
7106 /* 33222222222211111111110000000000
7107 10987654321098765432109876543210
7108 xxxxxxxxxx0111011xx001x0011101xx
7109 fcvtmu. */
7110 return 220;
7111 }
7112 }
7113 else
7114 {
7115 if (((word >> 29) & 0x1) == 0)
7116 {
7117 /* 33222222222211111111110000000000
7118 10987654321098765432109876543210
7119 xxxxxxxxxx0111011xx001x0011110xx
7120 fcvtms. */
7121 return 463;
7122 }
7123 else
7124 {
7125 /* 33222222222211111111110000000000
7126 10987654321098765432109876543210
7127 xxxxxxxxxx0111011xx001x0011111xx
7128 fcvtmu. */
7129 return 493;
7130 }
7131 }
7132 }
7133 else
7134 {
7135 if (((word >> 28) & 0x1) == 0)
7136 {
7137 if (((word >> 29) & 0x1) == 0)
7138 {
7139 /* 33222222222211111111110000000000
7140 10987654321098765432109876543210
7141 xxxxxxxxxx0111011xx001x1011100xx
7142 fcvtzs. */
7143 return 192;
7144 }
7145 else
7146 {
7147 /* 33222222222211111111110000000000
7148 10987654321098765432109876543210
7149 xxxxxxxxxx0111011xx001x1011101xx
7150 fcvtzu. */
7151 return 239;
7152 }
7153 }
7154 else
7155 {
7156 if (((word >> 29) & 0x1) == 0)
7157 {
7158 /* 33222222222211111111110000000000
7159 10987654321098765432109876543210
7160 xxxxxxxxxx0111011xx001x1011110xx
7161 fcvtzs. */
7162 return 477;
7163 }
7164 else
7165 {
7166 /* 33222222222211111111110000000000
7167 10987654321098765432109876543210
7168 xxxxxxxxxx0111011xx001x1011111xx
7169 fcvtzu. */
7170 return 505;
7171 }
7172 }
7173 }
7174 }
7175 else
7176 {
7177 if (((word >> 28) & 0x1) == 0)
7178 {
7179 /* 33222222222211111111110000000000
7180 10987654321098765432109876543210
7181 xxxxxxxxxx0111011xx011xx01110xxx
7182 addv. */
7183 return 30;
7184 }
7185 else
7186 {
7187 /* 33222222222211111111110000000000
7188 10987654321098765432109876543210
7189 xxxxxxxxxx0111011xx011xx01111xxx
7190 addp. */
7191 return 511;
7192 }
7193 }
7194 }
7195 else
7196 {
7197 if (((word >> 23) & 0x1) == 0)
7198 {
7199 if (((word >> 28) & 0x1) == 0)
7200 {
7201 if (((word >> 29) & 0x1) == 0)
7202 {
7203 /* 33222222222211111111110000000000
7204 10987654321098765432109876543210
7205 xxxxxxxxxx0111011xx1x1x0011100xx
7206 fcvtms. */
7207 return 173;
7208 }
7209 else
7210 {
7211 /* 33222222222211111111110000000000
7212 10987654321098765432109876543210
7213 xxxxxxxxxx0111011xx1x1x0011101xx
7214 fcvtmu. */
7215 return 221;
7216 }
7217 }
7218 else
7219 {
7220 if (((word >> 29) & 0x1) == 0)
7221 {
7222 /* 33222222222211111111110000000000
7223 10987654321098765432109876543210
7224 xxxxxxxxxx0111011xx1x1x0011110xx
7225 fcvtms. */
7226 return 464;
7227 }
7228 else
7229 {
7230 /* 33222222222211111111110000000000
7231 10987654321098765432109876543210
7232 xxxxxxxxxx0111011xx1x1x0011111xx
7233 fcvtmu. */
7234 return 494;
7235 }
7236 }
7237 }
7238 else
7239 {
7240 if (((word >> 28) & 0x1) == 0)
7241 {
7242 if (((word >> 29) & 0x1) == 0)
7243 {
7244 /* 33222222222211111111110000000000
7245 10987654321098765432109876543210
7246 xxxxxxxxxx0111011xx1x1x1011100xx
7247 fcvtzs. */
7248 return 193;
7249 }
7250 else
7251 {
7252 /* 33222222222211111111110000000000
7253 10987654321098765432109876543210
7254 xxxxxxxxxx0111011xx1x1x1011101xx
7255 fcvtzu. */
7256 return 240;
7257 }
7258 }
7259 else
7260 {
7261 if (((word >> 29) & 0x1) == 0)
7262 {
7263 /* 33222222222211111111110000000000
7264 10987654321098765432109876543210
7265 xxxxxxxxxx0111011xx1x1x1011110xx
7266 fcvtzs. */
7267 return 478;
7268 }
7269 else
7270 {
7271 /* 33222222222211111111110000000000
7272 10987654321098765432109876543210
7273 xxxxxxxxxx0111011xx1x1x1011111xx
7274 fcvtzu. */
7275 return 506;
7276 }
7277 }
7278 }
7279 }
7280 }
7281 }
7282 }
7283 else
7284 {
7285 if (((word >> 15) & 0x1) == 0)
7286 {
7287 if (((word >> 28) & 0x1) == 0)
7288 {
7289 if (((word >> 16) & 0x1) == 0)
7290 {
7291 if (((word >> 19) & 0x1) == 0)
7292 {
7293 if (((word >> 29) & 0x1) == 0)
7294 {
7295 /* 33222222222211111111110000000000
7296 10987654321098765432109876543210
7297 xxxxxxxxxx0111100xx0x1xx011100xx
7298 sqabs. */
7299 return 153;
7300 }
7301 else
7302 {
7303 /* 33222222222211111111110000000000
7304 10987654321098765432109876543210
7305 xxxxxxxxxx0111100xx0x1xx011101xx
7306 sqneg. */
7307 return 202;
7308 }
7309 }
7310 else
7311 {
7312 /* 33222222222211111111110000000000
7313 10987654321098765432109876543210
7314 xxxxxxxxxx0111100xx1x1xx01110xxx
7315 aesimc. */
7316 return 627;
7317 }
7318 }
7319 else
7320 {
7321 if (((word >> 30) & 0x1) == 0)
7322 {
7323 /* 33222222222211111111110000000000
7324 10987654321098765432109876543210
7325 xxxxxxxxxx0111101xxxx1xx01110x0x
7326 fcvtl. */
7327 return 164;
7328 }
7329 else
7330 {
7331 /* 33222222222211111111110000000000
7332 10987654321098765432109876543210
7333 xxxxxxxxxx0111101xxxx1xx01110x1x
7334 fcvtl2. */
7335 return 165;
7336 }
7337 }
7338 }
7339 else
7340 {
7341 if (((word >> 29) & 0x1) == 0)
7342 {
7343 if (((word >> 30) & 0x1) == 0)
7344 {
7345 /* 33222222222211111111110000000000
7346 10987654321098765432109876543210
7347 xxxxxxxxxx011110xxxxx1xx0111100x
7348 fminnm. */
7349 return 775;
7350 }
7351 else
7352 {
7353 /* 33222222222211111111110000000000
7354 10987654321098765432109876543210
7355 xxxxxxxxxx011110xxxxx1xx0111101x
7356 sqabs. */
7357 return 455;
7358 }
7359 }
7360 else
7361 {
7362 /* 33222222222211111111110000000000
7363 10987654321098765432109876543210
7364 xxxxxxxxxx011110xxxxx1xx011111xx
7365 sqneg. */
7366 return 484;
7367 }
7368 }
7369 }
7370 else
7371 {
7372 if (((word >> 16) & 0x1) == 0)
7373 {
7374 if (((word >> 19) & 0x1) == 0)
7375 {
7376 if (((word >> 20) & 0x1) == 0)
7377 {
7378 if (((word >> 29) & 0x1) == 0)
7379 {
7380 /* 33222222222211111111110000000000
7381 10987654321098765432109876543210
7382 xxxxxxxxxx0111110xx001xx0111x0xx
7383 fabs. */
7384 return 184;
7385 }
7386 else
7387 {
7388 /* 33222222222211111111110000000000
7389 10987654321098765432109876543210
7390 xxxxxxxxxx0111110xx001xx0111x1xx
7391 fneg. */
7392 return 233;
7393 }
7394 }
7395 else
7396 {
7397 if (((word >> 23) & 0x1) == 0)
7398 {
7399 if (((word >> 28) & 0x1) == 0)
7400 {
7401 /* 33222222222211111111110000000000
7402 10987654321098765432109876543210
7403 xxxxxxxxxx0111110xx011x001110xxx
7404 fmaxv. */
7405 return 35;
7406 }
7407 else
7408 {
7409 /* 33222222222211111111110000000000
7410 10987654321098765432109876543210
7411 xxxxxxxxxx0111110xx011x001111xxx
7412 fmaxp. */
7413 return 514;
7414 }
7415 }
7416 else
7417 {
7418 if (((word >> 28) & 0x1) == 0)
7419 {
7420 /* 33222222222211111111110000000000
7421 10987654321098765432109876543210
7422 xxxxxxxxxx0111110xx011x101110xxx
7423 fminv. */
7424 return 37;
7425 }
7426 else
7427 {
7428 /* 33222222222211111111110000000000
7429 10987654321098765432109876543210
7430 xxxxxxxxxx0111110xx011x101111xxx
7431 fminp. */
7432 return 516;
7433 }
7434 }
7435 }
7436 }
7437 else
7438 {
7439 if (((word >> 29) & 0x1) == 0)
7440 {
7441 /* 33222222222211111111110000000000
7442 10987654321098765432109876543210
7443 xxxxxxxxxx0111110xx1x1xx0111x0xx
7444 fabs. */
7445 return 185;
7446 }
7447 else
7448 {
7449 /* 33222222222211111111110000000000
7450 10987654321098765432109876543210
7451 xxxxxxxxxx0111110xx1x1xx0111x1xx
7452 fneg. */
7453 return 234;
7454 }
7455 }
7456 }
7457 else
7458 {
7459 if (((word >> 19) & 0x1) == 0)
7460 {
7461 if (((word >> 28) & 0x1) == 0)
7462 {
7463 /* 33222222222211111111110000000000
7464 10987654321098765432109876543210
7465 xxxxxxxxxx0111111xx0x1xx01110xxx
7466 fsqrt. */
7467 return 244;
7468 }
7469 else
7470 {
7471 /* 33222222222211111111110000000000
7472 10987654321098765432109876543210
7473 xxxxxxxxxx0111111xx0x1xx01111xxx
7474 frecpx. */
7475 return 481;
7476 }
7477 }
7478 else
7479 {
7480 if (((word >> 28) & 0x1) == 0)
7481 {
7482 /* 33222222222211111111110000000000
7483 10987654321098765432109876543210
7484 xxxxxxxxxx0111111xx1x1xx01110xxx
7485 fsqrt. */
7486 return 245;
7487 }
7488 else
7489 {
7490 /* 33222222222211111111110000000000
7491 10987654321098765432109876543210
7492 xxxxxxxxxx0111111xx1x1xx01111xxx
7493 frecpx. */
7494 return 482;
7495 }
7496 }
7497 }
7498 }
7499 }
7500 }
7501 }
7502 }
7503 }
7504 else
7505 {
7506 if (((word >> 11) & 0x1) == 0)
7507 {
7508 if (((word >> 28) & 0x1) == 0)
7509 {
7510 if (((word >> 12) & 0x1) == 0)
7511 {
7512 if (((word >> 13) & 0x1) == 0)
7513 {
7514 if (((word >> 14) & 0x1) == 0)
7515 {
7516 if (((word >> 15) & 0x1) == 0)
7517 {
7518 if (((word >> 29) & 0x1) == 0)
7519 {
7520 /* 33222222222211111111110000000000
7521 10987654321098765432109876543210
7522 xxxxxxxxxx100000xxxxx1xx011100xx
7523 shadd. */
7524 return 252;
7525 }
7526 else
7527 {
7528 /* 33222222222211111111110000000000
7529 10987654321098765432109876543210
7530 xxxxxxxxxx100000xxxxx1xx011101xx
7531 uhadd. */
7532 return 304;
7533 }
7534 }
7535 else
7536 {
7537 if (((word >> 29) & 0x1) == 0)
7538 {
7539 /* 33222222222211111111110000000000
7540 10987654321098765432109876543210
7541 xxxxxxxxxx100001xxxxx1xx011100xx
7542 add. */
7543 return 267;
7544 }
7545 else
7546 {
7547 /* 33222222222211111111110000000000
7548 10987654321098765432109876543210
7549 xxxxxxxxxx100001xxxxx1xx011101xx
7550 sub. */
7551 return 319;
7552 }
7553 }
7554 }
7555 else
7556 {
7557 if (((word >> 15) & 0x1) == 0)
7558 {
7559 if (((word >> 29) & 0x1) == 0)
7560 {
7561 /* 33222222222211111111110000000000
7562 10987654321098765432109876543210
7563 xxxxxxxxxx100010xxxxx1xx011100xx
7564 sshl. */
7565 return 259;
7566 }
7567 else
7568 {
7569 /* 33222222222211111111110000000000
7570 10987654321098765432109876543210
7571 xxxxxxxxxx100010xxxxx1xx011101xx
7572 ushl. */
7573 return 311;
7574 }
7575 }
7576 else
7577 {
7578 if (((word >> 23) & 0x1) == 0)
7579 {
7580 if (((word >> 29) & 0x1) == 0)
7581 {
7582 /* 33222222222211111111110000000000
7583 10987654321098765432109876543210
7584 xxxxxxxxxx100011xxxxx1x0011100xx
7585 fmaxnm. */
7586 return 275;
7587 }
7588 else
7589 {
7590 /* 33222222222211111111110000000000
7591 10987654321098765432109876543210
7592 xxxxxxxxxx100011xxxxx1x0011101xx
7593 fmaxnmp. */
7594 return 326;
7595 }
7596 }
7597 else
7598 {
7599 if (((word >> 29) & 0x1) == 0)
7600 {
7601 /* 33222222222211111111110000000000
7602 10987654321098765432109876543210
7603 xxxxxxxxxx100011xxxxx1x1011100xx
7604 fminnm. */
7605 return 291;
7606 }
7607 else
7608 {
7609 /* 33222222222211111111110000000000
7610 10987654321098765432109876543210
7611 xxxxxxxxxx100011xxxxx1x1011101xx
7612 fminnmp. */
7613 return 342;
7614 }
7615 }
7616 }
7617 }
7618 }
7619 else
7620 {
7621 if (((word >> 14) & 0x1) == 0)
7622 {
7623 if (((word >> 15) & 0x1) == 0)
7624 {
7625 if (((word >> 29) & 0x1) == 0)
7626 {
7627 /* 33222222222211111111110000000000
7628 10987654321098765432109876543210
7629 xxxxxxxxxx100100xxxxx1xx011100xx
7630 shsub. */
7631 return 255;
7632 }
7633 else
7634 {
7635 /* 33222222222211111111110000000000
7636 10987654321098765432109876543210
7637 xxxxxxxxxx100100xxxxx1xx011101xx
7638 uhsub. */
7639 return 307;
7640 }
7641 }
7642 else
7643 {
7644 if (((word >> 29) & 0x1) == 0)
7645 {
7646 /* 33222222222211111111110000000000
7647 10987654321098765432109876543210
7648 xxxxxxxxxx100101xxxxx1xx011100xx
7649 smaxp. */
7650 return 271;
7651 }
7652 else
7653 {
7654 /* 33222222222211111111110000000000
7655 10987654321098765432109876543210
7656 xxxxxxxxxx100101xxxxx1xx011101xx
7657 umaxp. */
7658 return 323;
7659 }
7660 }
7661 }
7662 else
7663 {
7664 if (((word >> 15) & 0x1) == 0)
7665 {
7666 if (((word >> 29) & 0x1) == 0)
7667 {
7668 /* 33222222222211111111110000000000
7669 10987654321098765432109876543210
7670 xxxxxxxxxx100110xxxxx1xx011100xx
7671 smax. */
7672 return 263;
7673 }
7674 else
7675 {
7676 /* 33222222222211111111110000000000
7677 10987654321098765432109876543210
7678 xxxxxxxxxx100110xxxxx1xx011101xx
7679 umax. */
7680 return 315;
7681 }
7682 }
7683 else
7684 {
7685 if (((word >> 23) & 0x1) == 0)
7686 {
7687 if (((word >> 29) & 0x1) == 0)
7688 {
7689 /* 33222222222211111111110000000000
7690 10987654321098765432109876543210
7691 xxxxxxxxxx100111xxxxx1x0011100xx
7692 fcmeq. */
7693 return 283;
7694 }
7695 else
7696 {
7697 /* 33222222222211111111110000000000
7698 10987654321098765432109876543210
7699 xxxxxxxxxx100111xxxxx1x0011101xx
7700 fcmge. */
7701 return 332;
7702 }
7703 }
7704 else
7705 {
7706 /* 33222222222211111111110000000000
7707 10987654321098765432109876543210
7708 xxxxxxxxxx100111xxxxx1x101110xxx
7709 fcmgt. */
7710 return 346;
7711 }
7712 }
7713 }
7714 }
7715 }
7716 else
7717 {
7718 if (((word >> 13) & 0x1) == 0)
7719 {
7720 if (((word >> 14) & 0x1) == 0)
7721 {
7722 if (((word >> 15) & 0x1) == 0)
7723 {
7724 if (((word >> 29) & 0x1) == 0)
7725 {
7726 /* 33222222222211111111110000000000
7727 10987654321098765432109876543210
7728 xxxxxxxxxx101000xxxxx1xx011100xx
7729 srhadd. */
7730 return 254;
7731 }
7732 else
7733 {
7734 /* 33222222222211111111110000000000
7735 10987654321098765432109876543210
7736 xxxxxxxxxx101000xxxxx1xx011101xx
7737 urhadd. */
7738 return 306;
7739 }
7740 }
7741 else
7742 {
7743 if (((word >> 29) & 0x1) == 0)
7744 {
7745 /* 33222222222211111111110000000000
7746 10987654321098765432109876543210
7747 xxxxxxxxxx101001xxxxx1xx011100xx
7748 mla. */
7749 return 269;
7750 }
7751 else
7752 {
7753 /* 33222222222211111111110000000000
7754 10987654321098765432109876543210
7755 xxxxxxxxxx101001xxxxx1xx011101xx
7756 mls. */
7757 return 321;
7758 }
7759 }
7760 }
7761 else
7762 {
7763 if (((word >> 15) & 0x1) == 0)
7764 {
7765 if (((word >> 29) & 0x1) == 0)
7766 {
7767 /* 33222222222211111111110000000000
7768 10987654321098765432109876543210
7769 xxxxxxxxxx101010xxxxx1xx011100xx
7770 srshl. */
7771 return 261;
7772 }
7773 else
7774 {
7775 /* 33222222222211111111110000000000
7776 10987654321098765432109876543210
7777 xxxxxxxxxx101010xxxxx1xx011101xx
7778 urshl. */
7779 return 313;
7780 }
7781 }
7782 else
7783 {
7784 if (((word >> 23) & 0x1) == 0)
7785 {
7786 if (((word >> 29) & 0x1) == 0)
7787 {
7788 /* 33222222222211111111110000000000
7789 10987654321098765432109876543210
7790 xxxxxxxxxx101011xxxxx1x0011100xx
7791 fadd. */
7792 return 279;
7793 }
7794 else
7795 {
7796 /* 33222222222211111111110000000000
7797 10987654321098765432109876543210
7798 xxxxxxxxxx101011xxxxx1x0011101xx
7799 faddp. */
7800 return 328;
7801 }
7802 }
7803 else
7804 {
7805 if (((word >> 29) & 0x1) == 0)
7806 {
7807 /* 33222222222211111111110000000000
7808 10987654321098765432109876543210
7809 xxxxxxxxxx101011xxxxx1x1011100xx
7810 fsub. */
7811 return 295;
7812 }
7813 else
7814 {
7815 /* 33222222222211111111110000000000
7816 10987654321098765432109876543210
7817 xxxxxxxxxx101011xxxxx1x1011101xx
7818 fabd. */
7819 return 344;
7820 }
7821 }
7822 }
7823 }
7824 }
7825 else
7826 {
7827 if (((word >> 14) & 0x1) == 0)
7828 {
7829 if (((word >> 15) & 0x1) == 0)
7830 {
7831 if (((word >> 29) & 0x1) == 0)
7832 {
7833 /* 33222222222211111111110000000000
7834 10987654321098765432109876543210
7835 xxxxxxxxxx101100xxxxx1xx011100xx
7836 cmgt. */
7837 return 257;
7838 }
7839 else
7840 {
7841 /* 33222222222211111111110000000000
7842 10987654321098765432109876543210
7843 xxxxxxxxxx101100xxxxx1xx011101xx
7844 cmhi. */
7845 return 309;
7846 }
7847 }
7848 else
7849 {
7850 if (((word >> 29) & 0x1) == 0)
7851 {
7852 /* 33222222222211111111110000000000
7853 10987654321098765432109876543210
7854 xxxxxxxxxx101101xxxxx1xx011100xx
7855 sqdmulh. */
7856 return 273;
7857 }
7858 else
7859 {
7860 /* 33222222222211111111110000000000
7861 10987654321098765432109876543210
7862 xxxxxxxxxx101101xxxxx1xx011101xx
7863 sqrdmulh. */
7864 return 325;
7865 }
7866 }
7867 }
7868 else
7869 {
7870 if (((word >> 15) & 0x1) == 0)
7871 {
7872 if (((word >> 29) & 0x1) == 0)
7873 {
7874 /* 33222222222211111111110000000000
7875 10987654321098765432109876543210
7876 xxxxxxxxxx101110xxxxx1xx011100xx
7877 sabd. */
7878 return 265;
7879 }
7880 else
7881 {
7882 /* 33222222222211111111110000000000
7883 10987654321098765432109876543210
7884 xxxxxxxxxx101110xxxxx1xx011101xx
7885 uabd. */
7886 return 317;
7887 }
7888 }
7889 else
7890 {
7891 if (((word >> 23) & 0x1) == 0)
7892 {
7893 if (((word >> 29) & 0x1) == 0)
7894 {
7895 /* 33222222222211111111110000000000
7896 10987654321098765432109876543210
7897 xxxxxxxxxx101111xxxxx1x0011100xx
7898 fmax. */
7899 return 285;
7900 }
7901 else
7902 {
7903 /* 33222222222211111111110000000000
7904 10987654321098765432109876543210
7905 xxxxxxxxxx101111xxxxx1x0011101xx
7906 fmaxp. */
7907 return 336;
7908 }
7909 }
7910 else
7911 {
7912 if (((word >> 29) & 0x1) == 0)
7913 {
7914 /* 33222222222211111111110000000000
7915 10987654321098765432109876543210
7916 xxxxxxxxxx101111xxxxx1x1011100xx
7917 fmin. */
7918 return 297;
7919 }
7920 else
7921 {
7922 /* 33222222222211111111110000000000
7923 10987654321098765432109876543210
7924 xxxxxxxxxx101111xxxxx1x1011101xx
7925 fminp. */
7926 return 350;
7927 }
7928 }
7929 }
7930 }
7931 }
7932 }
7933 }
7934 else
7935 {
7936 if (((word >> 29) & 0x1) == 0)
7937 {
7938 if (((word >> 30) & 0x1) == 0)
7939 {
7940 if (((word >> 4) & 0x1) == 0)
7941 {
7942 /* 33222222222211111111110000000000
7943 10987654321098765432109876543210
7944 xxxx0xxxxx10xxxxxxxxx1xx0111100x
7945 fccmp. */
7946 return 726;
7947 }
7948 else
7949 {
7950 /* 33222222222211111111110000000000
7951 10987654321098765432109876543210
7952 xxxx1xxxxx10xxxxxxxxx1xx0111100x
7953 fccmpe. */
7954 return 728;
7955 }
7956 }
7957 else
7958 {
7959 if (((word >> 12) & 0x1) == 0)
7960 {
7961 if (((word >> 13) & 0x1) == 0)
7962 {
7963 if (((word >> 14) & 0x1) == 0)
7964 {
7965 /* 33222222222211111111110000000000
7966 10987654321098765432109876543210
7967 xxxxxxxxxx10000xxxxxx1xx0111101x
7968 add. */
7969 return 534;
7970 }
7971 else
7972 {
7973 /* 33222222222211111111110000000000
7974 10987654321098765432109876543210
7975 xxxxxxxxxx10001xxxxxx1xx0111101x
7976 sshl. */
7977 return 532;
7978 }
7979 }
7980 else
7981 {
7982 /* 33222222222211111111110000000000
7983 10987654321098765432109876543210
7984 xxxxxxxxxx1001xxxxxxx1xx0111101x
7985 fcmeq. */
7986 return 524;
7987 }
7988 }
7989 else
7990 {
7991 if (((word >> 13) & 0x1) == 0)
7992 {
7993 /* 33222222222211111111110000000000
7994 10987654321098765432109876543210
7995 xxxxxxxxxx1010xxxxxxx1xx0111101x
7996 srshl. */
7997 return 533;
7998 }
7999 else
8000 {
8001 if (((word >> 15) & 0x1) == 0)
8002 {
8003 /* 33222222222211111111110000000000
8004 10987654321098765432109876543210
8005 xxxxxxxxxx1011x0xxxxx1xx0111101x
8006 cmgt. */
8007 return 530;
8008 }
8009 else
8010 {
8011 /* 33222222222211111111110000000000
8012 10987654321098765432109876543210
8013 xxxxxxxxxx1011x1xxxxx1xx0111101x
8014 sqdmulh. */
8015 return 521;
8016 }
8017 }
8018 }
8019 }
8020 }
8021 else
8022 {
8023 if (((word >> 12) & 0x1) == 0)
8024 {
8025 if (((word >> 13) & 0x1) == 0)
8026 {
8027 if (((word >> 14) & 0x1) == 0)
8028 {
8029 /* 33222222222211111111110000000000
8030 10987654321098765432109876543210
8031 xxxxxxxxxx10000xxxxxx1xx011111xx
8032 sub. */
8033 return 555;
8034 }
8035 else
8036 {
8037 /* 33222222222211111111110000000000
8038 10987654321098765432109876543210
8039 xxxxxxxxxx10001xxxxxx1xx011111xx
8040 ushl. */
8041 return 553;
8042 }
8043 }
8044 else
8045 {
8046 if (((word >> 23) & 0x1) == 0)
8047 {
8048 /* 33222222222211111111110000000000
8049 10987654321098765432109876543210
8050 xxxxxxxxxx1001xxxxxxx1x0011111xx
8051 fcmge. */
8052 return 541;
8053 }
8054 else
8055 {
8056 /* 33222222222211111111110000000000
8057 10987654321098765432109876543210
8058 xxxxxxxxxx1001xxxxxxx1x1011111xx
8059 fcmgt. */
8060 return 547;
8061 }
8062 }
8063 }
8064 else
8065 {
8066 if (((word >> 13) & 0x1) == 0)
8067 {
8068 if (((word >> 15) & 0x1) == 0)
8069 {
8070 /* 33222222222211111111110000000000
8071 10987654321098765432109876543210
8072 xxxxxxxxxx1010x0xxxxx1xx011111xx
8073 urshl. */
8074 return 554;
8075 }
8076 else
8077 {
8078 /* 33222222222211111111110000000000
8079 10987654321098765432109876543210
8080 xxxxxxxxxx1010x1xxxxx1xx011111xx
8081 fabd. */
8082 return 545;
8083 }
8084 }
8085 else
8086 {
8087 if (((word >> 15) & 0x1) == 0)
8088 {
8089 /* 33222222222211111111110000000000
8090 10987654321098765432109876543210
8091 xxxxxxxxxx1011x0xxxxx1xx011111xx
8092 cmhi. */
8093 return 551;
8094 }
8095 else
8096 {
8097 /* 33222222222211111111110000000000
8098 10987654321098765432109876543210
8099 xxxxxxxxxx1011x1xxxxx1xx011111xx
8100 sqrdmulh. */
8101 return 540;
8102 }
8103 }
8104 }
8105 }
8106 }
8107 }
8108 else
8109 {
8110 if (((word >> 28) & 0x1) == 0)
8111 {
8112 if (((word >> 12) & 0x1) == 0)
8113 {
8114 if (((word >> 13) & 0x1) == 0)
8115 {
8116 if (((word >> 14) & 0x1) == 0)
8117 {
8118 if (((word >> 15) & 0x1) == 0)
8119 {
8120 if (((word >> 29) & 0x1) == 0)
8121 {
8122 /* 33222222222211111111110000000000
8123 10987654321098765432109876543210
8124 xxxxxxxxxx110000xxxxx1xx011100xx
8125 sqadd. */
8126 return 253;
8127 }
8128 else
8129 {
8130 /* 33222222222211111111110000000000
8131 10987654321098765432109876543210
8132 xxxxxxxxxx110000xxxxx1xx011101xx
8133 uqadd. */
8134 return 305;
8135 }
8136 }
8137 else
8138 {
8139 if (((word >> 29) & 0x1) == 0)
8140 {
8141 /* 33222222222211111111110000000000
8142 10987654321098765432109876543210
8143 xxxxxxxxxx110001xxxxx1xx011100xx
8144 cmtst. */
8145 return 268;
8146 }
8147 else
8148 {
8149 /* 33222222222211111111110000000000
8150 10987654321098765432109876543210
8151 xxxxxxxxxx110001xxxxx1xx011101xx
8152 cmeq. */
8153 return 320;
8154 }
8155 }
8156 }
8157 else
8158 {
8159 if (((word >> 15) & 0x1) == 0)
8160 {
8161 if (((word >> 29) & 0x1) == 0)
8162 {
8163 /* 33222222222211111111110000000000
8164 10987654321098765432109876543210
8165 xxxxxxxxxx110010xxxxx1xx011100xx
8166 sqshl. */
8167 return 260;
8168 }
8169 else
8170 {
8171 /* 33222222222211111111110000000000
8172 10987654321098765432109876543210
8173 xxxxxxxxxx110010xxxxx1xx011101xx
8174 uqshl. */
8175 return 312;
8176 }
8177 }
8178 else
8179 {
8180 if (((word >> 23) & 0x1) == 0)
8181 {
8182 /* 33222222222211111111110000000000
8183 10987654321098765432109876543210
8184 xxxxxxxxxx110011xxxxx1x001110xxx
8185 fmla. */
8186 return 277;
8187 }
8188 else
8189 {
8190 /* 33222222222211111111110000000000
8191 10987654321098765432109876543210
8192 xxxxxxxxxx110011xxxxx1x101110xxx
8193 fmls. */
8194 return 293;
8195 }
8196 }
8197 }
8198 }
8199 else
8200 {
8201 if (((word >> 14) & 0x1) == 0)
8202 {
8203 if (((word >> 15) & 0x1) == 0)
8204 {
8205 if (((word >> 29) & 0x1) == 0)
8206 {
8207 /* 33222222222211111111110000000000
8208 10987654321098765432109876543210
8209 xxxxxxxxxx110100xxxxx1xx011100xx
8210 sqsub. */
8211 return 256;
8212 }
8213 else
8214 {
8215 /* 33222222222211111111110000000000
8216 10987654321098765432109876543210
8217 xxxxxxxxxx110100xxxxx1xx011101xx
8218 uqsub. */
8219 return 308;
8220 }
8221 }
8222 else
8223 {
8224 if (((word >> 29) & 0x1) == 0)
8225 {
8226 /* 33222222222211111111110000000000
8227 10987654321098765432109876543210
8228 xxxxxxxxxx110101xxxxx1xx011100xx
8229 sminp. */
8230 return 272;
8231 }
8232 else
8233 {
8234 /* 33222222222211111111110000000000
8235 10987654321098765432109876543210
8236 xxxxxxxxxx110101xxxxx1xx011101xx
8237 uminp. */
8238 return 324;
8239 }
8240 }
8241 }
8242 else
8243 {
8244 if (((word >> 15) & 0x1) == 0)
8245 {
8246 if (((word >> 29) & 0x1) == 0)
8247 {
8248 /* 33222222222211111111110000000000
8249 10987654321098765432109876543210
8250 xxxxxxxxxx110110xxxxx1xx011100xx
8251 smin. */
8252 return 264;
8253 }
8254 else
8255 {
8256 /* 33222222222211111111110000000000
8257 10987654321098765432109876543210
8258 xxxxxxxxxx110110xxxxx1xx011101xx
8259 umin. */
8260 return 316;
8261 }
8262 }
8263 else
8264 {
8265 if (((word >> 23) & 0x1) == 0)
8266 {
8267 /* 33222222222211111111110000000000
8268 10987654321098765432109876543210
8269 xxxxxxxxxx110111xxxxx1x001110xxx
8270 facge. */
8271 return 334;
8272 }
8273 else
8274 {
8275 /* 33222222222211111111110000000000
8276 10987654321098765432109876543210
8277 xxxxxxxxxx110111xxxxx1x101110xxx
8278 facgt. */
8279 return 348;
8280 }
8281 }
8282 }
8283 }
8284 }
8285 else
8286 {
8287 if (((word >> 13) & 0x1) == 0)
8288 {
8289 if (((word >> 14) & 0x1) == 0)
8290 {
8291 if (((word >> 15) & 0x1) == 0)
8292 {
8293 if (((word >> 22) & 0x1) == 0)
8294 {
8295 if (((word >> 23) & 0x1) == 0)
8296 {
8297 if (((word >> 29) & 0x1) == 0)
8298 {
8299 /* 33222222222211111111110000000000
8300 10987654321098765432109876543210
8301 xxxxxxxxxx111000xxxxx100011100xx
8302 and. */
8303 return 289;
8304 }
8305 else
8306 {
8307 /* 33222222222211111111110000000000
8308 10987654321098765432109876543210
8309 xxxxxxxxxx111000xxxxx100011101xx
8310 eor. */
8311 return 340;
8312 }
8313 }
8314 else
8315 {
8316 if (((word >> 29) & 0x1) == 0)
8317 {
8318 /* 33222222222211111111110000000000
8319 10987654321098765432109876543210
8320 xxxxxxxxxx111000xxxxx101011100xx
8321 orr. */
8322 return 301;
8323 }
8324 else
8325 {
8326 /* 33222222222211111111110000000000
8327 10987654321098765432109876543210
8328 xxxxxxxxxx111000xxxxx101011101xx
8329 bit. */
8330 return 352;
8331 }
8332 }
8333 }
8334 else
8335 {
8336 if (((word >> 23) & 0x1) == 0)
8337 {
8338 if (((word >> 29) & 0x1) == 0)
8339 {
8340 /* 33222222222211111111110000000000
8341 10987654321098765432109876543210
8342 xxxxxxxxxx111000xxxxx110011100xx
8343 bic. */
8344 return 290;
8345 }
8346 else
8347 {
8348 /* 33222222222211111111110000000000
8349 10987654321098765432109876543210
8350 xxxxxxxxxx111000xxxxx110011101xx
8351 bsl. */
8352 return 341;
8353 }
8354 }
8355 else
8356 {
8357 if (((word >> 29) & 0x1) == 0)
8358 {
8359 /* 33222222222211111111110000000000
8360 10987654321098765432109876543210
8361 xxxxxxxxxx111000xxxxx111011100xx
8362 orn. */
8363 return 303;
8364 }
8365 else
8366 {
8367 /* 33222222222211111111110000000000
8368 10987654321098765432109876543210
8369 xxxxxxxxxx111000xxxxx111011101xx
8370 bif. */
8371 return 353;
8372 }
8373 }
8374 }
8375 }
8376 else
8377 {
8378 if (((word >> 29) & 0x1) == 0)
8379 {
8380 /* 33222222222211111111110000000000
8381 10987654321098765432109876543210
8382 xxxxxxxxxx111001xxxxx1xx011100xx
8383 mul. */
8384 return 270;
8385 }
8386 else
8387 {
8388 /* 33222222222211111111110000000000
8389 10987654321098765432109876543210
8390 xxxxxxxxxx111001xxxxx1xx011101xx
8391 pmul. */
8392 return 322;
8393 }
8394 }
8395 }
8396 else
8397 {
8398 if (((word >> 15) & 0x1) == 0)
8399 {
8400 if (((word >> 29) & 0x1) == 0)
8401 {
8402 /* 33222222222211111111110000000000
8403 10987654321098765432109876543210
8404 xxxxxxxxxx111010xxxxx1xx011100xx
8405 sqrshl. */
8406 return 262;
8407 }
8408 else
8409 {
8410 /* 33222222222211111111110000000000
8411 10987654321098765432109876543210
8412 xxxxxxxxxx111010xxxxx1xx011101xx
8413 uqrshl. */
8414 return 314;
8415 }
8416 }
8417 else
8418 {
8419 if (((word >> 29) & 0x1) == 0)
8420 {
8421 /* 33222222222211111111110000000000
8422 10987654321098765432109876543210
8423 xxxxxxxxxx111011xxxxx1xx011100xx
8424 fmulx. */
8425 return 281;
8426 }
8427 else
8428 {
8429 /* 33222222222211111111110000000000
8430 10987654321098765432109876543210
8431 xxxxxxxxxx111011xxxxx1xx011101xx
8432 fmul. */
8433 return 330;
8434 }
8435 }
8436 }
8437 }
8438 else
8439 {
8440 if (((word >> 14) & 0x1) == 0)
8441 {
8442 if (((word >> 15) & 0x1) == 0)
8443 {
8444 if (((word >> 29) & 0x1) == 0)
8445 {
8446 /* 33222222222211111111110000000000
8447 10987654321098765432109876543210
8448 xxxxxxxxxx111100xxxxx1xx011100xx
8449 cmge. */
8450 return 258;
8451 }
8452 else
8453 {
8454 /* 33222222222211111111110000000000
8455 10987654321098765432109876543210
8456 xxxxxxxxxx111100xxxxx1xx011101xx
8457 cmhs. */
8458 return 310;
8459 }
8460 }
8461 else
8462 {
8463 /* 33222222222211111111110000000000
8464 10987654321098765432109876543210
8465 xxxxxxxxxx111101xxxxx1xx01110xxx
8466 addp. */
8467 return 274;
8468 }
8469 }
8470 else
8471 {
8472 if (((word >> 15) & 0x1) == 0)
8473 {
8474 if (((word >> 29) & 0x1) == 0)
8475 {
8476 /* 33222222222211111111110000000000
8477 10987654321098765432109876543210
8478 xxxxxxxxxx111110xxxxx1xx011100xx
8479 saba. */
8480 return 266;
8481 }
8482 else
8483 {
8484 /* 33222222222211111111110000000000
8485 10987654321098765432109876543210
8486 xxxxxxxxxx111110xxxxx1xx011101xx
8487 uaba. */
8488 return 318;
8489 }
8490 }
8491 else
8492 {
8493 if (((word >> 23) & 0x1) == 0)
8494 {
8495 if (((word >> 29) & 0x1) == 0)
8496 {
8497 /* 33222222222211111111110000000000
8498 10987654321098765432109876543210
8499 xxxxxxxxxx111111xxxxx1x0011100xx
8500 frecps. */
8501 return 287;
8502 }
8503 else
8504 {
8505 /* 33222222222211111111110000000000
8506 10987654321098765432109876543210
8507 xxxxxxxxxx111111xxxxx1x0011101xx
8508 fdiv. */
8509 return 338;
8510 }
8511 }
8512 else
8513 {
8514 /* 33222222222211111111110000000000
8515 10987654321098765432109876543210
8516 xxxxxxxxxx111111xxxxx1x101110xxx
8517 frsqrts. */
8518 return 299;
8519 }
8520 }
8521 }
8522 }
8523 }
8524 }
8525 else
8526 {
8527 if (((word >> 29) & 0x1) == 0)
8528 {
8529 if (((word >> 30) & 0x1) == 0)
8530 {
8531 /* 33222222222211111111110000000000
8532 10987654321098765432109876543210
8533 xxxxxxxxxx11xxxxxxxxx1xx0111100x
8534 fcsel. */
8535 return 789;
8536 }
8537 else
8538 {
8539 if (((word >> 12) & 0x1) == 0)
8540 {
8541 if (((word >> 13) & 0x1) == 0)
8542 {
8543 if (((word >> 14) & 0x1) == 0)
8544 {
8545 if (((word >> 15) & 0x1) == 0)
8546 {
8547 /* 33222222222211111111110000000000
8548 10987654321098765432109876543210
8549 xxxxxxxxxx110000xxxxx1xx0111101x
8550 sqadd. */
8551 return 517;
8552 }
8553 else
8554 {
8555 /* 33222222222211111111110000000000
8556 10987654321098765432109876543210
8557 xxxxxxxxxx110001xxxxx1xx0111101x
8558 cmtst. */
8559 return 535;
8560 }
8561 }
8562 else
8563 {
8564 /* 33222222222211111111110000000000
8565 10987654321098765432109876543210
8566 xxxxxxxxxx11001xxxxxx1xx0111101x
8567 sqshl. */
8568 return 519;
8569 }
8570 }
8571 else
8572 {
8573 /* 33222222222211111111110000000000
8574 10987654321098765432109876543210
8575 xxxxxxxxxx1101xxxxxxx1xx0111101x
8576 sqsub. */
8577 return 518;
8578 }
8579 }
8580 else
8581 {
8582 if (((word >> 13) & 0x1) == 0)
8583 {
8584 if (((word >> 15) & 0x1) == 0)
8585 {
8586 /* 33222222222211111111110000000000
8587 10987654321098765432109876543210
8588 xxxxxxxxxx1110x0xxxxx1xx0111101x
8589 sqrshl. */
8590 return 520;
8591 }
8592 else
8593 {
8594 /* 33222222222211111111110000000000
8595 10987654321098765432109876543210
8596 xxxxxxxxxx1110x1xxxxx1xx0111101x
8597 fmulx. */
8598 return 522;
8599 }
8600 }
8601 else
8602 {
8603 if (((word >> 14) & 0x1) == 0)
8604 {
8605 /* 33222222222211111111110000000000
8606 10987654321098765432109876543210
8607 xxxxxxxxxx11110xxxxxx1xx0111101x
8608 cmge. */
8609 return 531;
8610 }
8611 else
8612 {
8613 if (((word >> 23) & 0x1) == 0)
8614 {
8615 /* 33222222222211111111110000000000
8616 10987654321098765432109876543210
8617 xxxxxxxxxx11111xxxxxx1x00111101x
8618 frecps. */
8619 return 526;
8620 }
8621 else
8622 {
8623 /* 33222222222211111111110000000000
8624 10987654321098765432109876543210
8625 xxxxxxxxxx11111xxxxxx1x10111101x
8626 frsqrts. */
8627 return 528;
8628 }
8629 }
8630 }
8631 }
8632 }
8633 }
8634 else
8635 {
8636 if (((word >> 12) & 0x1) == 0)
8637 {
8638 if (((word >> 13) & 0x1) == 0)
8639 {
8640 if (((word >> 14) & 0x1) == 0)
8641 {
8642 if (((word >> 15) & 0x1) == 0)
8643 {
8644 /* 33222222222211111111110000000000
8645 10987654321098765432109876543210
8646 xxxxxxxxxx110000xxxxx1xx011111xx
8647 uqadd. */
8648 return 536;
8649 }
8650 else
8651 {
8652 /* 33222222222211111111110000000000
8653 10987654321098765432109876543210
8654 xxxxxxxxxx110001xxxxx1xx011111xx
8655 cmeq. */
8656 return 556;
8657 }
8658 }
8659 else
8660 {
8661 /* 33222222222211111111110000000000
8662 10987654321098765432109876543210
8663 xxxxxxxxxx11001xxxxxx1xx011111xx
8664 uqshl. */
8665 return 538;
8666 }
8667 }
8668 else
8669 {
8670 if (((word >> 14) & 0x1) == 0)
8671 {
8672 /* 33222222222211111111110000000000
8673 10987654321098765432109876543210
8674 xxxxxxxxxx11010xxxxxx1xx011111xx
8675 uqsub. */
8676 return 537;
8677 }
8678 else
8679 {
8680 if (((word >> 23) & 0x1) == 0)
8681 {
8682 /* 33222222222211111111110000000000
8683 10987654321098765432109876543210
8684 xxxxxxxxxx11011xxxxxx1x0011111xx
8685 facge. */
8686 return 543;
8687 }
8688 else
8689 {
8690 /* 33222222222211111111110000000000
8691 10987654321098765432109876543210
8692 xxxxxxxxxx11011xxxxxx1x1011111xx
8693 facgt. */
8694 return 549;
8695 }
8696 }
8697 }
8698 }
8699 else
8700 {
8701 if (((word >> 13) & 0x1) == 0)
8702 {
8703 /* 33222222222211111111110000000000
8704 10987654321098765432109876543210
8705 xxxxxxxxxx1110xxxxxxx1xx011111xx
8706 uqrshl. */
8707 return 539;
8708 }
8709 else
8710 {
8711 /* 33222222222211111111110000000000
8712 10987654321098765432109876543210
8713 xxxxxxxxxx1111xxxxxxx1xx011111xx
8714 cmhs. */
8715 return 552;
8716 }
8717 }
8718 }
8719 }
8720 }
8721 }
8722 }
8723 }
8724 else
8725 {
8726 if (((word >> 15) & 0x1) == 0)
8727 {
8728 if (((word >> 28) & 0x1) == 0)
8729 {
8730 if (((word >> 10) & 0x1) == 0)
8731 {
8732 if (((word >> 12) & 0x1) == 0)
8733 {
8734 if (((word >> 13) & 0x1) == 0)
8735 {
8736 if (((word >> 14) & 0x1) == 0)
8737 {
8738 /* 33222222222211111111110000000000
8739 10987654321098765432109876543210
8740 xxxxxxxxxx0x0000xxxxxxxx11110xxx
8741 mla. */
8742 return 110;
8743 }
8744 else
8745 {
8746 /* 33222222222211111111110000000000
8747 10987654321098765432109876543210
8748 xxxxxxxxxx0x0010xxxxxxxx11110xxx
8749 mls. */
8750 return 113;
8751 }
8752 }
8753 else
8754 {
8755 if (((word >> 14) & 0x1) == 0)
8756 {
8757 if (((word >> 29) & 0x1) == 0)
8758 {
8759 if (((word >> 30) & 0x1) == 0)
8760 {
8761 /* 33222222222211111111110000000000
8762 10987654321098765432109876543210
8763 xxxxxxxxxx0x0100xxxxxxxx1111000x
8764 smlal. */
8765 return 92;
8766 }
8767 else
8768 {
8769 /* 33222222222211111111110000000000
8770 10987654321098765432109876543210
8771 xxxxxxxxxx0x0100xxxxxxxx1111001x
8772 smlal2. */
8773 return 93;
8774 }
8775 }
8776 else
8777 {
8778 if (((word >> 30) & 0x1) == 0)
8779 {
8780 /* 33222222222211111111110000000000
8781 10987654321098765432109876543210
8782 xxxxxxxxxx0x0100xxxxxxxx1111010x
8783 umlal. */
8784 return 111;
8785 }
8786 else
8787 {
8788 /* 33222222222211111111110000000000
8789 10987654321098765432109876543210
8790 xxxxxxxxxx0x0100xxxxxxxx1111011x
8791 umlal2. */
8792 return 112;
8793 }
8794 }
8795 }
8796 else
8797 {
8798 if (((word >> 29) & 0x1) == 0)
8799 {
8800 if (((word >> 30) & 0x1) == 0)
8801 {
8802 /* 33222222222211111111110000000000
8803 10987654321098765432109876543210
8804 xxxxxxxxxx0x0110xxxxxxxx1111000x
8805 smlsl. */
8806 return 96;
8807 }
8808 else
8809 {
8810 /* 33222222222211111111110000000000
8811 10987654321098765432109876543210
8812 xxxxxxxxxx0x0110xxxxxxxx1111001x
8813 smlsl2. */
8814 return 97;
8815 }
8816 }
8817 else
8818 {
8819 if (((word >> 30) & 0x1) == 0)
8820 {
8821 /* 33222222222211111111110000000000
8822 10987654321098765432109876543210
8823 xxxxxxxxxx0x0110xxxxxxxx1111010x
8824 umlsl. */
8825 return 114;
8826 }
8827 else
8828 {
8829 /* 33222222222211111111110000000000
8830 10987654321098765432109876543210
8831 xxxxxxxxxx0x0110xxxxxxxx1111011x
8832 umlsl2. */
8833 return 115;
8834 }
8835 }
8836 }
8837 }
8838 }
8839 else
8840 {
8841 if (((word >> 13) & 0x1) == 0)
8842 {
8843 if (((word >> 14) & 0x1) == 0)
8844 {
8845 /* 33222222222211111111110000000000
8846 10987654321098765432109876543210
8847 xxxxxxxxxx0x1000xxxxxxxx11110xxx
8848 fmla. */
8849 return 107;
8850 }
8851 else
8852 {
8853 /* 33222222222211111111110000000000
8854 10987654321098765432109876543210
8855 xxxxxxxxxx0x1010xxxxxxxx11110xxx
8856 fmls. */
8857 return 108;
8858 }
8859 }
8860 else
8861 {
8862 if (((word >> 14) & 0x1) == 0)
8863 {
8864 if (((word >> 30) & 0x1) == 0)
8865 {
8866 /* 33222222222211111111110000000000
8867 10987654321098765432109876543210
8868 xxxxxxxxxx0x1100xxxxxxxx11110x0x
8869 sqdmlal. */
8870 return 94;
8871 }
8872 else
8873 {
8874 /* 33222222222211111111110000000000
8875 10987654321098765432109876543210
8876 xxxxxxxxxx0x1100xxxxxxxx11110x1x
8877 sqdmlal2. */
8878 return 95;
8879 }
8880 }
8881 else
8882 {
8883 if (((word >> 30) & 0x1) == 0)
8884 {
8885 /* 33222222222211111111110000000000
8886 10987654321098765432109876543210
8887 xxxxxxxxxx0x1110xxxxxxxx11110x0x
8888 sqdmlsl. */
8889 return 98;
8890 }
8891 else
8892 {
8893 /* 33222222222211111111110000000000
8894 10987654321098765432109876543210
8895 xxxxxxxxxx0x1110xxxxxxxx11110x1x
8896 sqdmlsl2. */
8897 return 99;
8898 }
8899 }
8900 }
8901 }
8902 }
8903 else
8904 {
8905 if (((word >> 12) & 0x1) == 0)
8906 {
8907 if (((word >> 29) & 0x1) == 0)
8908 {
8909 /* 33222222222211111111110000000000
8910 10987654321098765432109876543210
8911 xxxxxxxxxx1x0xx0xxxxxxxx111100xx
8912 movi. */
8913 return 122;
8914 }
8915 else
8916 {
8917 /* 33222222222211111111110000000000
8918 10987654321098765432109876543210
8919 xxxxxxxxxx1x0xx0xxxxxxxx111101xx
8920 mvni. */
8921 return 129;
8922 }
8923 }
8924 else
8925 {
8926 if (((word >> 29) & 0x1) == 0)
8927 {
8928 /* 33222222222211111111110000000000
8929 10987654321098765432109876543210
8930 xxxxxxxxxx1x1xx0xxxxxxxx111100xx
8931 orr. */
8932 return 123;
8933 }
8934 else
8935 {
8936 /* 33222222222211111111110000000000
8937 10987654321098765432109876543210
8938 xxxxxxxxxx1x1xx0xxxxxxxx111101xx
8939 bic. */
8940 return 130;
8941 }
8942 }
8943 }
8944 }
8945 else
8946 {
8947 if (((word >> 29) & 0x1) == 0)
8948 {
8949 if (((word >> 30) & 0x1) == 0)
8950 {
8951 if (((word >> 21) & 0x1) == 0)
8952 {
8953 /* 33222222222211111111110000000000
8954 10987654321098765432109876543210
8955 xxxxxxxxxxxxxxx0xxxxx0xx1111100x
8956 fmadd. */
8957 return 779;
8958 }
8959 else
8960 {
8961 /* 33222222222211111111110000000000
8962 10987654321098765432109876543210
8963 xxxxxxxxxxxxxxx0xxxxx1xx1111100x
8964 fnmadd. */
8965 return 783;
8966 }
8967 }
8968 else
8969 {
8970 if (((word >> 10) & 0x1) == 0)
8971 {
8972 if (((word >> 13) & 0x1) == 0)
8973 {
8974 if (((word >> 14) & 0x1) == 0)
8975 {
8976 /* 33222222222211111111110000000000
8977 10987654321098765432109876543210
8978 xxxxxxxxxx0xx000xxxxxxxx1111101x
8979 fmla. */
8980 return 408;
8981 }
8982 else
8983 {
8984 /* 33222222222211111111110000000000
8985 10987654321098765432109876543210
8986 xxxxxxxxxx0xx010xxxxxxxx1111101x
8987 fmls. */
8988 return 409;
8989 }
8990 }
8991 else
8992 {
8993 if (((word >> 14) & 0x1) == 0)
8994 {
8995 /* 33222222222211111111110000000000
8996 10987654321098765432109876543210
8997 xxxxxxxxxx0xx100xxxxxxxx1111101x
8998 sqdmlal. */
8999 return 403;
9000 }
9001 else
9002 {
9003 /* 33222222222211111111110000000000
9004 10987654321098765432109876543210
9005 xxxxxxxxxx0xx110xxxxxxxx1111101x
9006 sqdmlsl. */
9007 return 404;
9008 }
9009 }
9010 }
9011 else
9012 {
9013 if (((word >> 12) & 0x1) == 0)
9014 {
9015 if (((word >> 13) & 0x1) == 0)
9016 {
9017 /* 33222222222211111111110000000000
9018 10987654321098765432109876543210
9019 xxxxxxxxxx1x00x0xxxxxxxx1111101x
9020 sshr. */
9021 return 559;
9022 }
9023 else
9024 {
9025 /* 33222222222211111111110000000000
9026 10987654321098765432109876543210
9027 xxxxxxxxxx1x01x0xxxxxxxx1111101x
9028 srshr. */
9029 return 561;
9030 }
9031 }
9032 else
9033 {
9034 if (((word >> 13) & 0x1) == 0)
9035 {
9036 if (((word >> 14) & 0x1) == 0)
9037 {
9038 /* 33222222222211111111110000000000
9039 10987654321098765432109876543210
9040 xxxxxxxxxx1x1000xxxxxxxx1111101x
9041 ssra. */
9042 return 560;
9043 }
9044 else
9045 {
9046 /* 33222222222211111111110000000000
9047 10987654321098765432109876543210
9048 xxxxxxxxxx1x1010xxxxxxxx1111101x
9049 shl. */
9050 return 563;
9051 }
9052 }
9053 else
9054 {
9055 if (((word >> 14) & 0x1) == 0)
9056 {
9057 /* 33222222222211111111110000000000
9058 10987654321098765432109876543210
9059 xxxxxxxxxx1x1100xxxxxxxx1111101x
9060 srsra. */
9061 return 562;
9062 }
9063 else
9064 {
9065 /* 33222222222211111111110000000000
9066 10987654321098765432109876543210
9067 xxxxxxxxxx1x1110xxxxxxxx1111101x
9068 sqshl. */
9069 return 564;
9070 }
9071 }
9072 }
9073 }
9074 }
9075 }
9076 else
9077 {
9078 if (((word >> 12) & 0x1) == 0)
9079 {
9080 if (((word >> 13) & 0x1) == 0)
9081 {
9082 if (((word >> 14) & 0x1) == 0)
9083 {
9084 /* 33222222222211111111110000000000
9085 10987654321098765432109876543210
9086 xxxxxxxxxxxx0000xxxxxxxx111111xx
9087 ushr. */
9088 return 569;
9089 }
9090 else
9091 {
9092 /* 33222222222211111111110000000000
9093 10987654321098765432109876543210
9094 xxxxxxxxxxxx0010xxxxxxxx111111xx
9095 sri. */
9096 return 573;
9097 }
9098 }
9099 else
9100 {
9101 if (((word >> 14) & 0x1) == 0)
9102 {
9103 /* 33222222222211111111110000000000
9104 10987654321098765432109876543210
9105 xxxxxxxxxxxx0100xxxxxxxx111111xx
9106 urshr. */
9107 return 571;
9108 }
9109 else
9110 {
9111 /* 33222222222211111111110000000000
9112 10987654321098765432109876543210
9113 xxxxxxxxxxxx0110xxxxxxxx111111xx
9114 sqshlu. */
9115 return 575;
9116 }
9117 }
9118 }
9119 else
9120 {
9121 if (((word >> 13) & 0x1) == 0)
9122 {
9123 if (((word >> 14) & 0x1) == 0)
9124 {
9125 /* 33222222222211111111110000000000
9126 10987654321098765432109876543210
9127 xxxxxxxxxxxx1000xxxxxxxx111111xx
9128 usra. */
9129 return 570;
9130 }
9131 else
9132 {
9133 /* 33222222222211111111110000000000
9134 10987654321098765432109876543210
9135 xxxxxxxxxxxx1010xxxxxxxx111111xx
9136 sli. */
9137 return 574;
9138 }
9139 }
9140 else
9141 {
9142 if (((word >> 14) & 0x1) == 0)
9143 {
9144 /* 33222222222211111111110000000000
9145 10987654321098765432109876543210
9146 xxxxxxxxxxxx1100xxxxxxxx111111xx
9147 ursra. */
9148 return 572;
9149 }
9150 else
9151 {
9152 /* 33222222222211111111110000000000
9153 10987654321098765432109876543210
9154 xxxxxxxxxxxx1110xxxxxxxx111111xx
9155 uqshl. */
9156 return 576;
9157 }
9158 }
9159 }
9160 }
9161 }
9162 }
9163 else
9164 {
9165 if (((word >> 28) & 0x1) == 0)
9166 {
9167 if (((word >> 10) & 0x1) == 0)
9168 {
9169 if (((word >> 12) & 0x1) == 0)
9170 {
9171 if (((word >> 13) & 0x1) == 0)
9172 {
9173 if (((word >> 14) & 0x1) == 0)
9174 {
9175 /* 33222222222211111111110000000000
9176 10987654321098765432109876543210
9177 xxxxxxxxxx0x0001xxxxxxxx11110xxx
9178 mul. */
9179 return 100;
9180 }
9181 else
9182 {
9183 /* 33222222222211111111110000000000
9184 10987654321098765432109876543210
9185 xxxxxxxxxx0x0011xxxxxxxx11110xxx
9186 sqdmulh. */
9187 return 105;
9188 }
9189 }
9190 else
9191 {
9192 if (((word >> 29) & 0x1) == 0)
9193 {
9194 if (((word >> 30) & 0x1) == 0)
9195 {
9196 /* 33222222222211111111110000000000
9197 10987654321098765432109876543210
9198 xxxxxxxxxx0x01x1xxxxxxxx1111000x
9199 smull. */
9200 return 101;
9201 }
9202 else
9203 {
9204 /* 33222222222211111111110000000000
9205 10987654321098765432109876543210
9206 xxxxxxxxxx0x01x1xxxxxxxx1111001x
9207 smull2. */
9208 return 102;
9209 }
9210 }
9211 else
9212 {
9213 if (((word >> 30) & 0x1) == 0)
9214 {
9215 /* 33222222222211111111110000000000
9216 10987654321098765432109876543210
9217 xxxxxxxxxx0x01x1xxxxxxxx1111010x
9218 umull. */
9219 return 116;
9220 }
9221 else
9222 {
9223 /* 33222222222211111111110000000000
9224 10987654321098765432109876543210
9225 xxxxxxxxxx0x01x1xxxxxxxx1111011x
9226 umull2. */
9227 return 117;
9228 }
9229 }
9230 }
9231 }
9232 else
9233 {
9234 if (((word >> 13) & 0x1) == 0)
9235 {
9236 if (((word >> 14) & 0x1) == 0)
9237 {
9238 if (((word >> 29) & 0x1) == 0)
9239 {
9240 /* 33222222222211111111110000000000
9241 10987654321098765432109876543210
9242 xxxxxxxxxx0x1001xxxxxxxx111100xx
9243 fmul. */
9244 return 109;
9245 }
9246 else
9247 {
9248 /* 33222222222211111111110000000000
9249 10987654321098765432109876543210
9250 xxxxxxxxxx0x1001xxxxxxxx111101xx
9251 fmulx. */
9252 return 118;
9253 }
9254 }
9255 else
9256 {
9257 if (((word >> 29) & 0x1) == 0)
9258 {
9259 /* 33222222222211111111110000000000
9260 10987654321098765432109876543210
9261 xxxxxxxxxx0x1011xxxxxxxx111100xx
9262 sqrdmulh. */
9263 return 106;
9264 }
9265 else
9266 {
9267 /* 33222222222211111111110000000000
9268 10987654321098765432109876543210
9269 xxxxxxxxxx0x1011xxxxxxxx111101xx
9270 sqrdmlah. */
9271 return 119;
9272 }
9273 }
9274 }
9275 else
9276 {
9277 if (((word >> 14) & 0x1) == 0)
9278 {
9279 if (((word >> 30) & 0x1) == 0)
9280 {
9281 /* 33222222222211111111110000000000
9282 10987654321098765432109876543210
9283 xxxxxxxxxx0x1101xxxxxxxx11110x0x
9284 sqdmull. */
9285 return 103;
9286 }
9287 else
9288 {
9289 /* 33222222222211111111110000000000
9290 10987654321098765432109876543210
9291 xxxxxxxxxx0x1101xxxxxxxx11110x1x
9292 sqdmull2. */
9293 return 104;
9294 }
9295 }
9296 else
9297 {
9298 /* 33222222222211111111110000000000
9299 10987654321098765432109876543210
9300 xxxxxxxxxx0x1111xxxxxxxx11110xxx
9301 sqrdmlsh. */
9302 return 120;
9303 }
9304 }
9305 }
9306 }
9307 else
9308 {
9309 if (((word >> 11) & 0x1) == 0)
9310 {
9311 if (((word >> 14) & 0x1) == 0)
9312 {
9313 if (((word >> 12) & 0x1) == 0)
9314 {
9315 if (((word >> 29) & 0x1) == 0)
9316 {
9317 /* 33222222222211111111110000000000
9318 10987654321098765432109876543210
9319 xxxxxxxxxx100x01xxxxxxxx111100xx
9320 movi. */
9321 return 124;
9322 }
9323 else
9324 {
9325 /* 33222222222211111111110000000000
9326 10987654321098765432109876543210
9327 xxxxxxxxxx100x01xxxxxxxx111101xx
9328 mvni. */
9329 return 131;
9330 }
9331 }
9332 else
9333 {
9334 if (((word >> 29) & 0x1) == 0)
9335 {
9336 /* 33222222222211111111110000000000
9337 10987654321098765432109876543210
9338 xxxxxxxxxx101x01xxxxxxxx111100xx
9339 orr. */
9340 return 125;
9341 }
9342 else
9343 {
9344 /* 33222222222211111111110000000000
9345 10987654321098765432109876543210
9346 xxxxxxxxxx101x01xxxxxxxx111101xx
9347 bic. */
9348 return 132;
9349 }
9350 }
9351 }
9352 else
9353 {
9354 if (((word >> 13) & 0x1) == 0)
9355 {
9356 if (((word >> 29) & 0x1) == 0)
9357 {
9358 /* 33222222222211111111110000000000
9359 10987654321098765432109876543210
9360 xxxxxxxxxx10x011xxxxxxxx111100xx
9361 movi. */
9362 return 126;
9363 }
9364 else
9365 {
9366 /* 33222222222211111111110000000000
9367 10987654321098765432109876543210
9368 xxxxxxxxxx10x011xxxxxxxx111101xx
9369 mvni. */
9370 return 133;
9371 }
9372 }
9373 else
9374 {
9375 if (((word >> 12) & 0x1) == 0)
9376 {
9377 if (((word >> 29) & 0x1) == 0)
9378 {
9379 /* 33222222222211111111110000000000
9380 10987654321098765432109876543210
9381 xxxxxxxxxx100111xxxxxxxx111100xx
9382 movi. */
9383 return 127;
9384 }
9385 else
9386 {
9387 /* 33222222222211111111110000000000
9388 10987654321098765432109876543210
9389 xxxxxxxxxx100111xxxxxxxx111101xx
9390 movi. */
9391 return 134;
9392 }
9393 }
9394 else
9395 {
9396 if (((word >> 29) & 0x1) == 0)
9397 {
9398 /* 33222222222211111111110000000000
9399 10987654321098765432109876543210
9400 xxxxxxxxxx101111xxxxxxxx111100xx
9401 fmov. */
9402 return 128;
9403 }
9404 else
9405 {
9406 /* 33222222222211111111110000000000
9407 10987654321098765432109876543210
9408 xxxxxxxxxx101111xxxxxxxx111101xx
9409 fmov. */
9410 return 136;
9411 }
9412 }
9413 }
9414 }
9415 }
9416 else
9417 {
9418 if (((word >> 12) & 0x1) == 0)
9419 {
9420 if (((word >> 29) & 0x1) == 0)
9421 {
9422 if (((word >> 30) & 0x1) == 0)
9423 {
9424 /* 33222222222211111111110000000000
9425 10987654321098765432109876543210
9426 xxxxxxxxxx110xx1xxxxxxxx1111000x
9427 rshrn. */
9428 return 364;
9429 }
9430 else
9431 {
9432 /* 33222222222211111111110000000000
9433 10987654321098765432109876543210
9434 xxxxxxxxxx110xx1xxxxxxxx1111001x
9435 rshrn2. */
9436 return 365;
9437 }
9438 }
9439 else
9440 {
9441 if (((word >> 30) & 0x1) == 0)
9442 {
9443 /* 33222222222211111111110000000000
9444 10987654321098765432109876543210
9445 xxxxxxxxxx110xx1xxxxxxxx1111010x
9446 sqrshrun. */
9447 return 386;
9448 }
9449 else
9450 {
9451 /* 33222222222211111111110000000000
9452 10987654321098765432109876543210
9453 xxxxxxxxxx110xx1xxxxxxxx1111011x
9454 sqrshrun2. */
9455 return 387;
9456 }
9457 }
9458 }
9459 else
9460 {
9461 if (((word >> 13) & 0x1) == 0)
9462 {
9463 if (((word >> 29) & 0x1) == 0)
9464 {
9465 if (((word >> 30) & 0x1) == 0)
9466 {
9467 /* 33222222222211111111110000000000
9468 10987654321098765432109876543210
9469 xxxxxxxxxx1110x1xxxxxxxx1111000x
9470 sqrshrn. */
9471 return 368;
9472 }
9473 else
9474 {
9475 /* 33222222222211111111110000000000
9476 10987654321098765432109876543210
9477 xxxxxxxxxx1110x1xxxxxxxx1111001x
9478 sqrshrn2. */
9479 return 369;
9480 }
9481 }
9482 else
9483 {
9484 if (((word >> 30) & 0x1) == 0)
9485 {
9486 /* 33222222222211111111110000000000
9487 10987654321098765432109876543210
9488 xxxxxxxxxx1110x1xxxxxxxx1111010x
9489 uqrshrn. */
9490 return 390;
9491 }
9492 else
9493 {
9494 /* 33222222222211111111110000000000
9495 10987654321098765432109876543210
9496 xxxxxxxxxx1110x1xxxxxxxx1111011x
9497 uqrshrn2. */
9498 return 391;
9499 }
9500 }
9501 }
9502 else
9503 {
9504 if (((word >> 29) & 0x1) == 0)
9505 {
9506 /* 33222222222211111111110000000000
9507 10987654321098765432109876543210
9508 xxxxxxxxxx1111x1xxxxxxxx111100xx
9509 fcvtzs. */
9510 return 375;
9511 }
9512 else
9513 {
9514 /* 33222222222211111111110000000000
9515 10987654321098765432109876543210
9516 xxxxxxxxxx1111x1xxxxxxxx111101xx
9517 fcvtzu. */
9518 return 397;
9519 }
9520 }
9521 }
9522 }
9523 }
9524 }
9525 else
9526 {
9527 if (((word >> 29) & 0x1) == 0)
9528 {
9529 if (((word >> 30) & 0x1) == 0)
9530 {
9531 if (((word >> 21) & 0x1) == 0)
9532 {
9533 /* 33222222222211111111110000000000
9534 10987654321098765432109876543210
9535 xxxxxxxxxxxxxxx1xxxxx0xx1111100x
9536 fmsub. */
9537 return 781;
9538 }
9539 else
9540 {
9541 /* 33222222222211111111110000000000
9542 10987654321098765432109876543210
9543 xxxxxxxxxxxxxxx1xxxxx1xx1111100x
9544 fnmsub. */
9545 return 785;
9546 }
9547 }
9548 else
9549 {
9550 if (((word >> 10) & 0x1) == 0)
9551 {
9552 if (((word >> 12) & 0x1) == 0)
9553 {
9554 /* 33222222222211111111110000000000
9555 10987654321098765432109876543210
9556 xxxxxxxxxx0x0xx1xxxxxxxx1111101x
9557 sqdmulh. */
9558 return 406;
9559 }
9560 else
9561 {
9562 if (((word >> 13) & 0x1) == 0)
9563 {
9564 if (((word >> 14) & 0x1) == 0)
9565 {
9566 /* 33222222222211111111110000000000
9567 10987654321098765432109876543210
9568 xxxxxxxxxx0x1001xxxxxxxx1111101x
9569 fmul. */
9570 return 410;
9571 }
9572 else
9573 {
9574 /* 33222222222211111111110000000000
9575 10987654321098765432109876543210
9576 xxxxxxxxxx0x1011xxxxxxxx1111101x
9577 sqrdmulh. */
9578 return 407;
9579 }
9580 }
9581 else
9582 {
9583 /* 33222222222211111111110000000000
9584 10987654321098765432109876543210
9585 xxxxxxxxxx0x11x1xxxxxxxx1111101x
9586 sqdmull. */
9587 return 405;
9588 }
9589 }
9590 }
9591 else
9592 {
9593 if (((word >> 11) & 0x1) == 0)
9594 {
9595 if (((word >> 12) & 0x1) == 0)
9596 {
9597 /* 33222222222211111111110000000000
9598 10987654321098765432109876543210
9599 xxxxxxxxxx100xx1xxxxxxxx1111101x
9600 scvtf. */
9601 return 567;
9602 }
9603 else
9604 {
9605 /* 33222222222211111111110000000000
9606 10987654321098765432109876543210
9607 xxxxxxxxxx101xx1xxxxxxxx1111101x
9608 sqshrn. */
9609 return 565;
9610 }
9611 }
9612 else
9613 {
9614 if (((word >> 13) & 0x1) == 0)
9615 {
9616 /* 33222222222211111111110000000000
9617 10987654321098765432109876543210
9618 xxxxxxxxxx11x0x1xxxxxxxx1111101x
9619 sqrshrn. */
9620 return 566;
9621 }
9622 else
9623 {
9624 /* 33222222222211111111110000000000
9625 10987654321098765432109876543210
9626 xxxxxxxxxx11x1x1xxxxxxxx1111101x
9627 fcvtzs. */
9628 return 568;
9629 }
9630 }
9631 }
9632 }
9633 }
9634 else
9635 {
9636 if (((word >> 10) & 0x1) == 0)
9637 {
9638 if (((word >> 13) & 0x1) == 0)
9639 {
9640 if (((word >> 14) & 0x1) == 0)
9641 {
9642 /* 33222222222211111111110000000000
9643 10987654321098765432109876543210
9644 xxxxxxxxxx0xx001xxxxxxxx111111xx
9645 fmulx. */
9646 return 411;
9647 }
9648 else
9649 {
9650 /* 33222222222211111111110000000000
9651 10987654321098765432109876543210
9652 xxxxxxxxxx0xx011xxxxxxxx111111xx
9653 sqrdmlah. */
9654 return 412;
9655 }
9656 }
9657 else
9658 {
9659 /* 33222222222211111111110000000000
9660 10987654321098765432109876543210
9661 xxxxxxxxxx0xx1x1xxxxxxxx111111xx
9662 sqrdmlsh. */
9663 return 413;
9664 }
9665 }
9666 else
9667 {
9668 if (((word >> 11) & 0x1) == 0)
9669 {
9670 if (((word >> 12) & 0x1) == 0)
9671 {
9672 if (((word >> 13) & 0x1) == 0)
9673 {
9674 /* 33222222222211111111110000000000
9675 10987654321098765432109876543210
9676 xxxxxxxxxx1000x1xxxxxxxx111111xx
9677 sqshrun. */
9678 return 577;
9679 }
9680 else
9681 {
9682 /* 33222222222211111111110000000000
9683 10987654321098765432109876543210
9684 xxxxxxxxxx1001x1xxxxxxxx111111xx
9685 ucvtf. */
9686 return 581;
9687 }
9688 }
9689 else
9690 {
9691 /* 33222222222211111111110000000000
9692 10987654321098765432109876543210
9693 xxxxxxxxxx101xx1xxxxxxxx111111xx
9694 uqshrn. */
9695 return 579;
9696 }
9697 }
9698 else
9699 {
9700 if (((word >> 12) & 0x1) == 0)
9701 {
9702 /* 33222222222211111111110000000000
9703 10987654321098765432109876543210
9704 xxxxxxxxxx110xx1xxxxxxxx111111xx
9705 sqrshrun. */
9706 return 578;
9707 }
9708 else
9709 {
9710 if (((word >> 13) & 0x1) == 0)
9711 {
9712 /* 33222222222211111111110000000000
9713 10987654321098765432109876543210
9714 xxxxxxxxxx1110x1xxxxxxxx111111xx
9715 uqrshrn. */
9716 return 580;
9717 }
9718 else
9719 {
9720 /* 33222222222211111111110000000000
9721 10987654321098765432109876543210
9722 xxxxxxxxxx1111x1xxxxxxxx111111xx
9723 fcvtzu. */
9724 return 582;
9725 }
9726 }
9727 }
9728 }
9729 }
9730 }
9731 }
9732 }
9733 }
9734 }
9735 }
9736 }
9737
9738 /* Lookup opcode WORD in the opcode table. N.B. all alias
9739 opcodes are ignored here. */
9740
9741 const aarch64_opcode *
9742 aarch64_opcode_lookup (uint32_t word)
9743 {
9744 return aarch64_opcode_table + aarch64_opcode_lookup_1 (word);
9745 }
9746
9747 const aarch64_opcode *
9748 aarch64_find_next_opcode (const aarch64_opcode *opcode)
9749 {
9750 /* Use the index as the key to locate the next opcode. */
9751 int key = opcode - aarch64_opcode_table;
9752 int value;
9753 switch (key)
9754 {
9755 case 875: value = 879; break; /* stnp --> stp. */
9756 case 879: return NULL; /* stp --> NULL. */
9757 case 873: value = 874; break; /* stllrb --> stllrh. */
9758 case 874: return NULL; /* stllrh --> NULL. */
9759 case 876: value = 880; break; /* ldnp --> ldp. */
9760 case 880: return NULL; /* ldp --> NULL. */
9761 case 1091: value = 1092; break; /* msr --> hint. */
9762 case 1092: value = 1101; break; /* hint --> clrex. */
9763 case 1101: value = 1102; break; /* clrex --> dsb. */
9764 case 1102: value = 1103; break; /* dsb --> dmb. */
9765 case 1103: value = 1104; break; /* dmb --> isb. */
9766 case 1104: value = 1105; break; /* isb --> sys. */
9767 case 1105: value = 1110; break; /* sys --> msr. */
9768 case 1110: return NULL; /* msr --> NULL. */
9769 case 1111: value = 1112; break; /* sysl --> mrs. */
9770 case 1112: return NULL; /* mrs --> NULL. */
9771 case 414: value = 415; break; /* st4 --> st1. */
9772 case 415: value = 416; break; /* st1 --> st2. */
9773 case 416: value = 417; break; /* st2 --> st3. */
9774 case 417: return NULL; /* st3 --> NULL. */
9775 case 422: value = 423; break; /* st4 --> st1. */
9776 case 423: value = 424; break; /* st1 --> st2. */
9777 case 424: value = 425; break; /* st2 --> st3. */
9778 case 425: return NULL; /* st3 --> NULL. */
9779 case 418: value = 419; break; /* ld4 --> ld1. */
9780 case 419: value = 420; break; /* ld1 --> ld2. */
9781 case 420: value = 421; break; /* ld2 --> ld3. */
9782 case 421: return NULL; /* ld3 --> NULL. */
9783 case 434: value = 436; break; /* ld1 --> ld1r. */
9784 case 436: return NULL; /* ld1r --> NULL. */
9785 case 438: value = 440; break; /* ld2 --> ld2r. */
9786 case 440: return NULL; /* ld2r --> NULL. */
9787 case 435: value = 437; break; /* ld3 --> ld3r. */
9788 case 437: return NULL; /* ld3r --> NULL. */
9789 case 439: value = 441; break; /* ld4 --> ld4r. */
9790 case 441: return NULL; /* ld4r --> NULL. */
9791 case 426: value = 427; break; /* ld4 --> ld1. */
9792 case 427: value = 428; break; /* ld1 --> ld2. */
9793 case 428: value = 429; break; /* ld2 --> ld3. */
9794 case 429: return NULL; /* ld3 --> NULL. */
9795 case 446: value = 448; break; /* ld1 --> ld1r. */
9796 case 448: return NULL; /* ld1r --> NULL. */
9797 case 447: value = 449; break; /* ld3 --> ld3r. */
9798 case 449: return NULL; /* ld3r --> NULL. */
9799 case 450: value = 452; break; /* ld2 --> ld2r. */
9800 case 452: return NULL; /* ld2r --> NULL. */
9801 case 451: value = 453; break; /* ld4 --> ld4r. */
9802 case 453: return NULL; /* ld4r --> NULL. */
9803 case 692: value = 693; break; /* fcvtzs --> fcvtzs. */
9804 case 693: return NULL; /* fcvtzs --> NULL. */
9805 case 688: value = 689; break; /* scvtf --> scvtf. */
9806 case 689: return NULL; /* scvtf --> NULL. */
9807 case 694: value = 695; break; /* fcvtzu --> fcvtzu. */
9808 case 695: return NULL; /* fcvtzu --> NULL. */
9809 case 690: value = 691; break; /* ucvtf --> ucvtf. */
9810 case 691: return NULL; /* ucvtf --> NULL. */
9811 case 696: value = 697; break; /* fcvtns --> fcvtns. */
9812 case 697: return NULL; /* fcvtns --> NULL. */
9813 case 716: value = 717; break; /* fcvtms --> fcvtms. */
9814 case 717: return NULL; /* fcvtms --> NULL. */
9815 case 712: value = 713; break; /* fcvtps --> fcvtps. */
9816 case 713: return NULL; /* fcvtps --> NULL. */
9817 case 720: value = 721; break; /* fcvtzs --> fcvtzs. */
9818 case 721: return NULL; /* fcvtzs --> NULL. */
9819 case 704: value = 705; break; /* fcvtas --> fcvtas. */
9820 case 705: return NULL; /* fcvtas --> NULL. */
9821 case 700: value = 701; break; /* scvtf --> scvtf. */
9822 case 701: return NULL; /* scvtf --> NULL. */
9823 case 708: value = 709; break; /* fmov --> fmov. */
9824 case 709: return NULL; /* fmov --> NULL. */
9825 case 698: value = 699; break; /* fcvtnu --> fcvtnu. */
9826 case 699: return NULL; /* fcvtnu --> NULL. */
9827 case 718: value = 719; break; /* fcvtmu --> fcvtmu. */
9828 case 719: return NULL; /* fcvtmu --> NULL. */
9829 case 714: value = 715; break; /* fcvtpu --> fcvtpu. */
9830 case 715: return NULL; /* fcvtpu --> NULL. */
9831 case 722: value = 723; break; /* fcvtzu --> fcvtzu. */
9832 case 723: return NULL; /* fcvtzu --> NULL. */
9833 case 706: value = 707; break; /* fcvtau --> fcvtau. */
9834 case 707: return NULL; /* fcvtau --> NULL. */
9835 case 702: value = 703; break; /* ucvtf --> ucvtf. */
9836 case 703: return NULL; /* ucvtf --> NULL. */
9837 case 710: value = 711; break; /* fmov --> fmov. */
9838 case 711: return NULL; /* fmov --> NULL. */
9839 case 738: value = 739; break; /* fmov --> fmov. */
9840 case 739: return NULL; /* fmov --> NULL. */
9841 case 747: value = 748; break; /* frintn --> frintn. */
9842 case 748: return NULL; /* frintn --> NULL. */
9843 case 742: value = 743; break; /* fneg --> fneg. */
9844 case 743: return NULL; /* fneg --> NULL. */
9845 case 751: value = 752; break; /* frintm --> frintm. */
9846 case 752: return NULL; /* frintm --> NULL. */
9847 case 740: value = 741; break; /* fabs --> fabs. */
9848 case 741: return NULL; /* fabs --> NULL. */
9849 case 749: value = 750; break; /* frintp --> frintp. */
9850 case 750: return NULL; /* frintp --> NULL. */
9851 case 744: value = 745; break; /* fsqrt --> fsqrt. */
9852 case 745: return NULL; /* fsqrt --> NULL. */
9853 case 753: value = 754; break; /* frintz --> frintz. */
9854 case 754: return NULL; /* frintz --> NULL. */
9855 case 755: value = 756; break; /* frinta --> frinta. */
9856 case 756: return NULL; /* frinta --> NULL. */
9857 case 757: value = 758; break; /* frintx --> frintx. */
9858 case 758: return NULL; /* frintx --> NULL. */
9859 case 759: value = 760; break; /* frinti --> frinti. */
9860 case 760: return NULL; /* frinti --> NULL. */
9861 case 730: value = 731; break; /* fcmp --> fcmp. */
9862 case 731: return NULL; /* fcmp --> NULL. */
9863 case 732: value = 733; break; /* fcmpe --> fcmpe. */
9864 case 733: return NULL; /* fcmpe --> NULL. */
9865 case 734: value = 735; break; /* fcmp --> fcmp. */
9866 case 735: return NULL; /* fcmp --> NULL. */
9867 case 736: value = 737; break; /* fcmpe --> fcmpe. */
9868 case 737: return NULL; /* fcmpe --> NULL. */
9869 case 787: value = 788; break; /* fmov --> fmov. */
9870 case 788: return NULL; /* fmov --> NULL. */
9871 case 761: value = 762; break; /* fmul --> fmul. */
9872 case 762: return NULL; /* fmul --> NULL. */
9873 case 777: value = 778; break; /* fnmul --> fnmul. */
9874 case 778: return NULL; /* fnmul --> NULL. */
9875 case 769: value = 770; break; /* fmax --> fmax. */
9876 case 770: return NULL; /* fmax --> NULL. */
9877 case 765: value = 766; break; /* fadd --> fadd. */
9878 case 766: return NULL; /* fadd --> NULL. */
9879 case 773: value = 774; break; /* fmaxnm --> fmaxnm. */
9880 case 774: return NULL; /* fmaxnm --> NULL. */
9881 case 763: value = 764; break; /* fdiv --> fdiv. */
9882 case 764: return NULL; /* fdiv --> NULL. */
9883 case 771: value = 772; break; /* fmin --> fmin. */
9884 case 772: return NULL; /* fmin --> NULL. */
9885 case 767: value = 768; break; /* fsub --> fsub. */
9886 case 768: return NULL; /* fsub --> NULL. */
9887 case 775: value = 776; break; /* fminnm --> fminnm. */
9888 case 776: return NULL; /* fminnm --> NULL. */
9889 case 726: value = 727; break; /* fccmp --> fccmp. */
9890 case 727: return NULL; /* fccmp --> NULL. */
9891 case 728: value = 729; break; /* fccmpe --> fccmpe. */
9892 case 729: return NULL; /* fccmpe --> NULL. */
9893 case 789: value = 790; break; /* fcsel --> fcsel. */
9894 case 790: return NULL; /* fcsel --> NULL. */
9895 case 122: value = 356; break; /* movi --> sshr. */
9896 case 356: value = 358; break; /* sshr --> srshr. */
9897 case 358: return NULL; /* srshr --> NULL. */
9898 case 129: value = 376; break; /* mvni --> ushr. */
9899 case 376: value = 378; break; /* ushr --> urshr. */
9900 case 378: value = 380; break; /* urshr --> sri. */
9901 case 380: value = 382; break; /* sri --> sqshlu. */
9902 case 382: return NULL; /* sqshlu --> NULL. */
9903 case 123: value = 357; break; /* orr --> ssra. */
9904 case 357: value = 359; break; /* ssra --> srsra. */
9905 case 359: value = 360; break; /* srsra --> shl. */
9906 case 360: value = 361; break; /* shl --> sqshl. */
9907 case 361: return NULL; /* sqshl --> NULL. */
9908 case 130: value = 377; break; /* bic --> usra. */
9909 case 377: value = 379; break; /* usra --> ursra. */
9910 case 379: value = 381; break; /* ursra --> sli. */
9911 case 381: value = 383; break; /* sli --> uqshl. */
9912 case 383: return NULL; /* uqshl --> NULL. */
9913 case 779: value = 780; break; /* fmadd --> fmadd. */
9914 case 780: return NULL; /* fmadd --> NULL. */
9915 case 783: value = 784; break; /* fnmadd --> fnmadd. */
9916 case 784: return NULL; /* fnmadd --> NULL. */
9917 case 124: value = 362; break; /* movi --> shrn. */
9918 case 362: value = 363; break; /* shrn --> shrn2. */
9919 case 363: value = 370; break; /* shrn2 --> sshll. */
9920 case 370: value = 372; break; /* sshll --> sshll2. */
9921 case 372: return NULL; /* sshll2 --> NULL. */
9922 case 131: value = 384; break; /* mvni --> sqshrun. */
9923 case 384: value = 385; break; /* sqshrun --> sqshrun2. */
9924 case 385: value = 392; break; /* sqshrun2 --> ushll. */
9925 case 392: value = 394; break; /* ushll --> ushll2. */
9926 case 394: return NULL; /* ushll2 --> NULL. */
9927 case 125: value = 366; break; /* orr --> sqshrn. */
9928 case 366: value = 367; break; /* sqshrn --> sqshrn2. */
9929 case 367: return NULL; /* sqshrn2 --> NULL. */
9930 case 132: value = 388; break; /* bic --> uqshrn. */
9931 case 388: value = 389; break; /* uqshrn --> uqshrn2. */
9932 case 389: return NULL; /* uqshrn2 --> NULL. */
9933 case 127: value = 374; break; /* movi --> scvtf. */
9934 case 374: return NULL; /* scvtf --> NULL. */
9935 case 134: value = 135; break; /* movi --> movi. */
9936 case 135: value = 396; break; /* movi --> ucvtf. */
9937 case 396: return NULL; /* ucvtf --> NULL. */
9938 case 781: value = 782; break; /* fmsub --> fmsub. */
9939 case 782: return NULL; /* fmsub --> NULL. */
9940 case 785: value = 786; break; /* fnmsub --> fnmsub. */
9941 case 786: return NULL; /* fnmsub --> NULL. */
9942 default: return NULL;
9943 }
9944
9945 return aarch64_opcode_table + value;
9946 }
9947
9948 const aarch64_opcode *
9949 aarch64_find_alias_opcode (const aarch64_opcode *opcode)
9950 {
9951 /* Use the index as the key to locate the alias opcode. */
9952 int key = opcode - aarch64_opcode_table;
9953 int value;
9954 switch (key)
9955 {
9956 case 2: value = 3; break; /* sbc --> ngc. */
9957 case 4: value = 5; break; /* sbcs --> ngcs. */
9958 case 7: value = 8; break; /* adds --> cmn. */
9959 case 10: value = 11; break; /* subs --> cmp. */
9960 case 12: value = 13; break; /* add --> mov. */
9961 case 14: value = 15; break; /* adds --> cmn. */
9962 case 17: value = 18; break; /* subs --> cmp. */
9963 case 20: value = 21; break; /* adds --> cmn. */
9964 case 22: value = 23; break; /* sub --> neg. */
9965 case 24: value = 26; break; /* subs --> negs. */
9966 case 140: value = 141; break; /* umov --> mov. */
9967 case 142: value = 143; break; /* ins --> mov. */
9968 case 144: value = 145; break; /* ins --> mov. */
9969 case 226: value = 227; break; /* not --> mvn. */
9970 case 301: value = 302; break; /* orr --> mov. */
9971 case 370: value = 371; break; /* sshll --> sxtl. */
9972 case 372: value = 373; break; /* sshll2 --> sxtl2. */
9973 case 392: value = 393; break; /* ushll --> uxtl. */
9974 case 394: value = 395; break; /* ushll2 --> uxtl2. */
9975 case 509: value = 510; break; /* dup --> mov. */
9976 case 583: value = 588; break; /* sbfm --> sxtw. */
9977 case 590: value = 592; break; /* bfm --> bfc. */
9978 case 594: value = 598; break; /* ubfm --> uxth. */
9979 case 616: value = 618; break; /* csinc --> cset. */
9980 case 619: value = 621; break; /* csinv --> csetm. */
9981 case 622: value = 623; break; /* csneg --> cneg. */
9982 case 641: value = 641; break; /* rev --> rev. */
9983 case 648: value = 649; break; /* lslv --> lsl. */
9984 case 650: value = 651; break; /* lsrv --> lsr. */
9985 case 652: value = 653; break; /* asrv --> asr. */
9986 case 654: value = 655; break; /* rorv --> ror. */
9987 case 664: value = 665; break; /* madd --> mul. */
9988 case 666: value = 667; break; /* msub --> mneg. */
9989 case 668: value = 669; break; /* smaddl --> smull. */
9990 case 670: value = 671; break; /* smsubl --> smnegl. */
9991 case 673: value = 674; break; /* umaddl --> umull. */
9992 case 675: value = 676; break; /* umsubl --> umnegl. */
9993 case 686: value = 687; break; /* extr --> ror. */
9994 case 893: value = 894; break; /* and --> bic. */
9995 case 895: value = 896; break; /* orr --> mov. */
9996 case 898: value = 899; break; /* ands --> tst. */
9997 case 902: value = 904; break; /* orr --> uxtw. */
9998 case 905: value = 906; break; /* orn --> mvn. */
9999 case 909: value = 910; break; /* ands --> tst. */
10000 case 940: value = 1036; break; /* ldaddb --> staddb. */
10001 case 941: value = 1037; break; /* ldaddh --> staddh. */
10002 case 942: value = 1038; break; /* ldadd --> stadd. */
10003 case 944: value = 1039; break; /* ldaddlb --> staddlb. */
10004 case 947: value = 1040; break; /* ldaddlh --> staddlh. */
10005 case 950: value = 1041; break; /* ldaddl --> staddl. */
10006 case 952: value = 1042; break; /* ldclrb --> stclrb. */
10007 case 953: value = 1043; break; /* ldclrh --> stclrh. */
10008 case 954: value = 1044; break; /* ldclr --> stclr. */
10009 case 956: value = 1045; break; /* ldclrlb --> stclrlb. */
10010 case 959: value = 1046; break; /* ldclrlh --> stclrlh. */
10011 case 962: value = 1047; break; /* ldclrl --> stclrl. */
10012 case 964: value = 1048; break; /* ldeorb --> steorb. */
10013 case 965: value = 1049; break; /* ldeorh --> steorh. */
10014 case 966: value = 1050; break; /* ldeor --> steor. */
10015 case 968: value = 1051; break; /* ldeorlb --> steorlb. */
10016 case 971: value = 1052; break; /* ldeorlh --> steorlh. */
10017 case 974: value = 1053; break; /* ldeorl --> steorl. */
10018 case 976: value = 1054; break; /* ldsetb --> stsetb. */
10019 case 977: value = 1055; break; /* ldseth --> stseth. */
10020 case 978: value = 1056; break; /* ldset --> stset. */
10021 case 980: value = 1057; break; /* ldsetlb --> stsetlb. */
10022 case 983: value = 1058; break; /* ldsetlh --> stsetlh. */
10023 case 986: value = 1059; break; /* ldsetl --> stsetl. */
10024 case 988: value = 1060; break; /* ldsmaxb --> stsmaxb. */
10025 case 989: value = 1061; break; /* ldsmaxh --> stsmaxh. */
10026 case 990: value = 1062; break; /* ldsmax --> stsmax. */
10027 case 992: value = 1063; break; /* ldsmaxlb --> stsmaxlb. */
10028 case 995: value = 1064; break; /* ldsmaxlh --> stsmaxlh. */
10029 case 998: value = 1065; break; /* ldsmaxl --> stsmaxl. */
10030 case 1000: value = 1066; break; /* ldsminb --> stsminb. */
10031 case 1001: value = 1067; break; /* ldsminh --> stsminh. */
10032 case 1002: value = 1068; break; /* ldsmin --> stsmin. */
10033 case 1004: value = 1069; break; /* ldsminlb --> stsminlb. */
10034 case 1007: value = 1070; break; /* ldsminlh --> stsminlh. */
10035 case 1010: value = 1071; break; /* ldsminl --> stsminl. */
10036 case 1012: value = 1072; break; /* ldumaxb --> stumaxb. */
10037 case 1013: value = 1073; break; /* ldumaxh --> stumaxh. */
10038 case 1014: value = 1074; break; /* ldumax --> stumax. */
10039 case 1016: value = 1075; break; /* ldumaxlb --> stumaxlb. */
10040 case 1019: value = 1076; break; /* ldumaxlh --> stumaxlh. */
10041 case 1022: value = 1077; break; /* ldumaxl --> stumaxl. */
10042 case 1024: value = 1078; break; /* lduminb --> stuminb. */
10043 case 1025: value = 1079; break; /* lduminh --> stuminh. */
10044 case 1026: value = 1080; break; /* ldumin --> stumin. */
10045 case 1028: value = 1081; break; /* lduminlb --> stuminlb. */
10046 case 1031: value = 1082; break; /* lduminlh --> stuminlh. */
10047 case 1034: value = 1083; break; /* lduminl --> stuminl. */
10048 case 1084: value = 1085; break; /* movn --> mov. */
10049 case 1086: value = 1087; break; /* movz --> mov. */
10050 case 1092: value = 1100; break; /* hint --> psb. */
10051 case 1105: value = 1109; break; /* sys --> tlbi. */
10052 default: return NULL;
10053 }
10054
10055 return aarch64_opcode_table + value;
10056 }
10057
10058 const aarch64_opcode *
10059 aarch64_find_next_alias_opcode (const aarch64_opcode *opcode)
10060 {
10061 /* Use the index as the key to locate the next opcode. */
10062 int key = opcode - aarch64_opcode_table;
10063 int value;
10064 switch (key)
10065 {
10066 case 3: value = 2; break; /* ngc --> sbc. */
10067 case 5: value = 4; break; /* ngcs --> sbcs. */
10068 case 8: value = 7; break; /* cmn --> adds. */
10069 case 11: value = 10; break; /* cmp --> subs. */
10070 case 13: value = 12; break; /* mov --> add. */
10071 case 15: value = 14; break; /* cmn --> adds. */
10072 case 18: value = 17; break; /* cmp --> subs. */
10073 case 21: value = 20; break; /* cmn --> adds. */
10074 case 23: value = 22; break; /* neg --> sub. */
10075 case 26: value = 25; break; /* negs --> cmp. */
10076 case 25: value = 24; break; /* cmp --> subs. */
10077 case 141: value = 140; break; /* mov --> umov. */
10078 case 143: value = 142; break; /* mov --> ins. */
10079 case 145: value = 144; break; /* mov --> ins. */
10080 case 227: value = 226; break; /* mvn --> not. */
10081 case 302: value = 301; break; /* mov --> orr. */
10082 case 371: value = 370; break; /* sxtl --> sshll. */
10083 case 373: value = 372; break; /* sxtl2 --> sshll2. */
10084 case 393: value = 392; break; /* uxtl --> ushll. */
10085 case 395: value = 394; break; /* uxtl2 --> ushll2. */
10086 case 510: value = 509; break; /* mov --> dup. */
10087 case 588: value = 587; break; /* sxtw --> sxth. */
10088 case 587: value = 586; break; /* sxth --> sxtb. */
10089 case 586: value = 589; break; /* sxtb --> asr. */
10090 case 589: value = 585; break; /* asr --> sbfx. */
10091 case 585: value = 584; break; /* sbfx --> sbfiz. */
10092 case 584: value = 583; break; /* sbfiz --> sbfm. */
10093 case 592: value = 593; break; /* bfc --> bfxil. */
10094 case 593: value = 591; break; /* bfxil --> bfi. */
10095 case 591: value = 590; break; /* bfi --> bfm. */
10096 case 598: value = 597; break; /* uxth --> uxtb. */
10097 case 597: value = 600; break; /* uxtb --> lsr. */
10098 case 600: value = 599; break; /* lsr --> lsl. */
10099 case 599: value = 596; break; /* lsl --> ubfx. */
10100 case 596: value = 595; break; /* ubfx --> ubfiz. */
10101 case 595: value = 594; break; /* ubfiz --> ubfm. */
10102 case 618: value = 617; break; /* cset --> cinc. */
10103 case 617: value = 616; break; /* cinc --> csinc. */
10104 case 621: value = 620; break; /* csetm --> cinv. */
10105 case 620: value = 619; break; /* cinv --> csinv. */
10106 case 623: value = 622; break; /* cneg --> csneg. */
10107 case 641: value = 642; break; /* rev --> rev64. */
10108 case 649: value = 648; break; /* lsl --> lslv. */
10109 case 651: value = 650; break; /* lsr --> lsrv. */
10110 case 653: value = 652; break; /* asr --> asrv. */
10111 case 655: value = 654; break; /* ror --> rorv. */
10112 case 665: value = 664; break; /* mul --> madd. */
10113 case 667: value = 666; break; /* mneg --> msub. */
10114 case 669: value = 668; break; /* smull --> smaddl. */
10115 case 671: value = 670; break; /* smnegl --> smsubl. */
10116 case 674: value = 673; break; /* umull --> umaddl. */
10117 case 676: value = 675; break; /* umnegl --> umsubl. */
10118 case 687: value = 686; break; /* ror --> extr. */
10119 case 894: value = 893; break; /* bic --> and. */
10120 case 896: value = 895; break; /* mov --> orr. */
10121 case 899: value = 898; break; /* tst --> ands. */
10122 case 904: value = 903; break; /* uxtw --> mov. */
10123 case 903: value = 902; break; /* mov --> orr. */
10124 case 906: value = 905; break; /* mvn --> orn. */
10125 case 910: value = 909; break; /* tst --> ands. */
10126 case 1036: value = 940; break; /* staddb --> ldaddb. */
10127 case 1037: value = 941; break; /* staddh --> ldaddh. */
10128 case 1038: value = 942; break; /* stadd --> ldadd. */
10129 case 1039: value = 944; break; /* staddlb --> ldaddlb. */
10130 case 1040: value = 947; break; /* staddlh --> ldaddlh. */
10131 case 1041: value = 950; break; /* staddl --> ldaddl. */
10132 case 1042: value = 952; break; /* stclrb --> ldclrb. */
10133 case 1043: value = 953; break; /* stclrh --> ldclrh. */
10134 case 1044: value = 954; break; /* stclr --> ldclr. */
10135 case 1045: value = 956; break; /* stclrlb --> ldclrlb. */
10136 case 1046: value = 959; break; /* stclrlh --> ldclrlh. */
10137 case 1047: value = 962; break; /* stclrl --> ldclrl. */
10138 case 1048: value = 964; break; /* steorb --> ldeorb. */
10139 case 1049: value = 965; break; /* steorh --> ldeorh. */
10140 case 1050: value = 966; break; /* steor --> ldeor. */
10141 case 1051: value = 968; break; /* steorlb --> ldeorlb. */
10142 case 1052: value = 971; break; /* steorlh --> ldeorlh. */
10143 case 1053: value = 974; break; /* steorl --> ldeorl. */
10144 case 1054: value = 976; break; /* stsetb --> ldsetb. */
10145 case 1055: value = 977; break; /* stseth --> ldseth. */
10146 case 1056: value = 978; break; /* stset --> ldset. */
10147 case 1057: value = 980; break; /* stsetlb --> ldsetlb. */
10148 case 1058: value = 983; break; /* stsetlh --> ldsetlh. */
10149 case 1059: value = 986; break; /* stsetl --> ldsetl. */
10150 case 1060: value = 988; break; /* stsmaxb --> ldsmaxb. */
10151 case 1061: value = 989; break; /* stsmaxh --> ldsmaxh. */
10152 case 1062: value = 990; break; /* stsmax --> ldsmax. */
10153 case 1063: value = 992; break; /* stsmaxlb --> ldsmaxlb. */
10154 case 1064: value = 995; break; /* stsmaxlh --> ldsmaxlh. */
10155 case 1065: value = 998; break; /* stsmaxl --> ldsmaxl. */
10156 case 1066: value = 1000; break; /* stsminb --> ldsminb. */
10157 case 1067: value = 1001; break; /* stsminh --> ldsminh. */
10158 case 1068: value = 1002; break; /* stsmin --> ldsmin. */
10159 case 1069: value = 1004; break; /* stsminlb --> ldsminlb. */
10160 case 1070: value = 1007; break; /* stsminlh --> ldsminlh. */
10161 case 1071: value = 1010; break; /* stsminl --> ldsminl. */
10162 case 1072: value = 1012; break; /* stumaxb --> ldumaxb. */
10163 case 1073: value = 1013; break; /* stumaxh --> ldumaxh. */
10164 case 1074: value = 1014; break; /* stumax --> ldumax. */
10165 case 1075: value = 1016; break; /* stumaxlb --> ldumaxlb. */
10166 case 1076: value = 1019; break; /* stumaxlh --> ldumaxlh. */
10167 case 1077: value = 1022; break; /* stumaxl --> ldumaxl. */
10168 case 1078: value = 1024; break; /* stuminb --> lduminb. */
10169 case 1079: value = 1025; break; /* stuminh --> lduminh. */
10170 case 1080: value = 1026; break; /* stumin --> ldumin. */
10171 case 1081: value = 1028; break; /* stuminlb --> lduminlb. */
10172 case 1082: value = 1031; break; /* stuminlh --> lduminlh. */
10173 case 1083: value = 1034; break; /* stuminl --> lduminl. */
10174 case 1085: value = 1084; break; /* mov --> movn. */
10175 case 1087: value = 1086; break; /* mov --> movz. */
10176 case 1100: value = 1099; break; /* psb --> esb. */
10177 case 1099: value = 1098; break; /* esb --> sevl. */
10178 case 1098: value = 1097; break; /* sevl --> sev. */
10179 case 1097: value = 1096; break; /* sev --> wfi. */
10180 case 1096: value = 1095; break; /* wfi --> wfe. */
10181 case 1095: value = 1094; break; /* wfe --> yield. */
10182 case 1094: value = 1093; break; /* yield --> nop. */
10183 case 1093: value = 1092; break; /* nop --> hint. */
10184 case 1109: value = 1108; break; /* tlbi --> ic. */
10185 case 1108: value = 1107; break; /* ic --> dc. */
10186 case 1107: value = 1106; break; /* dc --> at. */
10187 case 1106: value = 1105; break; /* at --> sys. */
10188 default: return NULL;
10189 }
10190
10191 return aarch64_opcode_table + value;
10192 }
10193
10194 int
10195 aarch64_extract_operand (const aarch64_operand *self,
10196 aarch64_opnd_info *info,
10197 aarch64_insn code, const aarch64_inst *inst)
10198 {
10199 /* Use the index as the key. */
10200 int key = self - aarch64_operands;
10201 switch (key)
10202 {
10203 case 1:
10204 case 2:
10205 case 3:
10206 case 4:
10207 case 5:
10208 case 6:
10209 case 7:
10210 case 9:
10211 case 10:
10212 case 14:
10213 case 15:
10214 case 16:
10215 case 17:
10216 case 19:
10217 case 20:
10218 case 21:
10219 case 22:
10220 case 23:
10221 case 24:
10222 case 25:
10223 case 26:
10224 case 27:
10225 case 35:
10226 case 36:
10227 return aarch64_ext_regno (self, info, code, inst);
10228 case 8:
10229 return aarch64_ext_regrt_sysins (self, info, code, inst);
10230 case 11:
10231 return aarch64_ext_regno_pair (self, info, code, inst);
10232 case 12:
10233 return aarch64_ext_reg_extended (self, info, code, inst);
10234 case 13:
10235 return aarch64_ext_reg_shifted (self, info, code, inst);
10236 case 18:
10237 return aarch64_ext_ft (self, info, code, inst);
10238 case 28:
10239 case 29:
10240 case 30:
10241 return aarch64_ext_reglane (self, info, code, inst);
10242 case 31:
10243 return aarch64_ext_reglist (self, info, code, inst);
10244 case 32:
10245 return aarch64_ext_ldst_reglist (self, info, code, inst);
10246 case 33:
10247 return aarch64_ext_ldst_reglist_r (self, info, code, inst);
10248 case 34:
10249 return aarch64_ext_ldst_elemlist (self, info, code, inst);
10250 case 37:
10251 case 46:
10252 case 47:
10253 case 48:
10254 case 49:
10255 case 50:
10256 case 51:
10257 case 52:
10258 case 53:
10259 case 54:
10260 case 55:
10261 case 56:
10262 case 57:
10263 case 58:
10264 case 66:
10265 case 67:
10266 case 68:
10267 case 69:
10268 case 70:
10269 return aarch64_ext_imm (self, info, code, inst);
10270 case 38:
10271 case 39:
10272 return aarch64_ext_advsimd_imm_shift (self, info, code, inst);
10273 case 40:
10274 case 41:
10275 case 42:
10276 return aarch64_ext_advsimd_imm_modified (self, info, code, inst);
10277 case 43:
10278 return aarch64_ext_shll_imm (self, info, code, inst);
10279 case 59:
10280 return aarch64_ext_limm (self, info, code, inst);
10281 case 60:
10282 return aarch64_ext_aimm (self, info, code, inst);
10283 case 61:
10284 return aarch64_ext_imm_half (self, info, code, inst);
10285 case 62:
10286 return aarch64_ext_fbits (self, info, code, inst);
10287 case 64:
10288 case 65:
10289 return aarch64_ext_cond (self, info, code, inst);
10290 case 71:
10291 case 77:
10292 return aarch64_ext_addr_simple (self, info, code, inst);
10293 case 72:
10294 return aarch64_ext_addr_regoff (self, info, code, inst);
10295 case 73:
10296 case 74:
10297 case 75:
10298 return aarch64_ext_addr_simm (self, info, code, inst);
10299 case 76:
10300 return aarch64_ext_addr_uimm12 (self, info, code, inst);
10301 case 78:
10302 return aarch64_ext_simd_addr_post (self, info, code, inst);
10303 case 79:
10304 return aarch64_ext_sysreg (self, info, code, inst);
10305 case 80:
10306 return aarch64_ext_pstatefield (self, info, code, inst);
10307 case 81:
10308 case 82:
10309 case 83:
10310 case 84:
10311 return aarch64_ext_sysins_op (self, info, code, inst);
10312 case 85:
10313 case 86:
10314 return aarch64_ext_barrier (self, info, code, inst);
10315 case 87:
10316 return aarch64_ext_prfop (self, info, code, inst);
10317 case 88:
10318 return aarch64_ext_hint (self, info, code, inst);
10319 default: assert (0); abort ();
10320 }
10321 }
This page took 0.258886 seconds and 5 git commands to generate.