opcodes/
[binutils-gdb.git] / opcodes / aarch64-dis-2.c
blobcf508aed0ca5ae78add97845d45972f661a84311
1 /* This file is automatically generated by aarch64-gen. Do not edit! */
2 /* Copyright 2012 Free Software Foundation, Inc.
3 Contributed by ARM Ltd.
5 This file is part of the GNU opcodes library.
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.
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.
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/>. */
21 #include "sysdep.h"
22 #include "aarch64-dis.h"
24 /* Called by aarch64_opcode_lookup. */
26 static int
27 aarch64_opcode_lookup_1 (uint32_t word)
29 if (((word >> 26) & 0x1) == 0)
31 if (((word >> 25) & 0x1) == 0)
33 if (((word >> 27) & 0x1) == 0)
35 if (((word >> 24) & 0x1) == 0)
37 if (((word >> 31) & 0x1) == 0)
39 /* 33222222222211111111110000000000
40 10987654321098765432109876543210
41 xxxxxxxxxxxxxxxxxxxxxxxx0000xxx0
42 adr. */
43 return 769;
45 else
47 /* 33222222222211111111110000000000
48 10987654321098765432109876543210
49 xxxxxxxxxxxxxxxxxxxxxxxx0000xxx1
50 adrp. */
51 return 770;
54 else
56 if (((word >> 29) & 0x1) == 0)
58 if (((word >> 30) & 0x1) == 0)
60 /* 33222222222211111111110000000000
61 10987654321098765432109876543210
62 xxxxxxxxxxxxxxxxxxxxxxxx1000x00x
63 add. */
64 return 12;
66 else
68 /* 33222222222211111111110000000000
69 10987654321098765432109876543210
70 xxxxxxxxxxxxxxxxxxxxxxxx1000x01x
71 sub. */
72 return 16;
75 else
77 if (((word >> 30) & 0x1) == 0)
79 /* 33222222222211111111110000000000
80 10987654321098765432109876543210
81 xxxxxxxxxxxxxxxxxxxxxxxx1000x10x
82 adds. */
83 return 14;
85 else
87 /* 33222222222211111111110000000000
88 10987654321098765432109876543210
89 xxxxxxxxxxxxxxxxxxxxxxxx1000x11x
90 subs. */
91 return 17;
96 else
98 if (((word >> 28) & 0x1) == 0)
100 if (((word >> 22) & 0x1) == 0)
102 if (((word >> 23) & 0x1) == 0)
104 if (((word >> 29) & 0x1) == 0)
106 if (((word >> 15) & 0x1) == 0)
108 if (((word >> 21) & 0x1) == 0)
110 if (((word >> 31) & 0x1) == 0)
112 if (((word >> 30) & 0x1) == 0)
114 /* 33222222222211111111110000000000
115 10987654321098765432109876543210
116 xxxxxxxxxxxxxxx0xxxxx000x0010000
117 stxrb. */
118 return 705;
120 else
122 /* 33222222222211111111110000000000
123 10987654321098765432109876543210
124 xxxxxxxxxxxxxxx0xxxxx000x0010010
125 stxrh. */
126 return 711;
129 else
131 /* 33222222222211111111110000000000
132 10987654321098765432109876543210
133 xxxxxxxxxxxxxxx0xxxxx000x00100x1
134 stxr. */
135 return 717;
138 else
140 /* 33222222222211111111110000000000
141 10987654321098765432109876543210
142 xxxxxxxxxxxxxxx0xxxxx100x00100xx
143 stxp. */
144 return 719;
147 else
149 if (((word >> 21) & 0x1) == 0)
151 if (((word >> 31) & 0x1) == 0)
153 if (((word >> 30) & 0x1) == 0)
155 /* 33222222222211111111110000000000
156 10987654321098765432109876543210
157 xxxxxxxxxxxxxxx1xxxxx000x0010000
158 stlxrb. */
159 return 706;
161 else
163 /* 33222222222211111111110000000000
164 10987654321098765432109876543210
165 xxxxxxxxxxxxxxx1xxxxx000x0010010
166 stlxrh. */
167 return 712;
170 else
172 /* 33222222222211111111110000000000
173 10987654321098765432109876543210
174 xxxxxxxxxxxxxxx1xxxxx000x00100x1
175 stlxr. */
176 return 718;
179 else
181 /* 33222222222211111111110000000000
182 10987654321098765432109876543210
183 xxxxxxxxxxxxxxx1xxxxx100x00100xx
184 stlxp. */
185 return 720;
189 else
191 /* 33222222222211111111110000000000
192 10987654321098765432109876543210
193 xxxxxxxxxxxxxxxxxxxxxx00x00101xx
194 stnp. */
195 return 727;
198 else
200 if (((word >> 29) & 0x1) == 0)
202 if (((word >> 31) & 0x1) == 0)
204 if (((word >> 30) & 0x1) == 0)
206 /* 33222222222211111111110000000000
207 10987654321098765432109876543210
208 xxxxxxxxxxxxxxxxxxxxxx01x0010000
209 stlrb. */
210 return 709;
212 else
214 /* 33222222222211111111110000000000
215 10987654321098765432109876543210
216 xxxxxxxxxxxxxxxxxxxxxx01x0010010
217 stlrh. */
218 return 715;
221 else
223 /* 33222222222211111111110000000000
224 10987654321098765432109876543210
225 xxxxxxxxxxxxxxxxxxxxxx01x00100x1
226 stlr. */
227 return 725;
230 else
232 /* 33222222222211111111110000000000
233 10987654321098765432109876543210
234 xxxxxxxxxxxxxxxxxxxxxx01x00101xx
235 stp. */
236 return 736;
240 else
242 if (((word >> 23) & 0x1) == 0)
244 if (((word >> 29) & 0x1) == 0)
246 if (((word >> 15) & 0x1) == 0)
248 if (((word >> 21) & 0x1) == 0)
250 if (((word >> 31) & 0x1) == 0)
252 if (((word >> 30) & 0x1) == 0)
254 /* 33222222222211111111110000000000
255 10987654321098765432109876543210
256 xxxxxxxxxxxxxxx0xxxxx010x0010000
257 ldxrb. */
258 return 707;
260 else
262 /* 33222222222211111111110000000000
263 10987654321098765432109876543210
264 xxxxxxxxxxxxxxx0xxxxx010x0010010
265 ldxrh. */
266 return 713;
269 else
271 /* 33222222222211111111110000000000
272 10987654321098765432109876543210
273 xxxxxxxxxxxxxxx0xxxxx010x00100x1
274 ldxr. */
275 return 721;
278 else
280 /* 33222222222211111111110000000000
281 10987654321098765432109876543210
282 xxxxxxxxxxxxxxx0xxxxx110x00100xx
283 ldxp. */
284 return 723;
287 else
289 if (((word >> 21) & 0x1) == 0)
291 if (((word >> 31) & 0x1) == 0)
293 if (((word >> 30) & 0x1) == 0)
295 /* 33222222222211111111110000000000
296 10987654321098765432109876543210
297 xxxxxxxxxxxxxxx1xxxxx010x0010000
298 ldaxrb. */
299 return 708;
301 else
303 /* 33222222222211111111110000000000
304 10987654321098765432109876543210
305 xxxxxxxxxxxxxxx1xxxxx010x0010010
306 ldaxrh. */
307 return 714;
310 else
312 /* 33222222222211111111110000000000
313 10987654321098765432109876543210
314 xxxxxxxxxxxxxxx1xxxxx010x00100x1
315 ldaxr. */
316 return 722;
319 else
321 /* 33222222222211111111110000000000
322 10987654321098765432109876543210
323 xxxxxxxxxxxxxxx1xxxxx110x00100xx
324 ldaxp. */
325 return 724;
329 else
331 if (((word >> 30) & 0x1) == 0)
333 /* 33222222222211111111110000000000
334 10987654321098765432109876543210
335 xxxxxxxxxxxxxxxxxxxxxx10x001010x
336 ldnp. */
337 return 728;
339 else
341 /* 33222222222211111111110000000000
342 10987654321098765432109876543210
343 xxxxxxxxxxxxxxxxxxxxxx10x001011x
344 ldpsw. */
345 return 735;
349 else
351 if (((word >> 29) & 0x1) == 0)
353 if (((word >> 31) & 0x1) == 0)
355 if (((word >> 30) & 0x1) == 0)
357 /* 33222222222211111111110000000000
358 10987654321098765432109876543210
359 xxxxxxxxxxxxxxxxxxxxxx11x0010000
360 ldarb. */
361 return 710;
363 else
365 /* 33222222222211111111110000000000
366 10987654321098765432109876543210
367 xxxxxxxxxxxxxxxxxxxxxx11x0010010
368 ldarh. */
369 return 716;
372 else
374 /* 33222222222211111111110000000000
375 10987654321098765432109876543210
376 xxxxxxxxxxxxxxxxxxxxxx11x00100x1
377 ldar. */
378 return 726;
381 else
383 if (((word >> 30) & 0x1) == 0)
385 /* 33222222222211111111110000000000
386 10987654321098765432109876543210
387 xxxxxxxxxxxxxxxxxxxxxx11x001010x
388 ldp. */
389 return 737;
391 else
393 /* 33222222222211111111110000000000
394 10987654321098765432109876543210
395 xxxxxxxxxxxxxxxxxxxxxx11x001011x
396 ldpsw. */
397 return 740;
403 else
405 if (((word >> 24) & 0x1) == 0)
407 if (((word >> 29) & 0x1) == 0)
409 if (((word >> 31) & 0x1) == 0)
411 /* 33222222222211111111110000000000
412 10987654321098765432109876543210
413 xxxxxxxxxxxxxxxxxxxxxxxx000110x0
414 ldr. */
415 return 741;
417 else
419 if (((word >> 30) & 0x1) == 0)
421 /* 33222222222211111111110000000000
422 10987654321098765432109876543210
423 xxxxxxxxxxxxxxxxxxxxxxxx00011001
424 ldrsw. */
425 return 743;
427 else
429 /* 33222222222211111111110000000000
430 10987654321098765432109876543210
431 xxxxxxxxxxxxxxxxxxxxxxxx00011011
432 prfm. */
433 return 744;
437 else
439 if (((word >> 10) & 0x1) == 0)
441 if (((word >> 11) & 0x1) == 0)
443 if (((word >> 23) & 0x1) == 0)
445 if (((word >> 22) & 0x1) == 0)
447 if (((word >> 31) & 0x1) == 0)
449 if (((word >> 30) & 0x1) == 0)
451 /* 33222222222211111111110000000000
452 10987654321098765432109876543210
453 xxxxxxxxxx00xxxxxxxxxx0000011100
454 sturb. */
455 return 681;
457 else
459 /* 33222222222211111111110000000000
460 10987654321098765432109876543210
461 xxxxxxxxxx00xxxxxxxxxx0000011110
462 sturh. */
463 return 691;
466 else
468 /* 33222222222211111111110000000000
469 10987654321098765432109876543210
470 xxxxxxxxxx00xxxxxxxxxx00000111x1
471 stur. */
472 return 697;
475 else
477 if (((word >> 31) & 0x1) == 0)
479 if (((word >> 30) & 0x1) == 0)
481 /* 33222222222211111111110000000000
482 10987654321098765432109876543210
483 xxxxxxxxxx00xxxxxxxxxx1000011100
484 ldurb. */
485 return 682;
487 else
489 /* 33222222222211111111110000000000
490 10987654321098765432109876543210
491 xxxxxxxxxx00xxxxxxxxxx1000011110
492 ldurh. */
493 return 692;
496 else
498 /* 33222222222211111111110000000000
499 10987654321098765432109876543210
500 xxxxxxxxxx00xxxxxxxxxx10000111x1
501 ldur. */
502 return 698;
506 else
508 if (((word >> 30) & 0x1) == 0)
510 if (((word >> 31) & 0x1) == 0)
512 /* 33222222222211111111110000000000
513 10987654321098765432109876543210
514 xxxxxxxxxx00xxxxxxxxxxx100011100
515 ldursb. */
516 return 685;
518 else
520 /* 33222222222211111111110000000000
521 10987654321098765432109876543210
522 xxxxxxxxxx00xxxxxxxxxxx100011101
523 ldursw. */
524 return 701;
527 else
529 if (((word >> 31) & 0x1) == 0)
531 /* 33222222222211111111110000000000
532 10987654321098765432109876543210
533 xxxxxxxxxx00xxxxxxxxxxx100011110
534 ldursh. */
535 return 695;
537 else
539 /* 33222222222211111111110000000000
540 10987654321098765432109876543210
541 xxxxxxxxxx00xxxxxxxxxxx100011111
542 prfum. */
543 return 703;
548 else
550 if (((word >> 21) & 0x1) == 0)
552 if (((word >> 23) & 0x1) == 0)
554 if (((word >> 22) & 0x1) == 0)
556 if (((word >> 31) & 0x1) == 0)
558 if (((word >> 30) & 0x1) == 0)
560 /* 33222222222211111111110000000000
561 10987654321098765432109876543210
562 xxxxxxxxxx01xxxxxxxxx00000011100
563 sttrb. */
564 return 672;
566 else
568 /* 33222222222211111111110000000000
569 10987654321098765432109876543210
570 xxxxxxxxxx01xxxxxxxxx00000011110
571 sttrh. */
572 return 675;
575 else
577 /* 33222222222211111111110000000000
578 10987654321098765432109876543210
579 xxxxxxxxxx01xxxxxxxxx000000111x1
580 sttr. */
581 return 678;
584 else
586 if (((word >> 31) & 0x1) == 0)
588 if (((word >> 30) & 0x1) == 0)
590 /* 33222222222211111111110000000000
591 10987654321098765432109876543210
592 xxxxxxxxxx01xxxxxxxxx01000011100
593 ldtrb. */
594 return 673;
596 else
598 /* 33222222222211111111110000000000
599 10987654321098765432109876543210
600 xxxxxxxxxx01xxxxxxxxx01000011110
601 ldtrh. */
602 return 676;
605 else
607 /* 33222222222211111111110000000000
608 10987654321098765432109876543210
609 xxxxxxxxxx01xxxxxxxxx010000111x1
610 ldtr. */
611 return 679;
615 else
617 if (((word >> 30) & 0x1) == 0)
619 if (((word >> 31) & 0x1) == 0)
621 /* 33222222222211111111110000000000
622 10987654321098765432109876543210
623 xxxxxxxxxx01xxxxxxxxx0x100011100
624 ldtrsb. */
625 return 674;
627 else
629 /* 33222222222211111111110000000000
630 10987654321098765432109876543210
631 xxxxxxxxxx01xxxxxxxxx0x100011101
632 ldtrsw. */
633 return 680;
636 else
638 /* 33222222222211111111110000000000
639 10987654321098765432109876543210
640 xxxxxxxxxx01xxxxxxxxx0x10001111x
641 ldtrsh. */
642 return 677;
646 else
648 if (((word >> 23) & 0x1) == 0)
650 if (((word >> 22) & 0x1) == 0)
652 if (((word >> 31) & 0x1) == 0)
654 if (((word >> 30) & 0x1) == 0)
656 /* 33222222222211111111110000000000
657 10987654321098765432109876543210
658 xxxxxxxxxx01xxxxxxxxx10000011100
659 strb. */
660 return 660;
662 else
664 /* 33222222222211111111110000000000
665 10987654321098765432109876543210
666 xxxxxxxxxx01xxxxxxxxx10000011110
667 strh. */
668 return 665;
671 else
673 /* 33222222222211111111110000000000
674 10987654321098765432109876543210
675 xxxxxxxxxx01xxxxxxxxx100000111x1
676 str. */
677 return 668;
680 else
682 if (((word >> 31) & 0x1) == 0)
684 if (((word >> 30) & 0x1) == 0)
686 /* 33222222222211111111110000000000
687 10987654321098765432109876543210
688 xxxxxxxxxx01xxxxxxxxx11000011100
689 ldrb. */
690 return 661;
692 else
694 /* 33222222222211111111110000000000
695 10987654321098765432109876543210
696 xxxxxxxxxx01xxxxxxxxx11000011110
697 ldrh. */
698 return 666;
701 else
703 /* 33222222222211111111110000000000
704 10987654321098765432109876543210
705 xxxxxxxxxx01xxxxxxxxx110000111x1
706 ldr. */
707 return 669;
711 else
713 if (((word >> 30) & 0x1) == 0)
715 if (((word >> 31) & 0x1) == 0)
717 /* 33222222222211111111110000000000
718 10987654321098765432109876543210
719 xxxxxxxxxx01xxxxxxxxx1x100011100
720 ldrsb. */
721 return 662;
723 else
725 /* 33222222222211111111110000000000
726 10987654321098765432109876543210
727 xxxxxxxxxx01xxxxxxxxx1x100011101
728 ldrsw. */
729 return 670;
732 else
734 if (((word >> 31) & 0x1) == 0)
736 /* 33222222222211111111110000000000
737 10987654321098765432109876543210
738 xxxxxxxxxx01xxxxxxxxx1x100011110
739 ldrsh. */
740 return 667;
742 else
744 /* 33222222222211111111110000000000
745 10987654321098765432109876543210
746 xxxxxxxxxx01xxxxxxxxx1x100011111
747 prfm. */
748 return 671;
755 else
757 if (((word >> 23) & 0x1) == 0)
759 if (((word >> 22) & 0x1) == 0)
761 if (((word >> 31) & 0x1) == 0)
763 if (((word >> 30) & 0x1) == 0)
765 /* 33222222222211111111110000000000
766 10987654321098765432109876543210
767 xxxxxxxxxx1xxxxxxxxxxx0000011100
768 strb. */
769 return 637;
771 else
773 /* 33222222222211111111110000000000
774 10987654321098765432109876543210
775 xxxxxxxxxx1xxxxxxxxxxx0000011110
776 strh. */
777 return 642;
780 else
782 /* 33222222222211111111110000000000
783 10987654321098765432109876543210
784 xxxxxxxxxx1xxxxxxxxxxx00000111x1
785 str. */
786 return 645;
789 else
791 if (((word >> 31) & 0x1) == 0)
793 if (((word >> 30) & 0x1) == 0)
795 /* 33222222222211111111110000000000
796 10987654321098765432109876543210
797 xxxxxxxxxx1xxxxxxxxxxx1000011100
798 ldrb. */
799 return 638;
801 else
803 /* 33222222222211111111110000000000
804 10987654321098765432109876543210
805 xxxxxxxxxx1xxxxxxxxxxx1000011110
806 ldrh. */
807 return 643;
810 else
812 /* 33222222222211111111110000000000
813 10987654321098765432109876543210
814 xxxxxxxxxx1xxxxxxxxxxx10000111x1
815 ldr. */
816 return 646;
820 else
822 if (((word >> 30) & 0x1) == 0)
824 if (((word >> 31) & 0x1) == 0)
826 /* 33222222222211111111110000000000
827 10987654321098765432109876543210
828 xxxxxxxxxx1xxxxxxxxxxxx100011100
829 ldrsb. */
830 return 639;
832 else
834 /* 33222222222211111111110000000000
835 10987654321098765432109876543210
836 xxxxxxxxxx1xxxxxxxxxxxx100011101
837 ldrsw. */
838 return 647;
841 else
843 /* 33222222222211111111110000000000
844 10987654321098765432109876543210
845 xxxxxxxxxx1xxxxxxxxxxxx10001111x
846 ldrsh. */
847 return 644;
853 else
855 if (((word >> 23) & 0x1) == 0)
857 if (((word >> 22) & 0x1) == 0)
859 if (((word >> 31) & 0x1) == 0)
861 if (((word >> 30) & 0x1) == 0)
863 /* 33222222222211111111110000000000
864 10987654321098765432109876543210
865 xxxxxxxxxxxxxxxxxxxxxx0010011x00
866 strb. */
867 return 648;
869 else
871 /* 33222222222211111111110000000000
872 10987654321098765432109876543210
873 xxxxxxxxxxxxxxxxxxxxxx0010011x10
874 strh. */
875 return 653;
878 else
880 /* 33222222222211111111110000000000
881 10987654321098765432109876543210
882 xxxxxxxxxxxxxxxxxxxxxx0010011xx1
883 str. */
884 return 656;
887 else
889 if (((word >> 31) & 0x1) == 0)
891 if (((word >> 30) & 0x1) == 0)
893 /* 33222222222211111111110000000000
894 10987654321098765432109876543210
895 xxxxxxxxxxxxxxxxxxxxxx1010011x00
896 ldrb. */
897 return 649;
899 else
901 /* 33222222222211111111110000000000
902 10987654321098765432109876543210
903 xxxxxxxxxxxxxxxxxxxxxx1010011x10
904 ldrh. */
905 return 654;
908 else
910 /* 33222222222211111111110000000000
911 10987654321098765432109876543210
912 xxxxxxxxxxxxxxxxxxxxxx1010011xx1
913 ldr. */
914 return 657;
918 else
920 if (((word >> 30) & 0x1) == 0)
922 if (((word >> 31) & 0x1) == 0)
924 /* 33222222222211111111110000000000
925 10987654321098765432109876543210
926 xxxxxxxxxxxxxxxxxxxxxxx110011x00
927 ldrsb. */
928 return 650;
930 else
932 /* 33222222222211111111110000000000
933 10987654321098765432109876543210
934 xxxxxxxxxxxxxxxxxxxxxxx110011x01
935 ldrsw. */
936 return 658;
939 else
941 if (((word >> 31) & 0x1) == 0)
943 /* 33222222222211111111110000000000
944 10987654321098765432109876543210
945 xxxxxxxxxxxxxxxxxxxxxxx110011x10
946 ldrsh. */
947 return 655;
949 else
951 /* 33222222222211111111110000000000
952 10987654321098765432109876543210
953 xxxxxxxxxxxxxxxxxxxxxxx110011x11
954 prfm. */
955 return 659;
963 else
965 if (((word >> 24) & 0x1) == 0)
967 if (((word >> 27) & 0x1) == 0)
969 if (((word >> 23) & 0x1) == 0)
971 if (((word >> 29) & 0x1) == 0)
973 if (((word >> 30) & 0x1) == 0)
975 /* 33222222222211111111110000000000
976 10987654321098765432109876543210
977 xxxxxxxxxxxxxxxxxxxxxxx00100x00x
978 and. */
979 return 745;
981 else
983 /* 33222222222211111111110000000000
984 10987654321098765432109876543210
985 xxxxxxxxxxxxxxxxxxxxxxx00100x01x
986 eor. */
987 return 749;
990 else
992 if (((word >> 30) & 0x1) == 0)
994 /* 33222222222211111111110000000000
995 10987654321098765432109876543210
996 xxxxxxxxxxxxxxxxxxxxxxx00100x10x
997 orr. */
998 return 747;
1000 else
1002 /* 33222222222211111111110000000000
1003 10987654321098765432109876543210
1004 xxxxxxxxxxxxxxxxxxxxxxx00100x11x
1005 ands. */
1006 return 750;
1010 else
1012 if (((word >> 29) & 0x1) == 0)
1014 if (((word >> 30) & 0x1) == 0)
1016 /* 33222222222211111111110000000000
1017 10987654321098765432109876543210
1018 xxxxxxxxxxxxxxxxxxxxxxx10100x00x
1019 movn. */
1020 return 764;
1022 else
1024 /* 33222222222211111111110000000000
1025 10987654321098765432109876543210
1026 xxxxxxxxxxxxxxxxxxxxxxx10100x01x
1027 movz. */
1028 return 766;
1031 else
1033 /* 33222222222211111111110000000000
1034 10987654321098765432109876543210
1035 xxxxxxxxxxxxxxxxxxxxxxx10100x1xx
1036 movk. */
1037 return 768;
1041 else
1043 if (((word >> 21) & 0x1) == 0)
1045 if (((word >> 28) & 0x1) == 0)
1047 if (((word >> 29) & 0x1) == 0)
1049 if (((word >> 30) & 0x1) == 0)
1051 /* 33222222222211111111110000000000
1052 10987654321098765432109876543210
1053 xxxxxxxxxxxxxxxxxxxxx0xx0101000x
1054 and. */
1055 return 752;
1057 else
1059 /* 33222222222211111111110000000000
1060 10987654321098765432109876543210
1061 xxxxxxxxxxxxxxxxxxxxx0xx0101001x
1062 eor. */
1063 return 759;
1066 else
1068 if (((word >> 30) & 0x1) == 0)
1070 /* 33222222222211111111110000000000
1071 10987654321098765432109876543210
1072 xxxxxxxxxxxxxxxxxxxxx0xx0101010x
1073 orr. */
1074 return 754;
1076 else
1078 /* 33222222222211111111110000000000
1079 10987654321098765432109876543210
1080 xxxxxxxxxxxxxxxxxxxxx0xx0101011x
1081 ands. */
1082 return 761;
1086 else
1088 if (((word >> 10) & 0x1) == 0)
1090 if (((word >> 11) & 0x1) == 0)
1092 if (((word >> 22) & 0x1) == 0)
1094 if (((word >> 23) & 0x1) == 0)
1096 if (((word >> 29) & 0x1) == 0)
1098 if (((word >> 30) & 0x1) == 0)
1100 /* 33222222222211111111110000000000
1101 10987654321098765432109876543210
1102 xxxxxxxxxx00xxxxxxxxx0000101100x
1103 adc. */
1104 return 0;
1106 else
1108 /* 33222222222211111111110000000000
1109 10987654321098765432109876543210
1110 xxxxxxxxxx00xxxxxxxxx0000101101x
1111 sbc. */
1112 return 2;
1115 else
1117 if (((word >> 30) & 0x1) == 0)
1119 /* 33222222222211111111110000000000
1120 10987654321098765432109876543210
1121 xxxxxxxxxx00xxxxxxxxx0000101110x
1122 adcs. */
1123 return 1;
1125 else
1127 /* 33222222222211111111110000000000
1128 10987654321098765432109876543210
1129 xxxxxxxxxx00xxxxxxxxx0000101111x
1130 sbcs. */
1131 return 4;
1135 else
1137 if (((word >> 30) & 0x1) == 0)
1139 /* 33222222222211111111110000000000
1140 10987654321098765432109876543210
1141 xxxxxxxxxx00xxxxxxxxx00101011x0x
1142 csel. */
1143 return 520;
1145 else
1147 /* 33222222222211111111110000000000
1148 10987654321098765432109876543210
1149 xxxxxxxxxx00xxxxxxxxx00101011x1x
1150 csinv. */
1151 return 524;
1155 else
1157 if (((word >> 23) & 0x1) == 0)
1159 if (((word >> 30) & 0x1) == 0)
1161 /* 33222222222211111111110000000000
1162 10987654321098765432109876543210
1163 xxxxxxxxxx00xxxxxxxxx01001011x0x
1164 ccmn. */
1165 return 518;
1167 else
1169 /* 33222222222211111111110000000000
1170 10987654321098765432109876543210
1171 xxxxxxxxxx00xxxxxxxxx01001011x1x
1172 ccmp. */
1173 return 519;
1176 else
1178 if (((word >> 12) & 0x1) == 0)
1180 if (((word >> 13) & 0x1) == 0)
1182 /* 33222222222211111111110000000000
1183 10987654321098765432109876543210
1184 xxxxxxxxxx0000xxxxxxx01101011xxx
1185 rbit. */
1186 return 543;
1188 else
1190 /* 33222222222211111111110000000000
1191 10987654321098765432109876543210
1192 xxxxxxxxxx0001xxxxxxx01101011xxx
1193 lslv. */
1194 return 552;
1197 else
1199 /* 33222222222211111111110000000000
1200 10987654321098765432109876543210
1201 xxxxxxxxxx001xxxxxxxx01101011xxx
1202 clz. */
1203 return 547;
1208 else
1210 if (((word >> 23) & 0x1) == 0)
1212 if (((word >> 30) & 0x1) == 0)
1214 /* 33222222222211111111110000000000
1215 10987654321098765432109876543210
1216 xxxxxxxxxx01xxxxxxxxx0x001011x0x
1217 ccmn. */
1218 return 516;
1220 else
1222 /* 33222222222211111111110000000000
1223 10987654321098765432109876543210
1224 xxxxxxxxxx01xxxxxxxxx0x001011x1x
1225 ccmp. */
1226 return 517;
1229 else
1231 if (((word >> 13) & 0x1) == 0)
1233 if (((word >> 30) & 0x1) == 0)
1235 /* 33222222222211111111110000000000
1236 10987654321098765432109876543210
1237 xxxxxxxxxx01x0xxxxxxx0x101011x0x
1238 udiv. */
1239 return 550;
1241 else
1243 if (((word >> 31) & 0x1) == 0)
1245 /* 33222222222211111111110000000000
1246 10987654321098765432109876543210
1247 xxxxxxxxxx01x0xxxxxxx0x101011x10
1248 rev. */
1249 return 545;
1251 else
1253 /* 33222222222211111111110000000000
1254 10987654321098765432109876543210
1255 xxxxxxxxxx01x0xxxxxxx0x101011x11
1256 rev32. */
1257 return 549;
1261 else
1263 /* 33222222222211111111110000000000
1264 10987654321098765432109876543210
1265 xxxxxxxxxx01x1xxxxxxx0x101011xxx
1266 asrv. */
1267 return 556;
1272 else
1274 if (((word >> 11) & 0x1) == 0)
1276 if (((word >> 22) & 0x1) == 0)
1278 if (((word >> 30) & 0x1) == 0)
1280 /* 33222222222211111111110000000000
1281 10987654321098765432109876543210
1282 xxxxxxxxxx10xxxxxxxxx00x01011x0x
1283 csinc. */
1284 return 521;
1286 else
1288 /* 33222222222211111111110000000000
1289 10987654321098765432109876543210
1290 xxxxxxxxxx10xxxxxxxxx00x01011x1x
1291 csneg. */
1292 return 527;
1295 else
1297 if (((word >> 12) & 0x1) == 0)
1299 if (((word >> 13) & 0x1) == 0)
1301 /* 33222222222211111111110000000000
1302 10987654321098765432109876543210
1303 xxxxxxxxxx1000xxxxxxx01x01011xxx
1304 rev16. */
1305 return 544;
1307 else
1309 /* 33222222222211111111110000000000
1310 10987654321098765432109876543210
1311 xxxxxxxxxx1001xxxxxxx01x01011xxx
1312 lsrv. */
1313 return 554;
1316 else
1318 /* 33222222222211111111110000000000
1319 10987654321098765432109876543210
1320 xxxxxxxxxx101xxxxxxxx01x01011xxx
1321 cls. */
1322 return 548;
1326 else
1328 if (((word >> 13) & 0x1) == 0)
1330 if (((word >> 30) & 0x1) == 0)
1332 /* 33222222222211111111110000000000
1333 10987654321098765432109876543210
1334 xxxxxxxxxx11x0xxxxxxx0xx01011x0x
1335 sdiv. */
1336 return 551;
1338 else
1340 /* 33222222222211111111110000000000
1341 10987654321098765432109876543210
1342 xxxxxxxxxx11x0xxxxxxx0xx01011x1x
1343 rev. */
1344 return 546;
1347 else
1349 /* 33222222222211111111110000000000
1350 10987654321098765432109876543210
1351 xxxxxxxxxx11x1xxxxxxx0xx01011xxx
1352 rorv. */
1353 return 558;
1359 else
1361 if (((word >> 29) & 0x1) == 0)
1363 if (((word >> 30) & 0x1) == 0)
1365 /* 33222222222211111111110000000000
1366 10987654321098765432109876543210
1367 xxxxxxxxxxxxxxxxxxxxx1xx0101x00x
1368 bic. */
1369 return 753;
1371 else
1373 /* 33222222222211111111110000000000
1374 10987654321098765432109876543210
1375 xxxxxxxxxxxxxxxxxxxxx1xx0101x01x
1376 eon. */
1377 return 760;
1380 else
1382 if (((word >> 30) & 0x1) == 0)
1384 /* 33222222222211111111110000000000
1385 10987654321098765432109876543210
1386 xxxxxxxxxxxxxxxxxxxxx1xx0101x10x
1387 orn. */
1388 return 757;
1390 else
1392 /* 33222222222211111111110000000000
1393 10987654321098765432109876543210
1394 xxxxxxxxxxxxxxxxxxxxx1xx0101x11x
1395 bics. */
1396 return 763;
1402 else
1404 if (((word >> 27) & 0x1) == 0)
1406 if (((word >> 23) & 0x1) == 0)
1408 if (((word >> 29) & 0x1) == 0)
1410 if (((word >> 30) & 0x1) == 0)
1412 /* 33222222222211111111110000000000
1413 10987654321098765432109876543210
1414 xxxxxxxxxxxxxxxxxxxxxxx01100x00x
1415 sbfm. */
1416 return 489;
1418 else
1420 /* 33222222222211111111110000000000
1421 10987654321098765432109876543210
1422 xxxxxxxxxxxxxxxxxxxxxxx01100x01x
1423 ubfm. */
1424 return 499;
1427 else
1429 /* 33222222222211111111110000000000
1430 10987654321098765432109876543210
1431 xxxxxxxxxxxxxxxxxxxxxxx01100x1xx
1432 bfm. */
1433 return 496;
1436 else
1438 /* 33222222222211111111110000000000
1439 10987654321098765432109876543210
1440 xxxxxxxxxxxxxxxxxxxxxxx11100xxxx
1441 extr. */
1442 return 582;
1445 else
1447 if (((word >> 21) & 0x1) == 0)
1449 if (((word >> 28) & 0x1) == 0)
1451 if (((word >> 29) & 0x1) == 0)
1453 if (((word >> 30) & 0x1) == 0)
1455 /* 33222222222211111111110000000000
1456 10987654321098765432109876543210
1457 xxxxxxxxxxxxxxxxxxxxx0xx1101000x
1458 add. */
1459 return 19;
1461 else
1463 /* 33222222222211111111110000000000
1464 10987654321098765432109876543210
1465 xxxxxxxxxxxxxxxxxxxxx0xx1101001x
1466 sub. */
1467 return 22;
1470 else
1472 if (((word >> 30) & 0x1) == 0)
1474 /* 33222222222211111111110000000000
1475 10987654321098765432109876543210
1476 xxxxxxxxxxxxxxxxxxxxx0xx1101010x
1477 adds. */
1478 return 20;
1480 else
1482 /* 33222222222211111111110000000000
1483 10987654321098765432109876543210
1484 xxxxxxxxxxxxxxxxxxxxx0xx1101011x
1485 subs. */
1486 return 24;
1490 else
1492 if (((word >> 15) & 0x1) == 0)
1494 if (((word >> 22) & 0x1) == 0)
1496 /* 33222222222211111111110000000000
1497 10987654321098765432109876543210
1498 xxxxxxxxxxxxxxx0xxxxx00x11011xxx
1499 madd. */
1500 return 560;
1502 else
1504 if (((word >> 23) & 0x1) == 0)
1506 /* 33222222222211111111110000000000
1507 10987654321098765432109876543210
1508 xxxxxxxxxxxxxxx0xxxxx01011011xxx
1509 smulh. */
1510 return 568;
1512 else
1514 /* 33222222222211111111110000000000
1515 10987654321098765432109876543210
1516 xxxxxxxxxxxxxxx0xxxxx01111011xxx
1517 umulh. */
1518 return 573;
1522 else
1524 /* 33222222222211111111110000000000
1525 10987654321098765432109876543210
1526 xxxxxxxxxxxxxxx1xxxxx0xx11011xxx
1527 msub. */
1528 return 562;
1532 else
1534 if (((word >> 23) & 0x1) == 0)
1536 if (((word >> 28) & 0x1) == 0)
1538 if (((word >> 29) & 0x1) == 0)
1540 if (((word >> 30) & 0x1) == 0)
1542 /* 33222222222211111111110000000000
1543 10987654321098765432109876543210
1544 xxxxxxxxxxxxxxxxxxxxx1x01101000x
1545 add. */
1546 return 6;
1548 else
1550 /* 33222222222211111111110000000000
1551 10987654321098765432109876543210
1552 xxxxxxxxxxxxxxxxxxxxx1x01101001x
1553 sub. */
1554 return 9;
1557 else
1559 if (((word >> 30) & 0x1) == 0)
1561 /* 33222222222211111111110000000000
1562 10987654321098765432109876543210
1563 xxxxxxxxxxxxxxxxxxxxx1x01101010x
1564 adds. */
1565 return 7;
1567 else
1569 /* 33222222222211111111110000000000
1570 10987654321098765432109876543210
1571 xxxxxxxxxxxxxxxxxxxxx1x01101011x
1572 subs. */
1573 return 10;
1577 else
1579 if (((word >> 15) & 0x1) == 0)
1581 /* 33222222222211111111110000000000
1582 10987654321098765432109876543210
1583 xxxxxxxxxxxxxxx0xxxxx1x011011xxx
1584 smaddl. */
1585 return 564;
1587 else
1589 /* 33222222222211111111110000000000
1590 10987654321098765432109876543210
1591 xxxxxxxxxxxxxxx1xxxxx1x011011xxx
1592 smsubl. */
1593 return 566;
1597 else
1599 if (((word >> 15) & 0x1) == 0)
1601 /* 33222222222211111111110000000000
1602 10987654321098765432109876543210
1603 xxxxxxxxxxxxxxx0xxxxx1x11101xxxx
1604 umaddl. */
1605 return 569;
1607 else
1609 /* 33222222222211111111110000000000
1610 10987654321098765432109876543210
1611 xxxxxxxxxxxxxxx1xxxxx1x11101xxxx
1612 umsubl. */
1613 return 571;
1621 else
1623 if (((word >> 27) & 0x1) == 0)
1625 if (((word >> 29) & 0x1) == 0)
1627 if (((word >> 30) & 0x1) == 0)
1629 if (((word >> 31) & 0x1) == 0)
1631 /* 33222222222211111111110000000000
1632 10987654321098765432109876543210
1633 xxxxxxxxxxxxxxxxxxxxxxxxxx10x000
1634 b. */
1635 return 506;
1637 else
1639 /* 33222222222211111111110000000000
1640 10987654321098765432109876543210
1641 xxxxxxxxxxxxxxxxxxxxxxxxxx10x001
1642 bl. */
1643 return 507;
1646 else
1648 if (((word >> 24) & 0x1) == 0)
1650 if (((word >> 25) & 0x1) == 0)
1652 if (((word >> 31) & 0x1) == 0)
1654 /* 33222222222211111111110000000000
1655 10987654321098765432109876543210
1656 xxxxxxxxxxxxxxxxxxxxxxxx0010x010
1657 b.c. */
1658 return 515;
1660 else
1662 if (((word >> 0) & 0x1) == 0)
1664 if (((word >> 1) & 0x1) == 0)
1666 if (((word >> 21) & 0x1) == 0)
1668 /* 33222222222211111111110000000000
1669 10987654321098765432109876543210
1670 00xxxxxxxxxxxxxxxxxxx0xx0010x011
1671 hlt. */
1672 return 578;
1674 else
1676 /* 33222222222211111111110000000000
1677 10987654321098765432109876543210
1678 00xxxxxxxxxxxxxxxxxxx1xx0010x011
1679 brk. */
1680 return 577;
1683 else
1685 if (((word >> 21) & 0x1) == 0)
1687 /* 33222222222211111111110000000000
1688 10987654321098765432109876543210
1689 01xxxxxxxxxxxxxxxxxxx0xx0010x011
1690 hvc. */
1691 return 575;
1693 else
1695 /* 33222222222211111111110000000000
1696 10987654321098765432109876543210
1697 01xxxxxxxxxxxxxxxxxxx1xx0010x011
1698 dcps2. */
1699 return 580;
1703 else
1705 if (((word >> 1) & 0x1) == 0)
1707 if (((word >> 21) & 0x1) == 0)
1709 /* 33222222222211111111110000000000
1710 10987654321098765432109876543210
1711 10xxxxxxxxxxxxxxxxxxx0xx0010x011
1712 svc. */
1713 return 574;
1715 else
1717 /* 33222222222211111111110000000000
1718 10987654321098765432109876543210
1719 10xxxxxxxxxxxxxxxxxxx1xx0010x011
1720 dcps1. */
1721 return 579;
1724 else
1726 if (((word >> 21) & 0x1) == 0)
1728 /* 33222222222211111111110000000000
1729 10987654321098765432109876543210
1730 11xxxxxxxxxxxxxxxxxxx0xx0010x011
1731 smc. */
1732 return 576;
1734 else
1736 /* 33222222222211111111110000000000
1737 10987654321098765432109876543210
1738 11xxxxxxxxxxxxxxxxxxx1xx0010x011
1739 dcps3. */
1740 return 581;
1746 else
1748 if (((word >> 21) & 0x1) == 0)
1750 if (((word >> 22) & 0x1) == 0)
1752 if (((word >> 23) & 0x1) == 0)
1754 /* 33222222222211111111110000000000
1755 10987654321098765432109876543210
1756 xxxxxxxxxxxxxxxxxxxxx0000110x01x
1757 br. */
1758 return 508;
1760 else
1762 /* 33222222222211111111110000000000
1763 10987654321098765432109876543210
1764 xxxxxxxxxxxxxxxxxxxxx0010110x01x
1765 eret. */
1766 return 511;
1769 else
1771 /* 33222222222211111111110000000000
1772 10987654321098765432109876543210
1773 xxxxxxxxxxxxxxxxxxxxx01x0110x01x
1774 ret. */
1775 return 510;
1778 else
1780 if (((word >> 23) & 0x1) == 0)
1782 /* 33222222222211111111110000000000
1783 10987654321098765432109876543210
1784 xxxxxxxxxxxxxxxxxxxxx1x00110x01x
1785 blr. */
1786 return 509;
1788 else
1790 /* 33222222222211111111110000000000
1791 10987654321098765432109876543210
1792 xxxxxxxxxxxxxxxxxxxxx1x10110x01x
1793 drps. */
1794 return 512;
1799 else
1801 if (((word >> 20) & 0x1) == 0)
1803 if (((word >> 19) & 0x1) == 0)
1805 if (((word >> 12) & 0x1) == 0)
1807 if (((word >> 13) & 0x1) == 0)
1809 /* 33222222222211111111110000000000
1810 10987654321098765432109876543210
1811 xxxxxxxxxxxx00xxxxx00xxx1x10x01x
1812 msr. */
1813 return 771;
1815 else
1817 /* 33222222222211111111110000000000
1818 10987654321098765432109876543210
1819 xxxxxxxxxxxx01xxxxx00xxx1x10x01x
1820 hint. */
1821 return 772;
1824 else
1826 if (((word >> 5) & 0x1) == 0)
1828 if (((word >> 6) & 0x1) == 0)
1830 /* 33222222222211111111110000000000
1831 10987654321098765432109876543210
1832 xxxxx00xxxxx1xxxxxx00xxx1x10x01x
1833 dsb. */
1834 return 780;
1836 else
1838 if (((word >> 7) & 0x1) == 0)
1840 /* 33222222222211111111110000000000
1841 10987654321098765432109876543210
1842 xxxxx010xxxx1xxxxxx00xxx1x10x01x
1843 clrex. */
1844 return 779;
1846 else
1848 /* 33222222222211111111110000000000
1849 10987654321098765432109876543210
1850 xxxxx011xxxx1xxxxxx00xxx1x10x01x
1851 isb. */
1852 return 782;
1856 else
1858 /* 33222222222211111111110000000000
1859 10987654321098765432109876543210
1860 xxxxx1xxxxxx1xxxxxx00xxx1x10x01x
1861 dmb. */
1862 return 781;
1866 else
1868 if (((word >> 21) & 0x1) == 0)
1870 /* 33222222222211111111110000000000
1871 10987654321098765432109876543210
1872 xxxxxxxxxxxxxxxxxxx100xx1x10x01x
1873 sys. */
1874 return 783;
1876 else
1878 /* 33222222222211111111110000000000
1879 10987654321098765432109876543210
1880 xxxxxxxxxxxxxxxxxxx101xx1x10x01x
1881 sysl. */
1882 return 789;
1886 else
1888 if (((word >> 21) & 0x1) == 0)
1890 /* 33222222222211111111110000000000
1891 10987654321098765432109876543210
1892 xxxxxxxxxxxxxxxxxxxx10xx1x10x01x
1893 msr. */
1894 return 788;
1896 else
1898 /* 33222222222211111111110000000000
1899 10987654321098765432109876543210
1900 xxxxxxxxxxxxxxxxxxxx11xx1x10x01x
1901 mrs. */
1902 return 790;
1908 else
1910 if (((word >> 24) & 0x1) == 0)
1912 if (((word >> 25) & 0x1) == 0)
1914 /* 33222222222211111111110000000000
1915 10987654321098765432109876543210
1916 xxxxxxxxxxxxxxxxxxxxxxxx0010x1xx
1917 cbz. */
1918 return 513;
1920 else
1922 /* 33222222222211111111110000000000
1923 10987654321098765432109876543210
1924 xxxxxxxxxxxxxxxxxxxxxxxx0110x1xx
1925 tbz. */
1926 return 791;
1929 else
1931 if (((word >> 25) & 0x1) == 0)
1933 /* 33222222222211111111110000000000
1934 10987654321098765432109876543210
1935 xxxxxxxxxxxxxxxxxxxxxxxx1010x1xx
1936 cbnz. */
1937 return 514;
1939 else
1941 /* 33222222222211111111110000000000
1942 10987654321098765432109876543210
1943 xxxxxxxxxxxxxxxxxxxxxxxx1110x1xx
1944 tbnz. */
1945 return 792;
1950 else
1952 if (((word >> 25) & 0x1) == 0)
1954 if (((word >> 28) & 0x1) == 0)
1956 if (((word >> 22) & 0x1) == 0)
1958 if (((word >> 23) & 0x1) == 0)
1960 if (((word >> 24) & 0x1) == 0)
1962 if (((word >> 29) & 0x1) == 0)
1964 /* 33222222222211111111110000000000
1965 10987654321098765432109876543210
1966 xxxxxxxxxxxxxxxxxxxxxx00001100xx
1967 st4. */
1968 return 351;
1970 else
1972 /* 33222222222211111111110000000000
1973 10987654321098765432109876543210
1974 xxxxxxxxxxxxxxxxxxxxxx00001101xx
1975 stnp. */
1976 return 729;
1979 else
1981 if (((word >> 29) & 0x1) == 0)
1983 if (((word >> 13) & 0x1) == 0)
1985 if (((word >> 21) & 0x1) == 0)
1987 /* 33222222222211111111110000000000
1988 10987654321098765432109876543210
1989 xxxxxxxxxxxxx0xxxxxxx000101100xx
1990 st1. */
1991 return 367;
1993 else
1995 /* 33222222222211111111110000000000
1996 10987654321098765432109876543210
1997 xxxxxxxxxxxxx0xxxxxxx100101100xx
1998 st2. */
1999 return 369;
2002 else
2004 if (((word >> 21) & 0x1) == 0)
2006 /* 33222222222211111111110000000000
2007 10987654321098765432109876543210
2008 xxxxxxxxxxxxx1xxxxxxx000101100xx
2009 st3. */
2010 return 368;
2012 else
2014 /* 33222222222211111111110000000000
2015 10987654321098765432109876543210
2016 xxxxxxxxxxxxx1xxxxxxx100101100xx
2017 st4. */
2018 return 370;
2022 else
2024 /* 33222222222211111111110000000000
2025 10987654321098765432109876543210
2026 xxxxxxxxxxxxxxxxxxxxxx00101101xx
2027 stp. */
2028 return 733;
2032 else
2034 if (((word >> 29) & 0x1) == 0)
2036 if (((word >> 21) & 0x1) == 0)
2038 if (((word >> 24) & 0x1) == 0)
2040 /* 33222222222211111111110000000000
2041 10987654321098765432109876543210
2042 xxxxxxxxxxxxxxxxxxxxx001001100xx
2043 st4. */
2044 return 359;
2046 else
2048 if (((word >> 13) & 0x1) == 0)
2050 /* 33222222222211111111110000000000
2051 10987654321098765432109876543210
2052 xxxxxxxxxxxxx0xxxxxxx001101100xx
2053 st1. */
2054 return 379;
2056 else
2058 /* 33222222222211111111110000000000
2059 10987654321098765432109876543210
2060 xxxxxxxxxxxxx1xxxxxxx001101100xx
2061 st3. */
2062 return 380;
2066 else
2068 if (((word >> 13) & 0x1) == 0)
2070 /* 33222222222211111111110000000000
2071 10987654321098765432109876543210
2072 xxxxxxxxxxxxx0xxxxxxx101x01100xx
2073 st2. */
2074 return 381;
2076 else
2078 /* 33222222222211111111110000000000
2079 10987654321098765432109876543210
2080 xxxxxxxxxxxxx1xxxxxxx101x01100xx
2081 st4. */
2082 return 382;
2086 else
2088 /* 33222222222211111111110000000000
2089 10987654321098765432109876543210
2090 xxxxxxxxxxxxxxxxxxxxxx01x01101xx
2091 stp. */
2092 return 738;
2096 else
2098 if (((word >> 23) & 0x1) == 0)
2100 if (((word >> 24) & 0x1) == 0)
2102 if (((word >> 29) & 0x1) == 0)
2104 /* 33222222222211111111110000000000
2105 10987654321098765432109876543210
2106 xxxxxxxxxxxxxxxxxxxxxx10001100xx
2107 ld4. */
2108 return 355;
2110 else
2112 /* 33222222222211111111110000000000
2113 10987654321098765432109876543210
2114 xxxxxxxxxxxxxxxxxxxxxx10001101xx
2115 ldnp. */
2116 return 730;
2119 else
2121 if (((word >> 29) & 0x1) == 0)
2123 if (((word >> 13) & 0x1) == 0)
2125 if (((word >> 21) & 0x1) == 0)
2127 /* 33222222222211111111110000000000
2128 10987654321098765432109876543210
2129 xxxxxxxxxxxxx0xxxxxxx010101100xx
2130 ld1. */
2131 return 371;
2133 else
2135 /* 33222222222211111111110000000000
2136 10987654321098765432109876543210
2137 xxxxxxxxxxxxx0xxxxxxx110101100xx
2138 ld2. */
2139 return 375;
2142 else
2144 if (((word >> 21) & 0x1) == 0)
2146 /* 33222222222211111111110000000000
2147 10987654321098765432109876543210
2148 xxxxxxxxxxxxx1xxxxxxx010101100xx
2149 ld3. */
2150 return 372;
2152 else
2154 /* 33222222222211111111110000000000
2155 10987654321098765432109876543210
2156 xxxxxxxxxxxxx1xxxxxxx110101100xx
2157 ld4. */
2158 return 376;
2162 else
2164 /* 33222222222211111111110000000000
2165 10987654321098765432109876543210
2166 xxxxxxxxxxxxxxxxxxxxxx10101101xx
2167 ldp. */
2168 return 734;
2172 else
2174 if (((word >> 29) & 0x1) == 0)
2176 if (((word >> 21) & 0x1) == 0)
2178 if (((word >> 24) & 0x1) == 0)
2180 /* 33222222222211111111110000000000
2181 10987654321098765432109876543210
2182 xxxxxxxxxxxxxxxxxxxxx011001100xx
2183 ld4. */
2184 return 363;
2186 else
2188 if (((word >> 13) & 0x1) == 0)
2190 /* 33222222222211111111110000000000
2191 10987654321098765432109876543210
2192 xxxxxxxxxxxxx0xxxxxxx011101100xx
2193 ld1. */
2194 return 383;
2196 else
2198 /* 33222222222211111111110000000000
2199 10987654321098765432109876543210
2200 xxxxxxxxxxxxx1xxxxxxx011101100xx
2201 ld3. */
2202 return 384;
2206 else
2208 if (((word >> 13) & 0x1) == 0)
2210 /* 33222222222211111111110000000000
2211 10987654321098765432109876543210
2212 xxxxxxxxxxxxx0xxxxxxx111x01100xx
2213 ld2. */
2214 return 387;
2216 else
2218 /* 33222222222211111111110000000000
2219 10987654321098765432109876543210
2220 xxxxxxxxxxxxx1xxxxxxx111x01100xx
2221 ld4. */
2222 return 388;
2226 else
2228 /* 33222222222211111111110000000000
2229 10987654321098765432109876543210
2230 xxxxxxxxxxxxxxxxxxxxxx11x01101xx
2231 ldp. */
2232 return 739;
2237 else
2239 if (((word >> 24) & 0x1) == 0)
2241 if (((word >> 29) & 0x1) == 0)
2243 /* 33222222222211111111110000000000
2244 10987654321098765432109876543210
2245 xxxxxxxxxxxxxxxxxxxxxxxx001110xx
2246 ldr. */
2247 return 742;
2249 else
2251 if (((word >> 10) & 0x1) == 0)
2253 if (((word >> 11) & 0x1) == 0)
2255 if (((word >> 22) & 0x1) == 0)
2257 /* 33222222222211111111110000000000
2258 10987654321098765432109876543210
2259 xxxxxxxxxx00xxxxxxxxxx0x001111xx
2260 stur. */
2261 return 687;
2263 else
2265 /* 33222222222211111111110000000000
2266 10987654321098765432109876543210
2267 xxxxxxxxxx00xxxxxxxxxx1x001111xx
2268 ldur. */
2269 return 688;
2272 else
2274 if (((word >> 22) & 0x1) == 0)
2276 /* 33222222222211111111110000000000
2277 10987654321098765432109876543210
2278 xxxxxxxxxx01xxxxxxxxxx0x001111xx
2279 str. */
2280 return 663;
2282 else
2284 /* 33222222222211111111110000000000
2285 10987654321098765432109876543210
2286 xxxxxxxxxx01xxxxxxxxxx1x001111xx
2287 ldr. */
2288 return 664;
2292 else
2294 if (((word >> 22) & 0x1) == 0)
2296 /* 33222222222211111111110000000000
2297 10987654321098765432109876543210
2298 xxxxxxxxxx1xxxxxxxxxxx0x001111xx
2299 str. */
2300 return 640;
2302 else
2304 /* 33222222222211111111110000000000
2305 10987654321098765432109876543210
2306 xxxxxxxxxx1xxxxxxxxxxx1x001111xx
2307 ldr. */
2308 return 641;
2313 else
2315 if (((word >> 22) & 0x1) == 0)
2317 /* 33222222222211111111110000000000
2318 10987654321098765432109876543210
2319 xxxxxxxxxxxxxxxxxxxxxx0x10111xxx
2320 str. */
2321 return 651;
2323 else
2325 /* 33222222222211111111110000000000
2326 10987654321098765432109876543210
2327 xxxxxxxxxxxxxxxxxxxxxx1x10111xxx
2328 ldr. */
2329 return 652;
2334 else
2336 if (((word >> 24) & 0x1) == 0)
2338 if (((word >> 21) & 0x1) == 0)
2340 if (((word >> 28) & 0x1) == 0)
2342 if (((word >> 10) & 0x1) == 0)
2344 if (((word >> 29) & 0x1) == 0)
2346 if (((word >> 11) & 0x1) == 0)
2348 if (((word >> 12) & 0x1) == 0)
2350 /* 33222222222211111111110000000000
2351 10987654321098765432109876543210
2352 xxxxxxxxxx000xxxxxxxx0xx011100xx
2353 tbl. */
2354 return 337;
2356 else
2358 /* 33222222222211111111110000000000
2359 10987654321098765432109876543210
2360 xxxxxxxxxx001xxxxxxxx0xx011100xx
2361 tbx. */
2362 return 338;
2365 else
2367 if (((word >> 12) & 0x1) == 0)
2369 if (((word >> 14) & 0x1) == 0)
2371 /* 33222222222211111111110000000000
2372 10987654321098765432109876543210
2373 xxxxxxxxxx010x0xxxxxx0xx011100xx
2374 trn1. */
2375 return 216;
2377 else
2379 /* 33222222222211111111110000000000
2380 10987654321098765432109876543210
2381 xxxxxxxxxx010x1xxxxxx0xx011100xx
2382 trn2. */
2383 return 219;
2386 else
2388 if (((word >> 13) & 0x1) == 0)
2390 if (((word >> 14) & 0x1) == 0)
2392 /* 33222222222211111111110000000000
2393 10987654321098765432109876543210
2394 xxxxxxxxxx01100xxxxxx0xx011100xx
2395 uzp1. */
2396 return 215;
2398 else
2400 /* 33222222222211111111110000000000
2401 10987654321098765432109876543210
2402 xxxxxxxxxx01101xxxxxx0xx011100xx
2403 uzp2. */
2404 return 218;
2407 else
2409 if (((word >> 14) & 0x1) == 0)
2411 /* 33222222222211111111110000000000
2412 10987654321098765432109876543210
2413 xxxxxxxxxx01110xxxxxx0xx011100xx
2414 zip1. */
2415 return 217;
2417 else
2419 /* 33222222222211111111110000000000
2420 10987654321098765432109876543210
2421 xxxxxxxxxx01111xxxxxx0xx011100xx
2422 zip2. */
2423 return 220;
2429 else
2431 /* 33222222222211111111110000000000
2432 10987654321098765432109876543210
2433 xxxxxxxxxx0xxxxxxxxxx0xx011101xx
2434 ext. */
2435 return 119;
2438 else
2440 if (((word >> 29) & 0x1) == 0)
2442 if (((word >> 11) & 0x1) == 0)
2444 /* 33222222222211111111110000000000
2445 10987654321098765432109876543210
2446 xxxxxxxxxx10xxxxxxxxx0xx011100xx
2447 dup. */
2448 return 135;
2450 else
2452 if (((word >> 12) & 0x1) == 0)
2454 if (((word >> 13) & 0x1) == 0)
2456 /* 33222222222211111111110000000000
2457 10987654321098765432109876543210
2458 xxxxxxxxxx1100xxxxxxx0xx011100xx
2459 dup. */
2460 return 136;
2462 else
2464 /* 33222222222211111111110000000000
2465 10987654321098765432109876543210
2466 xxxxxxxxxx1101xxxxxxx0xx011100xx
2467 smov. */
2468 return 137;
2471 else
2473 if (((word >> 13) & 0x1) == 0)
2475 /* 33222222222211111111110000000000
2476 10987654321098765432109876543210
2477 xxxxxxxxxx1110xxxxxxx0xx011100xx
2478 ins. */
2479 return 140;
2481 else
2483 /* 33222222222211111111110000000000
2484 10987654321098765432109876543210
2485 xxxxxxxxxx1111xxxxxxx0xx011100xx
2486 umov. */
2487 return 138;
2492 else
2494 /* 33222222222211111111110000000000
2495 10987654321098765432109876543210
2496 xxxxxxxxxx1xxxxxxxxxx0xx011101xx
2497 ins. */
2498 return 142;
2502 else
2504 if (((word >> 30) & 0x1) == 0)
2506 if (((word >> 16) & 0x1) == 0)
2508 if (((word >> 17) & 0x1) == 0)
2510 /* 33222222222211111111110000000000
2511 10987654321098765432109876543210
2512 xxxxxxxxxxxxxxxx00xxx0xx01111x0x
2513 fcvtzs. */
2514 return 586;
2516 else
2518 /* 33222222222211111111110000000000
2519 10987654321098765432109876543210
2520 xxxxxxxxxxxxxxxx01xxx0xx01111x0x
2521 scvtf. */
2522 return 584;
2525 else
2527 if (((word >> 17) & 0x1) == 0)
2529 /* 33222222222211111111110000000000
2530 10987654321098765432109876543210
2531 xxxxxxxxxxxxxxxx10xxx0xx01111x0x
2532 fcvtzu. */
2533 return 587;
2535 else
2537 /* 33222222222211111111110000000000
2538 10987654321098765432109876543210
2539 xxxxxxxxxxxxxxxx11xxx0xx01111x0x
2540 ucvtf. */
2541 return 585;
2545 else
2547 if (((word >> 10) & 0x1) == 0)
2549 if (((word >> 12) & 0x1) == 0)
2551 if (((word >> 13) & 0x1) == 0)
2553 if (((word >> 14) & 0x1) == 0)
2555 /* 33222222222211111111110000000000
2556 10987654321098765432109876543210
2557 xxxxxxxxxx0x000xxxxxx0xx01111x1x
2558 sha1c. */
2559 return 536;
2561 else
2563 /* 33222222222211111111110000000000
2564 10987654321098765432109876543210
2565 xxxxxxxxxx0x001xxxxxx0xx01111x1x
2566 sha256h. */
2567 return 540;
2570 else
2572 if (((word >> 14) & 0x1) == 0)
2574 /* 33222222222211111111110000000000
2575 10987654321098765432109876543210
2576 xxxxxxxxxx0x010xxxxxx0xx01111x1x
2577 sha1m. */
2578 return 538;
2580 else
2582 /* 33222222222211111111110000000000
2583 10987654321098765432109876543210
2584 xxxxxxxxxx0x011xxxxxx0xx01111x1x
2585 sha256su1. */
2586 return 542;
2590 else
2592 if (((word >> 13) & 0x1) == 0)
2594 if (((word >> 14) & 0x1) == 0)
2596 /* 33222222222211111111110000000000
2597 10987654321098765432109876543210
2598 xxxxxxxxxx0x100xxxxxx0xx01111x1x
2599 sha1p. */
2600 return 537;
2602 else
2604 /* 33222222222211111111110000000000
2605 10987654321098765432109876543210
2606 xxxxxxxxxx0x101xxxxxx0xx01111x1x
2607 sha256h2. */
2608 return 541;
2611 else
2613 /* 33222222222211111111110000000000
2614 10987654321098765432109876543210
2615 xxxxxxxxxx0x11xxxxxxx0xx01111x1x
2616 sha1su0. */
2617 return 539;
2621 else
2623 /* 33222222222211111111110000000000
2624 10987654321098765432109876543210
2625 xxxxxxxxxx1xxxxxxxxxx0xx01111x1x
2626 dup. */
2627 return 426;
2632 else
2634 if (((word >> 10) & 0x1) == 0)
2636 if (((word >> 11) & 0x1) == 0)
2638 if (((word >> 12) & 0x1) == 0)
2640 if (((word >> 13) & 0x1) == 0)
2642 if (((word >> 14) & 0x1) == 0)
2644 if (((word >> 15) & 0x1) == 0)
2646 if (((word >> 28) & 0x1) == 0)
2648 if (((word >> 29) & 0x1) == 0)
2650 if (((word >> 30) & 0x1) == 0)
2652 /* 33222222222211111111110000000000
2653 10987654321098765432109876543210
2654 xxxxxxxxxx000000xxxxx1xx0111000x
2655 saddl. */
2656 return 38;
2658 else
2660 /* 33222222222211111111110000000000
2661 10987654321098765432109876543210
2662 xxxxxxxxxx000000xxxxx1xx0111001x
2663 saddl2. */
2664 return 39;
2667 else
2669 if (((word >> 30) & 0x1) == 0)
2671 /* 33222222222211111111110000000000
2672 10987654321098765432109876543210
2673 xxxxxxxxxx000000xxxxx1xx0111010x
2674 uaddl. */
2675 return 70;
2677 else
2679 /* 33222222222211111111110000000000
2680 10987654321098765432109876543210
2681 xxxxxxxxxx000000xxxxx1xx0111011x
2682 uaddl2. */
2683 return 71;
2687 else
2689 if (((word >> 16) & 0x1) == 0)
2691 if (((word >> 17) & 0x1) == 0)
2693 if (((word >> 18) & 0x1) == 0)
2695 if (((word >> 19) & 0x1) == 0)
2697 if (((word >> 20) & 0x1) == 0)
2699 /* 33222222222211111111110000000000
2700 10987654321098765432109876543210
2701 xxxxxxxxxx000000000001xx01111xxx
2702 fcvtns. */
2703 return 588;
2705 else
2707 /* 33222222222211111111110000000000
2708 10987654321098765432109876543210
2709 xxxxxxxxxx000000000011xx01111xxx
2710 fcvtms. */
2711 return 598;
2714 else
2716 if (((word >> 20) & 0x1) == 0)
2718 /* 33222222222211111111110000000000
2719 10987654321098765432109876543210
2720 xxxxxxxxxx000000000101xx01111xxx
2721 fcvtps. */
2722 return 596;
2724 else
2726 /* 33222222222211111111110000000000
2727 10987654321098765432109876543210
2728 xxxxxxxxxx000000000111xx01111xxx
2729 fcvtzs. */
2730 return 600;
2734 else
2736 /* 33222222222211111111110000000000
2737 10987654321098765432109876543210
2738 xxxxxxxxxx000000001xx1xx01111xxx
2739 fcvtas. */
2740 return 592;
2743 else
2745 if (((word >> 18) & 0x1) == 0)
2747 /* 33222222222211111111110000000000
2748 10987654321098765432109876543210
2749 xxxxxxxxxx000000010xx1xx01111xxx
2750 scvtf. */
2751 return 590;
2753 else
2755 if (((word >> 19) & 0x1) == 0)
2757 /* 33222222222211111111110000000000
2758 10987654321098765432109876543210
2759 xxxxxxxxxx0000000110x1xx01111xxx
2760 fmov. */
2761 return 594;
2763 else
2765 /* 33222222222211111111110000000000
2766 10987654321098765432109876543210
2767 xxxxxxxxxx0000000111x1xx01111xxx
2768 fmov. */
2769 return 602;
2774 else
2776 if (((word >> 17) & 0x1) == 0)
2778 if (((word >> 18) & 0x1) == 0)
2780 if (((word >> 19) & 0x1) == 0)
2782 if (((word >> 20) & 0x1) == 0)
2784 /* 33222222222211111111110000000000
2785 10987654321098765432109876543210
2786 xxxxxxxxxx000000100001xx01111xxx
2787 fcvtnu. */
2788 return 589;
2790 else
2792 /* 33222222222211111111110000000000
2793 10987654321098765432109876543210
2794 xxxxxxxxxx000000100011xx01111xxx
2795 fcvtmu. */
2796 return 599;
2799 else
2801 if (((word >> 20) & 0x1) == 0)
2803 /* 33222222222211111111110000000000
2804 10987654321098765432109876543210
2805 xxxxxxxxxx000000100101xx01111xxx
2806 fcvtpu. */
2807 return 597;
2809 else
2811 /* 33222222222211111111110000000000
2812 10987654321098765432109876543210
2813 xxxxxxxxxx000000100111xx01111xxx
2814 fcvtzu. */
2815 return 601;
2819 else
2821 /* 33222222222211111111110000000000
2822 10987654321098765432109876543210
2823 xxxxxxxxxx000000101xx1xx01111xxx
2824 fcvtau. */
2825 return 593;
2828 else
2830 if (((word >> 18) & 0x1) == 0)
2832 /* 33222222222211111111110000000000
2833 10987654321098765432109876543210
2834 xxxxxxxxxx000000110xx1xx01111xxx
2835 ucvtf. */
2836 return 591;
2838 else
2840 if (((word >> 19) & 0x1) == 0)
2842 /* 33222222222211111111110000000000
2843 10987654321098765432109876543210
2844 xxxxxxxxxx0000001110x1xx01111xxx
2845 fmov. */
2846 return 595;
2848 else
2850 /* 33222222222211111111110000000000
2851 10987654321098765432109876543210
2852 xxxxxxxxxx0000001111x1xx01111xxx
2853 fmov. */
2854 return 603;
2861 else
2863 if (((word >> 29) & 0x1) == 0)
2865 if (((word >> 30) & 0x1) == 0)
2867 /* 33222222222211111111110000000000
2868 10987654321098765432109876543210
2869 xxxxxxxxxx000001xxxxx1xx0111x00x
2870 smlal. */
2871 return 54;
2873 else
2875 /* 33222222222211111111110000000000
2876 10987654321098765432109876543210
2877 xxxxxxxxxx000001xxxxx1xx0111x01x
2878 smlal2. */
2879 return 55;
2882 else
2884 if (((word >> 30) & 0x1) == 0)
2886 /* 33222222222211111111110000000000
2887 10987654321098765432109876543210
2888 xxxxxxxxxx000001xxxxx1xx0111x10x
2889 umlal. */
2890 return 86;
2892 else
2894 /* 33222222222211111111110000000000
2895 10987654321098765432109876543210
2896 xxxxxxxxxx000001xxxxx1xx0111x11x
2897 umlal2. */
2898 return 87;
2903 else
2905 if (((word >> 28) & 0x1) == 0)
2907 if (((word >> 15) & 0x1) == 0)
2909 if (((word >> 29) & 0x1) == 0)
2911 if (((word >> 30) & 0x1) == 0)
2913 /* 33222222222211111111110000000000
2914 10987654321098765432109876543210
2915 xxxxxxxxxx000010xxxxx1xx0111000x
2916 addhn. */
2917 return 46;
2919 else
2921 /* 33222222222211111111110000000000
2922 10987654321098765432109876543210
2923 xxxxxxxxxx000010xxxxx1xx0111001x
2924 addhn2. */
2925 return 47;
2928 else
2930 if (((word >> 30) & 0x1) == 0)
2932 /* 33222222222211111111110000000000
2933 10987654321098765432109876543210
2934 xxxxxxxxxx000010xxxxx1xx0111010x
2935 raddhn. */
2936 return 78;
2938 else
2940 /* 33222222222211111111110000000000
2941 10987654321098765432109876543210
2942 xxxxxxxxxx000010xxxxx1xx0111011x
2943 raddhn2. */
2944 return 79;
2948 else
2950 if (((word >> 29) & 0x1) == 0)
2952 if (((word >> 30) & 0x1) == 0)
2954 /* 33222222222211111111110000000000
2955 10987654321098765432109876543210
2956 xxxxxxxxxx000011xxxxx1xx0111000x
2957 smull. */
2958 return 62;
2960 else
2962 /* 33222222222211111111110000000000
2963 10987654321098765432109876543210
2964 xxxxxxxxxx000011xxxxx1xx0111001x
2965 smull2. */
2966 return 63;
2969 else
2971 if (((word >> 30) & 0x1) == 0)
2973 /* 33222222222211111111110000000000
2974 10987654321098765432109876543210
2975 xxxxxxxxxx000011xxxxx1xx0111010x
2976 umull. */
2977 return 90;
2979 else
2981 /* 33222222222211111111110000000000
2982 10987654321098765432109876543210
2983 xxxxxxxxxx000011xxxxx1xx0111011x
2984 umull2. */
2985 return 91;
2990 else
2992 if (((word >> 17) & 0x1) == 0)
2994 if (((word >> 15) & 0x1) == 0)
2996 if (((word >> 16) & 0x1) == 0)
2998 if (((word >> 18) & 0x1) == 0)
3000 /* 33222222222211111111110000000000
3001 10987654321098765432109876543210
3002 xxxxxxxxxx000010000xx1xx01111xxx
3003 fmov. */
3004 return 610;
3006 else
3008 /* 33222222222211111111110000000000
3009 10987654321098765432109876543210
3010 xxxxxxxxxx000010001xx1xx01111xxx
3011 frintn. */
3012 return 615;
3015 else
3017 if (((word >> 18) & 0x1) == 0)
3019 /* 33222222222211111111110000000000
3020 10987654321098765432109876543210
3021 xxxxxxxxxx000010100xx1xx01111xxx
3022 fneg. */
3023 return 612;
3025 else
3027 /* 33222222222211111111110000000000
3028 10987654321098765432109876543210
3029 xxxxxxxxxx000010101xx1xx01111xxx
3030 frintm. */
3031 return 617;
3035 else
3037 if (((word >> 16) & 0x1) == 0)
3039 if (((word >> 18) & 0x1) == 0)
3041 /* 33222222222211111111110000000000
3042 10987654321098765432109876543210
3043 xxxxxxxxxx000011000xx1xx01111xxx
3044 fabs. */
3045 return 611;
3047 else
3049 /* 33222222222211111111110000000000
3050 10987654321098765432109876543210
3051 xxxxxxxxxx000011001xx1xx01111xxx
3052 frintp. */
3053 return 616;
3056 else
3058 if (((word >> 18) & 0x1) == 0)
3060 /* 33222222222211111111110000000000
3061 10987654321098765432109876543210
3062 xxxxxxxxxx000011100xx1xx01111xxx
3063 fsqrt. */
3064 return 613;
3066 else
3068 /* 33222222222211111111110000000000
3069 10987654321098765432109876543210
3070 xxxxxxxxxx000011101xx1xx01111xxx
3071 frintz. */
3072 return 618;
3077 else
3079 if (((word >> 18) & 0x1) == 0)
3081 /* 33222222222211111111110000000000
3082 10987654321098765432109876543210
3083 xxxxxxxxxx00001xx10xx1xx01111xxx
3084 fcvt. */
3085 return 614;
3087 else
3089 if (((word >> 15) & 0x1) == 0)
3091 if (((word >> 16) & 0x1) == 0)
3093 /* 33222222222211111111110000000000
3094 10987654321098765432109876543210
3095 xxxxxxxxxx000010011xx1xx01111xxx
3096 frinta. */
3097 return 619;
3099 else
3101 /* 33222222222211111111110000000000
3102 10987654321098765432109876543210
3103 xxxxxxxxxx000010111xx1xx01111xxx
3104 frintx. */
3105 return 620;
3108 else
3110 /* 33222222222211111111110000000000
3111 10987654321098765432109876543210
3112 xxxxxxxxxx000011x11xx1xx01111xxx
3113 frinti. */
3114 return 621;
3121 else
3123 if (((word >> 14) & 0x1) == 0)
3125 if (((word >> 15) & 0x1) == 0)
3127 if (((word >> 28) & 0x1) == 0)
3129 if (((word >> 29) & 0x1) == 0)
3131 if (((word >> 30) & 0x1) == 0)
3133 /* 33222222222211111111110000000000
3134 10987654321098765432109876543210
3135 xxxxxxxxxx000100xxxxx1xx0111000x
3136 ssubl. */
3137 return 42;
3139 else
3141 /* 33222222222211111111110000000000
3142 10987654321098765432109876543210
3143 xxxxxxxxxx000100xxxxx1xx0111001x
3144 ssubl2. */
3145 return 43;
3148 else
3150 if (((word >> 30) & 0x1) == 0)
3152 /* 33222222222211111111110000000000
3153 10987654321098765432109876543210
3154 xxxxxxxxxx000100xxxxx1xx0111010x
3155 usubl. */
3156 return 74;
3158 else
3160 /* 33222222222211111111110000000000
3161 10987654321098765432109876543210
3162 xxxxxxxxxx000100xxxxx1xx0111011x
3163 usubl2. */
3164 return 75;
3168 else
3170 if (((word >> 3) & 0x1) == 0)
3172 if (((word >> 4) & 0x1) == 0)
3174 /* 33222222222211111111110000000000
3175 10987654321098765432109876543210
3176 xxx00xxxxx000100xxxxx1xx01111xxx
3177 fcmp. */
3178 return 606;
3180 else
3182 /* 33222222222211111111110000000000
3183 10987654321098765432109876543210
3184 xxx01xxxxx000100xxxxx1xx01111xxx
3185 fcmpe. */
3186 return 607;
3189 else
3191 if (((word >> 4) & 0x1) == 0)
3193 /* 33222222222211111111110000000000
3194 10987654321098765432109876543210
3195 xxx10xxxxx000100xxxxx1xx01111xxx
3196 fcmp. */
3197 return 608;
3199 else
3201 /* 33222222222211111111110000000000
3202 10987654321098765432109876543210
3203 xxx11xxxxx000100xxxxx1xx01111xxx
3204 fcmpe. */
3205 return 609;
3210 else
3212 if (((word >> 29) & 0x1) == 0)
3214 if (((word >> 30) & 0x1) == 0)
3216 /* 33222222222211111111110000000000
3217 10987654321098765432109876543210
3218 xxxxxxxxxx000101xxxxx1xx0111x00x
3219 smlsl. */
3220 return 58;
3222 else
3224 /* 33222222222211111111110000000000
3225 10987654321098765432109876543210
3226 xxxxxxxxxx000101xxxxx1xx0111x01x
3227 smlsl2. */
3228 return 59;
3231 else
3233 if (((word >> 30) & 0x1) == 0)
3235 /* 33222222222211111111110000000000
3236 10987654321098765432109876543210
3237 xxxxxxxxxx000101xxxxx1xx0111x10x
3238 umlsl. */
3239 return 88;
3241 else
3243 /* 33222222222211111111110000000000
3244 10987654321098765432109876543210
3245 xxxxxxxxxx000101xxxxx1xx0111x11x
3246 umlsl2. */
3247 return 89;
3252 else
3254 if (((word >> 15) & 0x1) == 0)
3256 if (((word >> 29) & 0x1) == 0)
3258 if (((word >> 30) & 0x1) == 0)
3260 /* 33222222222211111111110000000000
3261 10987654321098765432109876543210
3262 xxxxxxxxxx000110xxxxx1xx0111x00x
3263 subhn. */
3264 return 50;
3266 else
3268 /* 33222222222211111111110000000000
3269 10987654321098765432109876543210
3270 xxxxxxxxxx000110xxxxx1xx0111x01x
3271 subhn2. */
3272 return 51;
3275 else
3277 if (((word >> 30) & 0x1) == 0)
3279 /* 33222222222211111111110000000000
3280 10987654321098765432109876543210
3281 xxxxxxxxxx000110xxxxx1xx0111x10x
3282 rsubhn. */
3283 return 82;
3285 else
3287 /* 33222222222211111111110000000000
3288 10987654321098765432109876543210
3289 xxxxxxxxxx000110xxxxx1xx0111x11x
3290 rsubhn2. */
3291 return 83;
3295 else
3297 if (((word >> 22) & 0x1) == 0)
3299 if (((word >> 30) & 0x1) == 0)
3301 /* 33222222222211111111110000000000
3302 10987654321098765432109876543210
3303 xxxxxxxxxx000111xxxxx10x0111xx0x
3304 pmull. */
3305 return 66;
3307 else
3309 /* 33222222222211111111110000000000
3310 10987654321098765432109876543210
3311 xxxxxxxxxx000111xxxxx10x0111xx1x
3312 pmull2. */
3313 return 68;
3316 else
3318 if (((word >> 30) & 0x1) == 0)
3320 /* 33222222222211111111110000000000
3321 10987654321098765432109876543210
3322 xxxxxxxxxx000111xxxxx11x0111xx0x
3323 pmull. */
3324 return 67;
3326 else
3328 /* 33222222222211111111110000000000
3329 10987654321098765432109876543210
3330 xxxxxxxxxx000111xxxxx11x0111xx1x
3331 pmull2. */
3332 return 69;
3339 else
3341 if (((word >> 28) & 0x1) == 0)
3343 if (((word >> 13) & 0x1) == 0)
3345 if (((word >> 14) & 0x1) == 0)
3347 if (((word >> 15) & 0x1) == 0)
3349 if (((word >> 29) & 0x1) == 0)
3351 if (((word >> 30) & 0x1) == 0)
3353 /* 33222222222211111111110000000000
3354 10987654321098765432109876543210
3355 xxxxxxxxxx001000xxxxx1xx0111000x
3356 saddw. */
3357 return 40;
3359 else
3361 /* 33222222222211111111110000000000
3362 10987654321098765432109876543210
3363 xxxxxxxxxx001000xxxxx1xx0111001x
3364 saddw2. */
3365 return 41;
3368 else
3370 if (((word >> 30) & 0x1) == 0)
3372 /* 33222222222211111111110000000000
3373 10987654321098765432109876543210
3374 xxxxxxxxxx001000xxxxx1xx0111010x
3375 uaddw. */
3376 return 72;
3378 else
3380 /* 33222222222211111111110000000000
3381 10987654321098765432109876543210
3382 xxxxxxxxxx001000xxxxx1xx0111011x
3383 uaddw2. */
3384 return 73;
3388 else
3390 if (((word >> 30) & 0x1) == 0)
3392 /* 33222222222211111111110000000000
3393 10987654321098765432109876543210
3394 xxxxxxxxxx001001xxxxx1xx01110x0x
3395 sqdmlal. */
3396 return 56;
3398 else
3400 /* 33222222222211111111110000000000
3401 10987654321098765432109876543210
3402 xxxxxxxxxx001001xxxxx1xx01110x1x
3403 sqdmlal2. */
3404 return 57;
3408 else
3410 if (((word >> 15) & 0x1) == 0)
3412 if (((word >> 29) & 0x1) == 0)
3414 if (((word >> 30) & 0x1) == 0)
3416 /* 33222222222211111111110000000000
3417 10987654321098765432109876543210
3418 xxxxxxxxxx001010xxxxx1xx0111000x
3419 sabal. */
3420 return 48;
3422 else
3424 /* 33222222222211111111110000000000
3425 10987654321098765432109876543210
3426 xxxxxxxxxx001010xxxxx1xx0111001x
3427 sabal2. */
3428 return 49;
3431 else
3433 if (((word >> 30) & 0x1) == 0)
3435 /* 33222222222211111111110000000000
3436 10987654321098765432109876543210
3437 xxxxxxxxxx001010xxxxx1xx0111010x
3438 uabal. */
3439 return 80;
3441 else
3443 /* 33222222222211111111110000000000
3444 10987654321098765432109876543210
3445 xxxxxxxxxx001010xxxxx1xx0111011x
3446 uabal2. */
3447 return 81;
3451 else
3453 if (((word >> 30) & 0x1) == 0)
3455 /* 33222222222211111111110000000000
3456 10987654321098765432109876543210
3457 xxxxxxxxxx001011xxxxx1xx01110x0x
3458 sqdmull. */
3459 return 64;
3461 else
3463 /* 33222222222211111111110000000000
3464 10987654321098765432109876543210
3465 xxxxxxxxxx001011xxxxx1xx01110x1x
3466 sqdmull2. */
3467 return 65;
3472 else
3474 if (((word >> 14) & 0x1) == 0)
3476 if (((word >> 15) & 0x1) == 0)
3478 if (((word >> 29) & 0x1) == 0)
3480 if (((word >> 30) & 0x1) == 0)
3482 /* 33222222222211111111110000000000
3483 10987654321098765432109876543210
3484 xxxxxxxxxx001100xxxxx1xx0111000x
3485 ssubw. */
3486 return 44;
3488 else
3490 /* 33222222222211111111110000000000
3491 10987654321098765432109876543210
3492 xxxxxxxxxx001100xxxxx1xx0111001x
3493 ssubw2. */
3494 return 45;
3497 else
3499 if (((word >> 30) & 0x1) == 0)
3501 /* 33222222222211111111110000000000
3502 10987654321098765432109876543210
3503 xxxxxxxxxx001100xxxxx1xx0111010x
3504 usubw. */
3505 return 76;
3507 else
3509 /* 33222222222211111111110000000000
3510 10987654321098765432109876543210
3511 xxxxxxxxxx001100xxxxx1xx0111011x
3512 usubw2. */
3513 return 77;
3517 else
3519 if (((word >> 30) & 0x1) == 0)
3521 /* 33222222222211111111110000000000
3522 10987654321098765432109876543210
3523 xxxxxxxxxx001101xxxxx1xx01110x0x
3524 sqdmlsl. */
3525 return 60;
3527 else
3529 /* 33222222222211111111110000000000
3530 10987654321098765432109876543210
3531 xxxxxxxxxx001101xxxxx1xx01110x1x
3532 sqdmlsl2. */
3533 return 61;
3537 else
3539 if (((word >> 29) & 0x1) == 0)
3541 if (((word >> 30) & 0x1) == 0)
3543 /* 33222222222211111111110000000000
3544 10987654321098765432109876543210
3545 xxxxxxxxxx00111xxxxxx1xx0111000x
3546 sabdl. */
3547 return 52;
3549 else
3551 /* 33222222222211111111110000000000
3552 10987654321098765432109876543210
3553 xxxxxxxxxx00111xxxxxx1xx0111001x
3554 sabdl2. */
3555 return 53;
3558 else
3560 if (((word >> 30) & 0x1) == 0)
3562 /* 33222222222211111111110000000000
3563 10987654321098765432109876543210
3564 xxxxxxxxxx00111xxxxxx1xx0111010x
3565 uabdl. */
3566 return 84;
3568 else
3570 /* 33222222222211111111110000000000
3571 10987654321098765432109876543210
3572 xxxxxxxxxx00111xxxxxx1xx0111011x
3573 uabdl2. */
3574 return 85;
3580 else
3582 if (((word >> 30) & 0x1) == 0)
3584 /* 33222222222211111111110000000000
3585 10987654321098765432109876543210
3586 xxxxxxxxxx001xxxxxxxx1xx01111x0x
3587 fmov. */
3588 return 635;
3590 else
3592 if (((word >> 13) & 0x1) == 0)
3594 if (((word >> 14) & 0x1) == 0)
3596 /* 33222222222211111111110000000000
3597 10987654321098765432109876543210
3598 xxxxxxxxxx00100xxxxxx1xx01111x1x
3599 sqdmlal. */
3600 return 339;
3602 else
3604 /* 33222222222211111111110000000000
3605 10987654321098765432109876543210
3606 xxxxxxxxxx00101xxxxxx1xx01111x1x
3607 sqdmull. */
3608 return 341;
3611 else
3613 /* 33222222222211111111110000000000
3614 10987654321098765432109876543210
3615 xxxxxxxxxx0011xxxxxxx1xx01111x1x
3616 sqdmlsl. */
3617 return 340;
3623 else
3625 if (((word >> 12) & 0x1) == 0)
3627 if (((word >> 13) & 0x1) == 0)
3629 if (((word >> 14) & 0x1) == 0)
3631 if (((word >> 15) & 0x1) == 0)
3633 if (((word >> 28) & 0x1) == 0)
3635 if (((word >> 29) & 0x1) == 0)
3637 /* 33222222222211111111110000000000
3638 10987654321098765432109876543210
3639 xxxxxxxxxx010000xxxxx1xx011100xx
3640 rev64. */
3641 return 144;
3643 else
3645 /* 33222222222211111111110000000000
3646 10987654321098765432109876543210
3647 xxxxxxxxxx010000xxxxx1xx011101xx
3648 rev32. */
3649 return 180;
3652 else
3654 if (((word >> 30) & 0x1) == 0)
3656 /* 33222222222211111111110000000000
3657 10987654321098765432109876543210
3658 xxxxxxxxxx010000xxxxx1xx01111x0x
3659 fmul. */
3660 return 622;
3662 else
3664 /* 33222222222211111111110000000000
3665 10987654321098765432109876543210
3666 xxxxxxxxxx010000xxxxx1xx01111x1x
3667 sha1h. */
3668 return 533;
3672 else
3674 if (((word >> 28) & 0x1) == 0)
3676 if (((word >> 16) & 0x1) == 0)
3678 if (((word >> 29) & 0x1) == 0)
3680 /* 33222222222211111111110000000000
3681 10987654321098765432109876543210
3682 xxxxxxxxxx0100010xxxx1xx011100xx
3683 cmgt. */
3684 return 152;
3686 else
3688 /* 33222222222211111111110000000000
3689 10987654321098765432109876543210
3690 xxxxxxxxxx0100010xxxx1xx011101xx
3691 cmge. */
3692 return 186;
3695 else
3697 if (((word >> 23) & 0x1) == 0)
3699 if (((word >> 29) & 0x1) == 0)
3701 /* 33222222222211111111110000000000
3702 10987654321098765432109876543210
3703 xxxxxxxxxx0100011xxxx1x0011100xx
3704 frintn. */
3705 return 164;
3707 else
3709 /* 33222222222211111111110000000000
3710 10987654321098765432109876543210
3711 xxxxxxxxxx0100011xxxx1x0011101xx
3712 frinta. */
3713 return 197;
3716 else
3718 /* 33222222222211111111110000000000
3719 10987654321098765432109876543210
3720 xxxxxxxxxx0100011xxxx1x101110xxx
3721 frintp. */
3722 return 174;
3726 else
3728 if (((word >> 29) & 0x1) == 0)
3730 if (((word >> 30) & 0x1) == 0)
3732 /* 33222222222211111111110000000000
3733 10987654321098765432109876543210
3734 xxxxxxxxxx010001xxxxx1xx0111100x
3735 fnmul. */
3736 return 630;
3738 else
3740 /* 33222222222211111111110000000000
3741 10987654321098765432109876543210
3742 xxxxxxxxxx010001xxxxx1xx0111101x
3743 cmgt. */
3744 return 393;
3747 else
3749 /* 33222222222211111111110000000000
3750 10987654321098765432109876543210
3751 xxxxxxxxxx010001xxxxx1xx011111xx
3752 cmge. */
3753 return 411;
3758 else
3760 if (((word >> 15) & 0x1) == 0)
3762 if (((word >> 28) & 0x1) == 0)
3764 if (((word >> 16) & 0x1) == 0)
3766 if (((word >> 19) & 0x1) == 0)
3768 if (((word >> 29) & 0x1) == 0)
3770 /* 33222222222211111111110000000000
3771 10987654321098765432109876543210
3772 xxxxxxxxxx0100100xx0x1xx011100xx
3773 cls. */
3774 return 148;
3776 else
3778 /* 33222222222211111111110000000000
3779 10987654321098765432109876543210
3780 xxxxxxxxxx0100100xx0x1xx011101xx
3781 clz. */
3782 return 183;
3785 else
3787 /* 33222222222211111111110000000000
3788 10987654321098765432109876543210
3789 xxxxxxxxxx0100100xx1x1xx01110xxx
3790 aese. */
3791 return 529;
3794 else
3796 if (((word >> 29) & 0x1) == 0)
3798 if (((word >> 30) & 0x1) == 0)
3800 /* 33222222222211111111110000000000
3801 10987654321098765432109876543210
3802 xxxxxxxxxx0100101xxxx1xx0111000x
3803 sqxtn. */
3804 return 158;
3806 else
3808 /* 33222222222211111111110000000000
3809 10987654321098765432109876543210
3810 xxxxxxxxxx0100101xxxx1xx0111001x
3811 sqxtn2. */
3812 return 159;
3815 else
3817 if (((word >> 30) & 0x1) == 0)
3819 /* 33222222222211111111110000000000
3820 10987654321098765432109876543210
3821 xxxxxxxxxx0100101xxxx1xx0111010x
3822 uqxtn. */
3823 return 193;
3825 else
3827 /* 33222222222211111111110000000000
3828 10987654321098765432109876543210
3829 xxxxxxxxxx0100101xxxx1xx0111011x
3830 uqxtn2. */
3831 return 194;
3836 else
3838 if (((word >> 29) & 0x1) == 0)
3840 if (((word >> 30) & 0x1) == 0)
3842 /* 33222222222211111111110000000000
3843 10987654321098765432109876543210
3844 xxxxxxxxxx010010xxxxx1xx0111100x
3845 fmax. */
3846 return 626;
3848 else
3850 /* 33222222222211111111110000000000
3851 10987654321098765432109876543210
3852 xxxxxxxxxx010010xxxxx1xx0111101x
3853 sqxtn. */
3854 return 397;
3857 else
3859 /* 33222222222211111111110000000000
3860 10987654321098765432109876543210
3861 xxxxxxxxxx010010xxxxx1xx011111xx
3862 uqxtn. */
3863 return 415;
3867 else
3869 if (((word >> 16) & 0x1) == 0)
3871 if (((word >> 20) & 0x1) == 0)
3873 if (((word >> 28) & 0x1) == 0)
3875 if (((word >> 29) & 0x1) == 0)
3877 /* 33222222222211111111110000000000
3878 10987654321098765432109876543210
3879 xxxxxxxxxx0100110xxx01xx011100xx
3880 fcmgt. */
3881 return 170;
3883 else
3885 /* 33222222222211111111110000000000
3886 10987654321098765432109876543210
3887 xxxxxxxxxx0100110xxx01xx011101xx
3888 fcmge. */
3889 return 206;
3892 else
3894 if (((word >> 29) & 0x1) == 0)
3896 /* 33222222222211111111110000000000
3897 10987654321098765432109876543210
3898 xxxxxxxxxx0100110xxx01xx011110xx
3899 fcmgt. */
3900 return 402;
3902 else
3904 /* 33222222222211111111110000000000
3905 10987654321098765432109876543210
3906 xxxxxxxxxx0100110xxx01xx011111xx
3907 fcmge. */
3908 return 421;
3912 else
3914 if (((word >> 23) & 0x1) == 0)
3916 if (((word >> 28) & 0x1) == 0)
3918 /* 33222222222211111111110000000000
3919 10987654321098765432109876543210
3920 xxxxxxxxxx0100110xxx11x001110xxx
3921 fmaxnmv. */
3922 return 34;
3924 else
3926 /* 33222222222211111111110000000000
3927 10987654321098765432109876543210
3928 xxxxxxxxxx0100110xxx11x001111xxx
3929 fmaxnmp. */
3930 return 429;
3933 else
3935 if (((word >> 28) & 0x1) == 0)
3937 /* 33222222222211111111110000000000
3938 10987654321098765432109876543210
3939 xxxxxxxxxx0100110xxx11x101110xxx
3940 fminnmv. */
3941 return 36;
3943 else
3945 /* 33222222222211111111110000000000
3946 10987654321098765432109876543210
3947 xxxxxxxxxx0100110xxx11x101111xxx
3948 fminnmp. */
3949 return 432;
3954 else
3956 if (((word >> 23) & 0x1) == 0)
3958 if (((word >> 28) & 0x1) == 0)
3960 if (((word >> 29) & 0x1) == 0)
3962 /* 33222222222211111111110000000000
3963 10987654321098765432109876543210
3964 xxxxxxxxxx0100111xxxx1x0011100xx
3965 fcvtas. */
3966 return 168;
3968 else
3970 /* 33222222222211111111110000000000
3971 10987654321098765432109876543210
3972 xxxxxxxxxx0100111xxxx1x0011101xx
3973 fcvtau. */
3974 return 201;
3977 else
3979 if (((word >> 29) & 0x1) == 0)
3981 /* 33222222222211111111110000000000
3982 10987654321098765432109876543210
3983 xxxxxxxxxx0100111xxxx1x0011110xx
3984 fcvtas. */
3985 return 400;
3987 else
3989 /* 33222222222211111111110000000000
3990 10987654321098765432109876543210
3991 xxxxxxxxxx0100111xxxx1x0011111xx
3992 fcvtau. */
3993 return 419;
3997 else
3999 if (((word >> 29) & 0x1) == 0)
4001 /* 33222222222211111111110000000000
4002 10987654321098765432109876543210
4003 xxxxxxxxxx0100111xxxx1x10111x0xx
4004 urecpe. */
4005 return 178;
4007 else
4009 /* 33222222222211111111110000000000
4010 10987654321098765432109876543210
4011 xxxxxxxxxx0100111xxxx1x10111x1xx
4012 ursqrte. */
4013 return 212;
4020 else
4022 if (((word >> 14) & 0x1) == 0)
4024 if (((word >> 15) & 0x1) == 0)
4026 if (((word >> 28) & 0x1) == 0)
4028 if (((word >> 16) & 0x1) == 0)
4030 if (((word >> 29) & 0x1) == 0)
4032 /* 33222222222211111111110000000000
4033 10987654321098765432109876543210
4034 xxxxxxxxxx0101000xxxx1xx011100xx
4035 saddlp. */
4036 return 146;
4038 else
4040 /* 33222222222211111111110000000000
4041 10987654321098765432109876543210
4042 xxxxxxxxxx0101000xxxx1xx011101xx
4043 uaddlp. */
4044 return 181;
4047 else
4049 if (((word >> 29) & 0x1) == 0)
4051 if (((word >> 30) & 0x1) == 0)
4053 /* 33222222222211111111110000000000
4054 10987654321098765432109876543210
4055 xxxxxxxxxx0101001xxxx1xx0111000x
4056 xtn. */
4057 return 156;
4059 else
4061 /* 33222222222211111111110000000000
4062 10987654321098765432109876543210
4063 xxxxxxxxxx0101001xxxx1xx0111001x
4064 xtn2. */
4065 return 157;
4068 else
4070 if (((word >> 30) & 0x1) == 0)
4072 /* 33222222222211111111110000000000
4073 10987654321098765432109876543210
4074 xxxxxxxxxx0101001xxxx1xx0111010x
4075 sqxtun. */
4076 return 189;
4078 else
4080 /* 33222222222211111111110000000000
4081 10987654321098765432109876543210
4082 xxxxxxxxxx0101001xxxx1xx0111011x
4083 sqxtun2. */
4084 return 190;
4089 else
4091 if (((word >> 29) & 0x1) == 0)
4093 if (((word >> 30) & 0x1) == 0)
4095 /* 33222222222211111111110000000000
4096 10987654321098765432109876543210
4097 xxxxxxxxxx010100xxxxx1xx0111100x
4098 fadd. */
4099 return 624;
4101 else
4103 /* 33222222222211111111110000000000
4104 10987654321098765432109876543210
4105 xxxxxxxxxx010100xxxxx1xx0111101x
4106 sha256su0. */
4107 return 535;
4110 else
4112 /* 33222222222211111111110000000000
4113 10987654321098765432109876543210
4114 xxxxxxxxxx010100xxxxx1xx011111xx
4115 sqxtun. */
4116 return 414;
4120 else
4122 if (((word >> 16) & 0x1) == 0)
4124 if (((word >> 20) & 0x1) == 0)
4126 if (((word >> 28) & 0x1) == 0)
4128 /* 33222222222211111111110000000000
4129 10987654321098765432109876543210
4130 xxxxxxxxxx0101010xxx01xx01110xxx
4131 cmlt. */
4132 return 154;
4134 else
4136 /* 33222222222211111111110000000000
4137 10987654321098765432109876543210
4138 xxxxxxxxxx0101010xxx01xx01111xxx
4139 cmlt. */
4140 return 395;
4143 else
4145 if (((word >> 29) & 0x1) == 0)
4147 /* 33222222222211111111110000000000
4148 10987654321098765432109876543210
4149 xxxxxxxxxx0101010xxx11xx0111x0xx
4150 smaxv. */
4151 return 28;
4153 else
4155 /* 33222222222211111111110000000000
4156 10987654321098765432109876543210
4157 xxxxxxxxxx0101010xxx11xx0111x1xx
4158 umaxv. */
4159 return 32;
4163 else
4165 if (((word >> 20) & 0x1) == 0)
4167 if (((word >> 23) & 0x1) == 0)
4169 if (((word >> 28) & 0x1) == 0)
4171 if (((word >> 29) & 0x1) == 0)
4173 /* 33222222222211111111110000000000
4174 10987654321098765432109876543210
4175 xxxxxxxxxx0101011xxx01x0011100xx
4176 fcvtns. */
4177 return 166;
4179 else
4181 /* 33222222222211111111110000000000
4182 10987654321098765432109876543210
4183 xxxxxxxxxx0101011xxx01x0011101xx
4184 fcvtnu. */
4185 return 199;
4188 else
4190 if (((word >> 29) & 0x1) == 0)
4192 /* 33222222222211111111110000000000
4193 10987654321098765432109876543210
4194 xxxxxxxxxx0101011xxx01x0011110xx
4195 fcvtns. */
4196 return 398;
4198 else
4200 /* 33222222222211111111110000000000
4201 10987654321098765432109876543210
4202 xxxxxxxxxx0101011xxx01x0011111xx
4203 fcvtnu. */
4204 return 417;
4208 else
4210 if (((word >> 28) & 0x1) == 0)
4212 if (((word >> 29) & 0x1) == 0)
4214 /* 33222222222211111111110000000000
4215 10987654321098765432109876543210
4216 xxxxxxxxxx0101011xxx01x1011100xx
4217 fcvtps. */
4218 return 176;
4220 else
4222 /* 33222222222211111111110000000000
4223 10987654321098765432109876543210
4224 xxxxxxxxxx0101011xxx01x1011101xx
4225 fcvtpu. */
4226 return 210;
4229 else
4231 if (((word >> 29) & 0x1) == 0)
4233 /* 33222222222211111111110000000000
4234 10987654321098765432109876543210
4235 xxxxxxxxxx0101011xxx01x1011110xx
4236 fcvtps. */
4237 return 405;
4239 else
4241 /* 33222222222211111111110000000000
4242 10987654321098765432109876543210
4243 xxxxxxxxxx0101011xxx01x1011111xx
4244 fcvtpu. */
4245 return 423;
4250 else
4252 if (((word >> 29) & 0x1) == 0)
4254 /* 33222222222211111111110000000000
4255 10987654321098765432109876543210
4256 xxxxxxxxxx0101011xxx11xx0111x0xx
4257 sminv. */
4258 return 29;
4260 else
4262 /* 33222222222211111111110000000000
4263 10987654321098765432109876543210
4264 xxxxxxxxxx0101011xxx11xx0111x1xx
4265 uminv. */
4266 return 33;
4272 else
4274 if (((word >> 15) & 0x1) == 0)
4276 if (((word >> 28) & 0x1) == 0)
4278 if (((word >> 16) & 0x1) == 0)
4280 if (((word >> 19) & 0x1) == 0)
4282 if (((word >> 29) & 0x1) == 0)
4284 /* 33222222222211111111110000000000
4285 10987654321098765432109876543210
4286 xxxxxxxxxx0101100xx0x1xx011100xx
4287 sadalp. */
4288 return 150;
4290 else
4292 /* 33222222222211111111110000000000
4293 10987654321098765432109876543210
4294 xxxxxxxxxx0101100xx0x1xx011101xx
4295 uadalp. */
4296 return 184;
4299 else
4301 /* 33222222222211111111110000000000
4302 10987654321098765432109876543210
4303 xxxxxxxxxx0101100xx1x1xx01110xxx
4304 aesmc. */
4305 return 531;
4308 else
4310 if (((word >> 29) & 0x1) == 0)
4312 if (((word >> 30) & 0x1) == 0)
4314 /* 33222222222211111111110000000000
4315 10987654321098765432109876543210
4316 xxxxxxxxxx0101101xxxx1xx0111000x
4317 fcvtn. */
4318 return 160;
4320 else
4322 /* 33222222222211111111110000000000
4323 10987654321098765432109876543210
4324 xxxxxxxxxx0101101xxxx1xx0111001x
4325 fcvtn2. */
4326 return 161;
4329 else
4331 if (((word >> 30) & 0x1) == 0)
4333 /* 33222222222211111111110000000000
4334 10987654321098765432109876543210
4335 xxxxxxxxxx0101101xxxx1xx0111010x
4336 fcvtxn. */
4337 return 195;
4339 else
4341 /* 33222222222211111111110000000000
4342 10987654321098765432109876543210
4343 xxxxxxxxxx0101101xxxx1xx0111011x
4344 fcvtxn2. */
4345 return 196;
4350 else
4352 if (((word >> 29) & 0x1) == 0)
4354 /* 33222222222211111111110000000000
4355 10987654321098765432109876543210
4356 xxxxxxxxxx010110xxxxx1xx011110xx
4357 fmaxnm. */
4358 return 628;
4360 else
4362 /* 33222222222211111111110000000000
4363 10987654321098765432109876543210
4364 xxxxxxxxxx010110xxxxx1xx011111xx
4365 fcvtxn. */
4366 return 416;
4370 else
4372 if (((word >> 28) & 0x1) == 0)
4374 /* 33222222222211111111110000000000
4375 10987654321098765432109876543210
4376 xxxxxxxxxx010111xxxxx1xx01110xxx
4377 fcmlt. */
4378 return 172;
4380 else
4382 /* 33222222222211111111110000000000
4383 10987654321098765432109876543210
4384 xxxxxxxxxx010111xxxxx1xx01111xxx
4385 fcmlt. */
4386 return 404;
4392 else
4394 if (((word >> 13) & 0x1) == 0)
4396 if (((word >> 14) & 0x1) == 0)
4398 if (((word >> 15) & 0x1) == 0)
4400 if (((word >> 28) & 0x1) == 0)
4402 /* 33222222222211111111110000000000
4403 10987654321098765432109876543210
4404 xxxxxxxxxx011000xxxxx1xx01110xxx
4405 rev16. */
4406 return 145;
4408 else
4410 if (((word >> 30) & 0x1) == 0)
4412 /* 33222222222211111111110000000000
4413 10987654321098765432109876543210
4414 xxxxxxxxxx011000xxxxx1xx01111x0x
4415 fdiv. */
4416 return 623;
4418 else
4420 /* 33222222222211111111110000000000
4421 10987654321098765432109876543210
4422 xxxxxxxxxx011000xxxxx1xx01111x1x
4423 sha1su1. */
4424 return 534;
4428 else
4430 if (((word >> 16) & 0x1) == 0)
4432 if (((word >> 28) & 0x1) == 0)
4434 if (((word >> 29) & 0x1) == 0)
4436 /* 33222222222211111111110000000000
4437 10987654321098765432109876543210
4438 xxxxxxxxxx0110010xxxx1xx011100xx
4439 cmeq. */
4440 return 153;
4442 else
4444 /* 33222222222211111111110000000000
4445 10987654321098765432109876543210
4446 xxxxxxxxxx0110010xxxx1xx011101xx
4447 cmle. */
4448 return 187;
4451 else
4453 if (((word >> 29) & 0x1) == 0)
4455 /* 33222222222211111111110000000000
4456 10987654321098765432109876543210
4457 xxxxxxxxxx0110010xxxx1xx011110xx
4458 cmeq. */
4459 return 394;
4461 else
4463 /* 33222222222211111111110000000000
4464 10987654321098765432109876543210
4465 xxxxxxxxxx0110010xxxx1xx011111xx
4466 cmle. */
4467 return 412;
4471 else
4473 if (((word >> 23) & 0x1) == 0)
4475 if (((word >> 29) & 0x1) == 0)
4477 /* 33222222222211111111110000000000
4478 10987654321098765432109876543210
4479 xxxxxxxxxx0110011xxxx1x00111x0xx
4480 frintm. */
4481 return 165;
4483 else
4485 /* 33222222222211111111110000000000
4486 10987654321098765432109876543210
4487 xxxxxxxxxx0110011xxxx1x00111x1xx
4488 frintx. */
4489 return 198;
4492 else
4494 if (((word >> 29) & 0x1) == 0)
4496 /* 33222222222211111111110000000000
4497 10987654321098765432109876543210
4498 xxxxxxxxxx0110011xxxx1x10111x0xx
4499 frintz. */
4500 return 175;
4502 else
4504 /* 33222222222211111111110000000000
4505 10987654321098765432109876543210
4506 xxxxxxxxxx0110011xxxx1x10111x1xx
4507 frinti. */
4508 return 209;
4514 else
4516 if (((word >> 15) & 0x1) == 0)
4518 if (((word >> 28) & 0x1) == 0)
4520 if (((word >> 19) & 0x1) == 0)
4522 if (((word >> 29) & 0x1) == 0)
4524 /* 33222222222211111111110000000000
4525 10987654321098765432109876543210
4526 xxxxxxxxxx011010xxx0x1xx011100xx
4527 cnt. */
4528 return 149;
4530 else
4532 if (((word >> 22) & 0x1) == 0)
4534 /* 33222222222211111111110000000000
4535 10987654321098765432109876543210
4536 xxxxxxxxxx011010xxx0x10x011101xx
4537 not. */
4538 return 203;
4540 else
4542 /* 33222222222211111111110000000000
4543 10987654321098765432109876543210
4544 xxxxxxxxxx011010xxx0x11x011101xx
4545 rbit. */
4546 return 205;
4550 else
4552 /* 33222222222211111111110000000000
4553 10987654321098765432109876543210
4554 xxxxxxxxxx011010xxx1x1xx01110xxx
4555 aesd. */
4556 return 530;
4559 else
4561 /* 33222222222211111111110000000000
4562 10987654321098765432109876543210
4563 xxxxxxxxxx011010xxxxx1xx01111xxx
4564 fmin. */
4565 return 627;
4568 else
4570 if (((word >> 16) & 0x1) == 0)
4572 if (((word >> 20) & 0x1) == 0)
4574 if (((word >> 28) & 0x1) == 0)
4576 if (((word >> 29) & 0x1) == 0)
4578 /* 33222222222211111111110000000000
4579 10987654321098765432109876543210
4580 xxxxxxxxxx0110110xxx01xx011100xx
4581 fcmeq. */
4582 return 171;
4584 else
4586 /* 33222222222211111111110000000000
4587 10987654321098765432109876543210
4588 xxxxxxxxxx0110110xxx01xx011101xx
4589 fcmle. */
4590 return 207;
4593 else
4595 if (((word >> 29) & 0x1) == 0)
4597 /* 33222222222211111111110000000000
4598 10987654321098765432109876543210
4599 xxxxxxxxxx0110110xxx01xx011110xx
4600 fcmeq. */
4601 return 403;
4603 else
4605 /* 33222222222211111111110000000000
4606 10987654321098765432109876543210
4607 xxxxxxxxxx0110110xxx01xx011111xx
4608 fcmle. */
4609 return 422;
4613 else
4615 /* 33222222222211111111110000000000
4616 10987654321098765432109876543210
4617 xxxxxxxxxx0110110xxx11xx0111xxxx
4618 faddp. */
4619 return 430;
4622 else
4624 if (((word >> 23) & 0x1) == 0)
4626 if (((word >> 28) & 0x1) == 0)
4628 if (((word >> 29) & 0x1) == 0)
4630 /* 33222222222211111111110000000000
4631 10987654321098765432109876543210
4632 xxxxxxxxxx0110111xxxx1x0011100xx
4633 scvtf. */
4634 return 169;
4636 else
4638 /* 33222222222211111111110000000000
4639 10987654321098765432109876543210
4640 xxxxxxxxxx0110111xxxx1x0011101xx
4641 ucvtf. */
4642 return 202;
4645 else
4647 if (((word >> 29) & 0x1) == 0)
4649 /* 33222222222211111111110000000000
4650 10987654321098765432109876543210
4651 xxxxxxxxxx0110111xxxx1x0011110xx
4652 scvtf. */
4653 return 401;
4655 else
4657 /* 33222222222211111111110000000000
4658 10987654321098765432109876543210
4659 xxxxxxxxxx0110111xxxx1x0011111xx
4660 ucvtf. */
4661 return 420;
4665 else
4667 if (((word >> 28) & 0x1) == 0)
4669 if (((word >> 29) & 0x1) == 0)
4671 /* 33222222222211111111110000000000
4672 10987654321098765432109876543210
4673 xxxxxxxxxx0110111xxxx1x1011100xx
4674 frecpe. */
4675 return 179;
4677 else
4679 /* 33222222222211111111110000000000
4680 10987654321098765432109876543210
4681 xxxxxxxxxx0110111xxxx1x1011101xx
4682 frsqrte. */
4683 return 213;
4686 else
4688 if (((word >> 29) & 0x1) == 0)
4690 /* 33222222222211111111110000000000
4691 10987654321098765432109876543210
4692 xxxxxxxxxx0110111xxxx1x1011110xx
4693 frecpe. */
4694 return 407;
4696 else
4698 /* 33222222222211111111110000000000
4699 10987654321098765432109876543210
4700 xxxxxxxxxx0110111xxxx1x1011111xx
4701 frsqrte. */
4702 return 425;
4710 else
4712 if (((word >> 14) & 0x1) == 0)
4714 if (((word >> 15) & 0x1) == 0)
4716 if (((word >> 28) & 0x1) == 0)
4718 if (((word >> 16) & 0x1) == 0)
4720 if (((word >> 20) & 0x1) == 0)
4722 if (((word >> 29) & 0x1) == 0)
4724 /* 33222222222211111111110000000000
4725 10987654321098765432109876543210
4726 xxxxxxxxxx0111000xxx01xx011100xx
4727 suqadd. */
4728 return 147;
4730 else
4732 /* 33222222222211111111110000000000
4733 10987654321098765432109876543210
4734 xxxxxxxxxx0111000xxx01xx011101xx
4735 usqadd. */
4736 return 182;
4739 else
4741 if (((word >> 29) & 0x1) == 0)
4743 /* 33222222222211111111110000000000
4744 10987654321098765432109876543210
4745 xxxxxxxxxx0111000xxx11xx011100xx
4746 saddlv. */
4747 return 27;
4749 else
4751 /* 33222222222211111111110000000000
4752 10987654321098765432109876543210
4753 xxxxxxxxxx0111000xxx11xx011101xx
4754 uaddlv. */
4755 return 31;
4759 else
4761 if (((word >> 30) & 0x1) == 0)
4763 /* 33222222222211111111110000000000
4764 10987654321098765432109876543210
4765 xxxxxxxxxx0111001xxxx1xx01110x0x
4766 shll. */
4767 return 191;
4769 else
4771 /* 33222222222211111111110000000000
4772 10987654321098765432109876543210
4773 xxxxxxxxxx0111001xxxx1xx01110x1x
4774 shll2. */
4775 return 192;
4779 else
4781 if (((word >> 29) & 0x1) == 0)
4783 if (((word >> 30) & 0x1) == 0)
4785 /* 33222222222211111111110000000000
4786 10987654321098765432109876543210
4787 xxxxxxxxxx011100xxxxx1xx0111100x
4788 fsub. */
4789 return 625;
4791 else
4793 /* 33222222222211111111110000000000
4794 10987654321098765432109876543210
4795 xxxxxxxxxx011100xxxxx1xx0111101x
4796 suqadd. */
4797 return 391;
4800 else
4802 /* 33222222222211111111110000000000
4803 10987654321098765432109876543210
4804 xxxxxxxxxx011100xxxxx1xx011111xx
4805 usqadd. */
4806 return 409;
4810 else
4812 if (((word >> 16) & 0x1) == 0)
4814 if (((word >> 28) & 0x1) == 0)
4816 if (((word >> 29) & 0x1) == 0)
4818 /* 33222222222211111111110000000000
4819 10987654321098765432109876543210
4820 xxxxxxxxxx0111010xxxx1xx011100xx
4821 abs. */
4822 return 155;
4824 else
4826 /* 33222222222211111111110000000000
4827 10987654321098765432109876543210
4828 xxxxxxxxxx0111010xxxx1xx011101xx
4829 neg. */
4830 return 188;
4833 else
4835 if (((word >> 29) & 0x1) == 0)
4837 /* 33222222222211111111110000000000
4838 10987654321098765432109876543210
4839 xxxxxxxxxx0111010xxxx1xx011110xx
4840 abs. */
4841 return 396;
4843 else
4845 /* 33222222222211111111110000000000
4846 10987654321098765432109876543210
4847 xxxxxxxxxx0111010xxxx1xx011111xx
4848 neg. */
4849 return 413;
4853 else
4855 if (((word >> 20) & 0x1) == 0)
4857 if (((word >> 23) & 0x1) == 0)
4859 if (((word >> 28) & 0x1) == 0)
4861 if (((word >> 29) & 0x1) == 0)
4863 /* 33222222222211111111110000000000
4864 10987654321098765432109876543210
4865 xxxxxxxxxx0111011xxx01x0011100xx
4866 fcvtms. */
4867 return 167;
4869 else
4871 /* 33222222222211111111110000000000
4872 10987654321098765432109876543210
4873 xxxxxxxxxx0111011xxx01x0011101xx
4874 fcvtmu. */
4875 return 200;
4878 else
4880 if (((word >> 29) & 0x1) == 0)
4882 /* 33222222222211111111110000000000
4883 10987654321098765432109876543210
4884 xxxxxxxxxx0111011xxx01x0011110xx
4885 fcvtms. */
4886 return 399;
4888 else
4890 /* 33222222222211111111110000000000
4891 10987654321098765432109876543210
4892 xxxxxxxxxx0111011xxx01x0011111xx
4893 fcvtmu. */
4894 return 418;
4898 else
4900 if (((word >> 28) & 0x1) == 0)
4902 if (((word >> 29) & 0x1) == 0)
4904 /* 33222222222211111111110000000000
4905 10987654321098765432109876543210
4906 xxxxxxxxxx0111011xxx01x1011100xx
4907 fcvtzs. */
4908 return 177;
4910 else
4912 /* 33222222222211111111110000000000
4913 10987654321098765432109876543210
4914 xxxxxxxxxx0111011xxx01x1011101xx
4915 fcvtzu. */
4916 return 211;
4919 else
4921 if (((word >> 29) & 0x1) == 0)
4923 /* 33222222222211111111110000000000
4924 10987654321098765432109876543210
4925 xxxxxxxxxx0111011xxx01x1011110xx
4926 fcvtzs. */
4927 return 406;
4929 else
4931 /* 33222222222211111111110000000000
4932 10987654321098765432109876543210
4933 xxxxxxxxxx0111011xxx01x1011111xx
4934 fcvtzu. */
4935 return 424;
4940 else
4942 if (((word >> 28) & 0x1) == 0)
4944 /* 33222222222211111111110000000000
4945 10987654321098765432109876543210
4946 xxxxxxxxxx0111011xxx11xx01110xxx
4947 addv. */
4948 return 30;
4950 else
4952 /* 33222222222211111111110000000000
4953 10987654321098765432109876543210
4954 xxxxxxxxxx0111011xxx11xx01111xxx
4955 addp. */
4956 return 428;
4962 else
4964 if (((word >> 15) & 0x1) == 0)
4966 if (((word >> 28) & 0x1) == 0)
4968 if (((word >> 16) & 0x1) == 0)
4970 if (((word >> 19) & 0x1) == 0)
4972 if (((word >> 29) & 0x1) == 0)
4974 /* 33222222222211111111110000000000
4975 10987654321098765432109876543210
4976 xxxxxxxxxx0111100xx0x1xx011100xx
4977 sqabs. */
4978 return 151;
4980 else
4982 /* 33222222222211111111110000000000
4983 10987654321098765432109876543210
4984 xxxxxxxxxx0111100xx0x1xx011101xx
4985 sqneg. */
4986 return 185;
4989 else
4991 /* 33222222222211111111110000000000
4992 10987654321098765432109876543210
4993 xxxxxxxxxx0111100xx1x1xx01110xxx
4994 aesimc. */
4995 return 532;
4998 else
5000 if (((word >> 30) & 0x1) == 0)
5002 /* 33222222222211111111110000000000
5003 10987654321098765432109876543210
5004 xxxxxxxxxx0111101xxxx1xx01110x0x
5005 fcvtl. */
5006 return 162;
5008 else
5010 /* 33222222222211111111110000000000
5011 10987654321098765432109876543210
5012 xxxxxxxxxx0111101xxxx1xx01110x1x
5013 fcvtl2. */
5014 return 163;
5018 else
5020 if (((word >> 29) & 0x1) == 0)
5022 if (((word >> 30) & 0x1) == 0)
5024 /* 33222222222211111111110000000000
5025 10987654321098765432109876543210
5026 xxxxxxxxxx011110xxxxx1xx0111100x
5027 fminnm. */
5028 return 629;
5030 else
5032 /* 33222222222211111111110000000000
5033 10987654321098765432109876543210
5034 xxxxxxxxxx011110xxxxx1xx0111101x
5035 sqabs. */
5036 return 392;
5039 else
5041 /* 33222222222211111111110000000000
5042 10987654321098765432109876543210
5043 xxxxxxxxxx011110xxxxx1xx011111xx
5044 sqneg. */
5045 return 410;
5049 else
5051 if (((word >> 16) & 0x1) == 0)
5053 if (((word >> 20) & 0x1) == 0)
5055 if (((word >> 29) & 0x1) == 0)
5057 /* 33222222222211111111110000000000
5058 10987654321098765432109876543210
5059 xxxxxxxxxx0111110xxx01xx0111x0xx
5060 fabs. */
5061 return 173;
5063 else
5065 /* 33222222222211111111110000000000
5066 10987654321098765432109876543210
5067 xxxxxxxxxx0111110xxx01xx0111x1xx
5068 fneg. */
5069 return 208;
5072 else
5074 if (((word >> 23) & 0x1) == 0)
5076 if (((word >> 28) & 0x1) == 0)
5078 /* 33222222222211111111110000000000
5079 10987654321098765432109876543210
5080 xxxxxxxxxx0111110xxx11x001110xxx
5081 fmaxv. */
5082 return 35;
5084 else
5086 /* 33222222222211111111110000000000
5087 10987654321098765432109876543210
5088 xxxxxxxxxx0111110xxx11x001111xxx
5089 fmaxp. */
5090 return 431;
5093 else
5095 if (((word >> 28) & 0x1) == 0)
5097 /* 33222222222211111111110000000000
5098 10987654321098765432109876543210
5099 xxxxxxxxxx0111110xxx11x101110xxx
5100 fminv. */
5101 return 37;
5103 else
5105 /* 33222222222211111111110000000000
5106 10987654321098765432109876543210
5107 xxxxxxxxxx0111110xxx11x101111xxx
5108 fminp. */
5109 return 433;
5114 else
5116 if (((word >> 28) & 0x1) == 0)
5118 /* 33222222222211111111110000000000
5119 10987654321098765432109876543210
5120 xxxxxxxxxx0111111xxxx1xx01110xxx
5121 fsqrt. */
5122 return 214;
5124 else
5126 /* 33222222222211111111110000000000
5127 10987654321098765432109876543210
5128 xxxxxxxxxx0111111xxxx1xx01111xxx
5129 frecpx. */
5130 return 408;
5139 else
5141 if (((word >> 11) & 0x1) == 0)
5143 if (((word >> 28) & 0x1) == 0)
5145 if (((word >> 12) & 0x1) == 0)
5147 if (((word >> 13) & 0x1) == 0)
5149 if (((word >> 14) & 0x1) == 0)
5151 if (((word >> 15) & 0x1) == 0)
5153 if (((word >> 29) & 0x1) == 0)
5155 /* 33222222222211111111110000000000
5156 10987654321098765432109876543210
5157 xxxxxxxxxx100000xxxxx1xx011100xx
5158 shadd. */
5159 return 221;
5161 else
5163 /* 33222222222211111111110000000000
5164 10987654321098765432109876543210
5165 xxxxxxxxxx100000xxxxx1xx011101xx
5166 uhadd. */
5167 return 261;
5170 else
5172 if (((word >> 29) & 0x1) == 0)
5174 /* 33222222222211111111110000000000
5175 10987654321098765432109876543210
5176 xxxxxxxxxx100001xxxxx1xx011100xx
5177 add. */
5178 return 236;
5180 else
5182 /* 33222222222211111111110000000000
5183 10987654321098765432109876543210
5184 xxxxxxxxxx100001xxxxx1xx011101xx
5185 sub. */
5186 return 276;
5190 else
5192 if (((word >> 15) & 0x1) == 0)
5194 if (((word >> 29) & 0x1) == 0)
5196 /* 33222222222211111111110000000000
5197 10987654321098765432109876543210
5198 xxxxxxxxxx100010xxxxx1xx011100xx
5199 sshl. */
5200 return 228;
5202 else
5204 /* 33222222222211111111110000000000
5205 10987654321098765432109876543210
5206 xxxxxxxxxx100010xxxxx1xx011101xx
5207 ushl. */
5208 return 268;
5211 else
5213 if (((word >> 23) & 0x1) == 0)
5215 if (((word >> 29) & 0x1) == 0)
5217 /* 33222222222211111111110000000000
5218 10987654321098765432109876543210
5219 xxxxxxxxxx100011xxxxx1x0011100xx
5220 fmaxnm. */
5221 return 244;
5223 else
5225 /* 33222222222211111111110000000000
5226 10987654321098765432109876543210
5227 xxxxxxxxxx100011xxxxx1x0011101xx
5228 fmaxnmp. */
5229 return 283;
5232 else
5234 if (((word >> 29) & 0x1) == 0)
5236 /* 33222222222211111111110000000000
5237 10987654321098765432109876543210
5238 xxxxxxxxxx100011xxxxx1x1011100xx
5239 fminnm. */
5240 return 253;
5242 else
5244 /* 33222222222211111111110000000000
5245 10987654321098765432109876543210
5246 xxxxxxxxxx100011xxxxx1x1011101xx
5247 fminnmp. */
5248 return 292;
5254 else
5256 if (((word >> 14) & 0x1) == 0)
5258 if (((word >> 15) & 0x1) == 0)
5260 if (((word >> 29) & 0x1) == 0)
5262 /* 33222222222211111111110000000000
5263 10987654321098765432109876543210
5264 xxxxxxxxxx100100xxxxx1xx011100xx
5265 shsub. */
5266 return 224;
5268 else
5270 /* 33222222222211111111110000000000
5271 10987654321098765432109876543210
5272 xxxxxxxxxx100100xxxxx1xx011101xx
5273 uhsub. */
5274 return 264;
5277 else
5279 if (((word >> 29) & 0x1) == 0)
5281 /* 33222222222211111111110000000000
5282 10987654321098765432109876543210
5283 xxxxxxxxxx100101xxxxx1xx011100xx
5284 smaxp. */
5285 return 240;
5287 else
5289 /* 33222222222211111111110000000000
5290 10987654321098765432109876543210
5291 xxxxxxxxxx100101xxxxx1xx011101xx
5292 umaxp. */
5293 return 280;
5297 else
5299 if (((word >> 15) & 0x1) == 0)
5301 if (((word >> 29) & 0x1) == 0)
5303 /* 33222222222211111111110000000000
5304 10987654321098765432109876543210
5305 xxxxxxxxxx100110xxxxx1xx011100xx
5306 smax. */
5307 return 232;
5309 else
5311 /* 33222222222211111111110000000000
5312 10987654321098765432109876543210
5313 xxxxxxxxxx100110xxxxx1xx011101xx
5314 umax. */
5315 return 272;
5318 else
5320 if (((word >> 23) & 0x1) == 0)
5322 if (((word >> 29) & 0x1) == 0)
5324 /* 33222222222211111111110000000000
5325 10987654321098765432109876543210
5326 xxxxxxxxxx100111xxxxx1x0011100xx
5327 fcmeq. */
5328 return 248;
5330 else
5332 /* 33222222222211111111110000000000
5333 10987654321098765432109876543210
5334 xxxxxxxxxx100111xxxxx1x0011101xx
5335 fcmge. */
5336 return 286;
5339 else
5341 /* 33222222222211111111110000000000
5342 10987654321098765432109876543210
5343 xxxxxxxxxx100111xxxxx1x101110xxx
5344 fcmgt. */
5345 return 294;
5351 else
5353 if (((word >> 13) & 0x1) == 0)
5355 if (((word >> 14) & 0x1) == 0)
5357 if (((word >> 15) & 0x1) == 0)
5359 if (((word >> 29) & 0x1) == 0)
5361 /* 33222222222211111111110000000000
5362 10987654321098765432109876543210
5363 xxxxxxxxxx101000xxxxx1xx011100xx
5364 srhadd. */
5365 return 223;
5367 else
5369 /* 33222222222211111111110000000000
5370 10987654321098765432109876543210
5371 xxxxxxxxxx101000xxxxx1xx011101xx
5372 urhadd. */
5373 return 263;
5376 else
5378 if (((word >> 29) & 0x1) == 0)
5380 /* 33222222222211111111110000000000
5381 10987654321098765432109876543210
5382 xxxxxxxxxx101001xxxxx1xx011100xx
5383 mla. */
5384 return 238;
5386 else
5388 /* 33222222222211111111110000000000
5389 10987654321098765432109876543210
5390 xxxxxxxxxx101001xxxxx1xx011101xx
5391 mls. */
5392 return 278;
5396 else
5398 if (((word >> 15) & 0x1) == 0)
5400 if (((word >> 29) & 0x1) == 0)
5402 /* 33222222222211111111110000000000
5403 10987654321098765432109876543210
5404 xxxxxxxxxx101010xxxxx1xx011100xx
5405 srshl. */
5406 return 230;
5408 else
5410 /* 33222222222211111111110000000000
5411 10987654321098765432109876543210
5412 xxxxxxxxxx101010xxxxx1xx011101xx
5413 urshl. */
5414 return 270;
5417 else
5419 if (((word >> 23) & 0x1) == 0)
5421 if (((word >> 29) & 0x1) == 0)
5423 /* 33222222222211111111110000000000
5424 10987654321098765432109876543210
5425 xxxxxxxxxx101011xxxxx1x0011100xx
5426 fadd. */
5427 return 246;
5429 else
5431 /* 33222222222211111111110000000000
5432 10987654321098765432109876543210
5433 xxxxxxxxxx101011xxxxx1x0011101xx
5434 faddp. */
5435 return 284;
5438 else
5440 if (((word >> 29) & 0x1) == 0)
5442 /* 33222222222211111111110000000000
5443 10987654321098765432109876543210
5444 xxxxxxxxxx101011xxxxx1x1011100xx
5445 fsub. */
5446 return 255;
5448 else
5450 /* 33222222222211111111110000000000
5451 10987654321098765432109876543210
5452 xxxxxxxxxx101011xxxxx1x1011101xx
5453 fabd. */
5454 return 293;
5460 else
5462 if (((word >> 14) & 0x1) == 0)
5464 if (((word >> 15) & 0x1) == 0)
5466 if (((word >> 29) & 0x1) == 0)
5468 /* 33222222222211111111110000000000
5469 10987654321098765432109876543210
5470 xxxxxxxxxx101100xxxxx1xx011100xx
5471 cmgt. */
5472 return 226;
5474 else
5476 /* 33222222222211111111110000000000
5477 10987654321098765432109876543210
5478 xxxxxxxxxx101100xxxxx1xx011101xx
5479 cmhi. */
5480 return 266;
5483 else
5485 if (((word >> 29) & 0x1) == 0)
5487 /* 33222222222211111111110000000000
5488 10987654321098765432109876543210
5489 xxxxxxxxxx101101xxxxx1xx011100xx
5490 sqdmulh. */
5491 return 242;
5493 else
5495 /* 33222222222211111111110000000000
5496 10987654321098765432109876543210
5497 xxxxxxxxxx101101xxxxx1xx011101xx
5498 sqrdmulh. */
5499 return 282;
5503 else
5505 if (((word >> 15) & 0x1) == 0)
5507 if (((word >> 29) & 0x1) == 0)
5509 /* 33222222222211111111110000000000
5510 10987654321098765432109876543210
5511 xxxxxxxxxx101110xxxxx1xx011100xx
5512 sabd. */
5513 return 234;
5515 else
5517 /* 33222222222211111111110000000000
5518 10987654321098765432109876543210
5519 xxxxxxxxxx101110xxxxx1xx011101xx
5520 uabd. */
5521 return 274;
5524 else
5526 if (((word >> 23) & 0x1) == 0)
5528 if (((word >> 29) & 0x1) == 0)
5530 /* 33222222222211111111110000000000
5531 10987654321098765432109876543210
5532 xxxxxxxxxx101111xxxxx1x0011100xx
5533 fmax. */
5534 return 249;
5536 else
5538 /* 33222222222211111111110000000000
5539 10987654321098765432109876543210
5540 xxxxxxxxxx101111xxxxx1x0011101xx
5541 fmaxp. */
5542 return 288;
5545 else
5547 if (((word >> 29) & 0x1) == 0)
5549 /* 33222222222211111111110000000000
5550 10987654321098765432109876543210
5551 xxxxxxxxxx101111xxxxx1x1011100xx
5552 fmin. */
5553 return 256;
5555 else
5557 /* 33222222222211111111110000000000
5558 10987654321098765432109876543210
5559 xxxxxxxxxx101111xxxxx1x1011101xx
5560 fminp. */
5561 return 296;
5569 else
5571 if (((word >> 29) & 0x1) == 0)
5573 if (((word >> 30) & 0x1) == 0)
5575 if (((word >> 4) & 0x1) == 0)
5577 /* 33222222222211111111110000000000
5578 10987654321098765432109876543210
5579 xxxx0xxxxx10xxxxxxxxx1xx0111100x
5580 fccmp. */
5581 return 604;
5583 else
5585 /* 33222222222211111111110000000000
5586 10987654321098765432109876543210
5587 xxxx1xxxxx10xxxxxxxxx1xx0111100x
5588 fccmpe. */
5589 return 605;
5592 else
5594 if (((word >> 12) & 0x1) == 0)
5596 if (((word >> 13) & 0x1) == 0)
5598 if (((word >> 14) & 0x1) == 0)
5600 /* 33222222222211111111110000000000
5601 10987654321098765432109876543210
5602 xxxxxxxxxx10000xxxxxx1xx0111101x
5603 add. */
5604 return 447;
5606 else
5608 /* 33222222222211111111110000000000
5609 10987654321098765432109876543210
5610 xxxxxxxxxx10001xxxxxx1xx0111101x
5611 sshl. */
5612 return 445;
5615 else
5617 /* 33222222222211111111110000000000
5618 10987654321098765432109876543210
5619 xxxxxxxxxx1001xxxxxxx1xx0111101x
5620 fcmeq. */
5621 return 440;
5624 else
5626 if (((word >> 13) & 0x1) == 0)
5628 /* 33222222222211111111110000000000
5629 10987654321098765432109876543210
5630 xxxxxxxxxx1010xxxxxxx1xx0111101x
5631 srshl. */
5632 return 446;
5634 else
5636 if (((word >> 15) & 0x1) == 0)
5638 /* 33222222222211111111110000000000
5639 10987654321098765432109876543210
5640 xxxxxxxxxx1011x0xxxxx1xx0111101x
5641 cmgt. */
5642 return 443;
5644 else
5646 /* 33222222222211111111110000000000
5647 10987654321098765432109876543210
5648 xxxxxxxxxx1011x1xxxxx1xx0111101x
5649 sqdmulh. */
5650 return 438;
5656 else
5658 if (((word >> 12) & 0x1) == 0)
5660 if (((word >> 13) & 0x1) == 0)
5662 if (((word >> 14) & 0x1) == 0)
5664 /* 33222222222211111111110000000000
5665 10987654321098765432109876543210
5666 xxxxxxxxxx10000xxxxxx1xx011111xx
5667 sub. */
5668 return 463;
5670 else
5672 /* 33222222222211111111110000000000
5673 10987654321098765432109876543210
5674 xxxxxxxxxx10001xxxxxx1xx011111xx
5675 ushl. */
5676 return 461;
5679 else
5681 if (((word >> 23) & 0x1) == 0)
5683 /* 33222222222211111111110000000000
5684 10987654321098765432109876543210
5685 xxxxxxxxxx1001xxxxxxx1x0011111xx
5686 fcmge. */
5687 return 454;
5689 else
5691 /* 33222222222211111111110000000000
5692 10987654321098765432109876543210
5693 xxxxxxxxxx1001xxxxxxx1x1011111xx
5694 fcmgt. */
5695 return 457;
5699 else
5701 if (((word >> 13) & 0x1) == 0)
5703 if (((word >> 15) & 0x1) == 0)
5705 /* 33222222222211111111110000000000
5706 10987654321098765432109876543210
5707 xxxxxxxxxx1010x0xxxxx1xx011111xx
5708 urshl. */
5709 return 462;
5711 else
5713 /* 33222222222211111111110000000000
5714 10987654321098765432109876543210
5715 xxxxxxxxxx1010x1xxxxx1xx011111xx
5716 fabd. */
5717 return 456;
5720 else
5722 if (((word >> 15) & 0x1) == 0)
5724 /* 33222222222211111111110000000000
5725 10987654321098765432109876543210
5726 xxxxxxxxxx1011x0xxxxx1xx011111xx
5727 cmhi. */
5728 return 459;
5730 else
5732 /* 33222222222211111111110000000000
5733 10987654321098765432109876543210
5734 xxxxxxxxxx1011x1xxxxx1xx011111xx
5735 sqrdmulh. */
5736 return 453;
5743 else
5745 if (((word >> 28) & 0x1) == 0)
5747 if (((word >> 12) & 0x1) == 0)
5749 if (((word >> 13) & 0x1) == 0)
5751 if (((word >> 14) & 0x1) == 0)
5753 if (((word >> 15) & 0x1) == 0)
5755 if (((word >> 29) & 0x1) == 0)
5757 /* 33222222222211111111110000000000
5758 10987654321098765432109876543210
5759 xxxxxxxxxx110000xxxxx1xx011100xx
5760 sqadd. */
5761 return 222;
5763 else
5765 /* 33222222222211111111110000000000
5766 10987654321098765432109876543210
5767 xxxxxxxxxx110000xxxxx1xx011101xx
5768 uqadd. */
5769 return 262;
5772 else
5774 if (((word >> 29) & 0x1) == 0)
5776 /* 33222222222211111111110000000000
5777 10987654321098765432109876543210
5778 xxxxxxxxxx110001xxxxx1xx011100xx
5779 cmtst. */
5780 return 237;
5782 else
5784 /* 33222222222211111111110000000000
5785 10987654321098765432109876543210
5786 xxxxxxxxxx110001xxxxx1xx011101xx
5787 cmeq. */
5788 return 277;
5792 else
5794 if (((word >> 15) & 0x1) == 0)
5796 if (((word >> 29) & 0x1) == 0)
5798 /* 33222222222211111111110000000000
5799 10987654321098765432109876543210
5800 xxxxxxxxxx110010xxxxx1xx011100xx
5801 sqshl. */
5802 return 229;
5804 else
5806 /* 33222222222211111111110000000000
5807 10987654321098765432109876543210
5808 xxxxxxxxxx110010xxxxx1xx011101xx
5809 uqshl. */
5810 return 269;
5813 else
5815 if (((word >> 23) & 0x1) == 0)
5817 /* 33222222222211111111110000000000
5818 10987654321098765432109876543210
5819 xxxxxxxxxx110011xxxxx1x001110xxx
5820 fmla. */
5821 return 245;
5823 else
5825 /* 33222222222211111111110000000000
5826 10987654321098765432109876543210
5827 xxxxxxxxxx110011xxxxx1x101110xxx
5828 fmls. */
5829 return 254;
5834 else
5836 if (((word >> 14) & 0x1) == 0)
5838 if (((word >> 15) & 0x1) == 0)
5840 if (((word >> 29) & 0x1) == 0)
5842 /* 33222222222211111111110000000000
5843 10987654321098765432109876543210
5844 xxxxxxxxxx110100xxxxx1xx011100xx
5845 sqsub. */
5846 return 225;
5848 else
5850 /* 33222222222211111111110000000000
5851 10987654321098765432109876543210
5852 xxxxxxxxxx110100xxxxx1xx011101xx
5853 uqsub. */
5854 return 265;
5857 else
5859 if (((word >> 29) & 0x1) == 0)
5861 /* 33222222222211111111110000000000
5862 10987654321098765432109876543210
5863 xxxxxxxxxx110101xxxxx1xx011100xx
5864 sminp. */
5865 return 241;
5867 else
5869 /* 33222222222211111111110000000000
5870 10987654321098765432109876543210
5871 xxxxxxxxxx110101xxxxx1xx011101xx
5872 uminp. */
5873 return 281;
5877 else
5879 if (((word >> 15) & 0x1) == 0)
5881 if (((word >> 29) & 0x1) == 0)
5883 /* 33222222222211111111110000000000
5884 10987654321098765432109876543210
5885 xxxxxxxxxx110110xxxxx1xx011100xx
5886 smin. */
5887 return 233;
5889 else
5891 /* 33222222222211111111110000000000
5892 10987654321098765432109876543210
5893 xxxxxxxxxx110110xxxxx1xx011101xx
5894 umin. */
5895 return 273;
5898 else
5900 if (((word >> 23) & 0x1) == 0)
5902 /* 33222222222211111111110000000000
5903 10987654321098765432109876543210
5904 xxxxxxxxxx110111xxxxx1x001110xxx
5905 facge. */
5906 return 287;
5908 else
5910 /* 33222222222211111111110000000000
5911 10987654321098765432109876543210
5912 xxxxxxxxxx110111xxxxx1x101110xxx
5913 facgt. */
5914 return 295;
5920 else
5922 if (((word >> 13) & 0x1) == 0)
5924 if (((word >> 14) & 0x1) == 0)
5926 if (((word >> 15) & 0x1) == 0)
5928 if (((word >> 22) & 0x1) == 0)
5930 if (((word >> 23) & 0x1) == 0)
5932 if (((word >> 29) & 0x1) == 0)
5934 /* 33222222222211111111110000000000
5935 10987654321098765432109876543210
5936 xxxxxxxxxx111000xxxxx100011100xx
5937 and. */
5938 return 251;
5940 else
5942 /* 33222222222211111111110000000000
5943 10987654321098765432109876543210
5944 xxxxxxxxxx111000xxxxx100011101xx
5945 eor. */
5946 return 290;
5949 else
5951 if (((word >> 29) & 0x1) == 0)
5953 /* 33222222222211111111110000000000
5954 10987654321098765432109876543210
5955 xxxxxxxxxx111000xxxxx101011100xx
5956 orr. */
5957 return 258;
5959 else
5961 /* 33222222222211111111110000000000
5962 10987654321098765432109876543210
5963 xxxxxxxxxx111000xxxxx101011101xx
5964 bit. */
5965 return 297;
5969 else
5971 if (((word >> 23) & 0x1) == 0)
5973 if (((word >> 29) & 0x1) == 0)
5975 /* 33222222222211111111110000000000
5976 10987654321098765432109876543210
5977 xxxxxxxxxx111000xxxxx110011100xx
5978 bic. */
5979 return 252;
5981 else
5983 /* 33222222222211111111110000000000
5984 10987654321098765432109876543210
5985 xxxxxxxxxx111000xxxxx110011101xx
5986 bsl. */
5987 return 291;
5990 else
5992 if (((word >> 29) & 0x1) == 0)
5994 /* 33222222222211111111110000000000
5995 10987654321098765432109876543210
5996 xxxxxxxxxx111000xxxxx111011100xx
5997 orn. */
5998 return 260;
6000 else
6002 /* 33222222222211111111110000000000
6003 10987654321098765432109876543210
6004 xxxxxxxxxx111000xxxxx111011101xx
6005 bif. */
6006 return 298;
6011 else
6013 if (((word >> 29) & 0x1) == 0)
6015 /* 33222222222211111111110000000000
6016 10987654321098765432109876543210
6017 xxxxxxxxxx111001xxxxx1xx011100xx
6018 mul. */
6019 return 239;
6021 else
6023 /* 33222222222211111111110000000000
6024 10987654321098765432109876543210
6025 xxxxxxxxxx111001xxxxx1xx011101xx
6026 pmul. */
6027 return 279;
6031 else
6033 if (((word >> 15) & 0x1) == 0)
6035 if (((word >> 29) & 0x1) == 0)
6037 /* 33222222222211111111110000000000
6038 10987654321098765432109876543210
6039 xxxxxxxxxx111010xxxxx1xx011100xx
6040 sqrshl. */
6041 return 231;
6043 else
6045 /* 33222222222211111111110000000000
6046 10987654321098765432109876543210
6047 xxxxxxxxxx111010xxxxx1xx011101xx
6048 uqrshl. */
6049 return 271;
6052 else
6054 if (((word >> 29) & 0x1) == 0)
6056 /* 33222222222211111111110000000000
6057 10987654321098765432109876543210
6058 xxxxxxxxxx111011xxxxx1xx011100xx
6059 fmulx. */
6060 return 247;
6062 else
6064 /* 33222222222211111111110000000000
6065 10987654321098765432109876543210
6066 xxxxxxxxxx111011xxxxx1xx011101xx
6067 fmul. */
6068 return 285;
6073 else
6075 if (((word >> 14) & 0x1) == 0)
6077 if (((word >> 15) & 0x1) == 0)
6079 if (((word >> 29) & 0x1) == 0)
6081 /* 33222222222211111111110000000000
6082 10987654321098765432109876543210
6083 xxxxxxxxxx111100xxxxx1xx011100xx
6084 cmge. */
6085 return 227;
6087 else
6089 /* 33222222222211111111110000000000
6090 10987654321098765432109876543210
6091 xxxxxxxxxx111100xxxxx1xx011101xx
6092 cmhs. */
6093 return 267;
6096 else
6098 /* 33222222222211111111110000000000
6099 10987654321098765432109876543210
6100 xxxxxxxxxx111101xxxxx1xx01110xxx
6101 addp. */
6102 return 243;
6105 else
6107 if (((word >> 15) & 0x1) == 0)
6109 if (((word >> 29) & 0x1) == 0)
6111 /* 33222222222211111111110000000000
6112 10987654321098765432109876543210
6113 xxxxxxxxxx111110xxxxx1xx011100xx
6114 saba. */
6115 return 235;
6117 else
6119 /* 33222222222211111111110000000000
6120 10987654321098765432109876543210
6121 xxxxxxxxxx111110xxxxx1xx011101xx
6122 uaba. */
6123 return 275;
6126 else
6128 if (((word >> 23) & 0x1) == 0)
6130 if (((word >> 29) & 0x1) == 0)
6132 /* 33222222222211111111110000000000
6133 10987654321098765432109876543210
6134 xxxxxxxxxx111111xxxxx1x0011100xx
6135 frecps. */
6136 return 250;
6138 else
6140 /* 33222222222211111111110000000000
6141 10987654321098765432109876543210
6142 xxxxxxxxxx111111xxxxx1x0011101xx
6143 fdiv. */
6144 return 289;
6147 else
6149 /* 33222222222211111111110000000000
6150 10987654321098765432109876543210
6151 xxxxxxxxxx111111xxxxx1x101110xxx
6152 frsqrts. */
6153 return 257;
6160 else
6162 if (((word >> 29) & 0x1) == 0)
6164 if (((word >> 30) & 0x1) == 0)
6166 /* 33222222222211111111110000000000
6167 10987654321098765432109876543210
6168 xxxxxxxxxx11xxxxxxxxx1xx0111100x
6169 fcsel. */
6170 return 636;
6172 else
6174 if (((word >> 12) & 0x1) == 0)
6176 if (((word >> 13) & 0x1) == 0)
6178 if (((word >> 14) & 0x1) == 0)
6180 if (((word >> 15) & 0x1) == 0)
6182 /* 33222222222211111111110000000000
6183 10987654321098765432109876543210
6184 xxxxxxxxxx110000xxxxx1xx0111101x
6185 sqadd. */
6186 return 434;
6188 else
6190 /* 33222222222211111111110000000000
6191 10987654321098765432109876543210
6192 xxxxxxxxxx110001xxxxx1xx0111101x
6193 cmtst. */
6194 return 448;
6197 else
6199 /* 33222222222211111111110000000000
6200 10987654321098765432109876543210
6201 xxxxxxxxxx11001xxxxxx1xx0111101x
6202 sqshl. */
6203 return 436;
6206 else
6208 /* 33222222222211111111110000000000
6209 10987654321098765432109876543210
6210 xxxxxxxxxx1101xxxxxxx1xx0111101x
6211 sqsub. */
6212 return 435;
6215 else
6217 if (((word >> 13) & 0x1) == 0)
6219 if (((word >> 15) & 0x1) == 0)
6221 /* 33222222222211111111110000000000
6222 10987654321098765432109876543210
6223 xxxxxxxxxx1110x0xxxxx1xx0111101x
6224 sqrshl. */
6225 return 437;
6227 else
6229 /* 33222222222211111111110000000000
6230 10987654321098765432109876543210
6231 xxxxxxxxxx1110x1xxxxx1xx0111101x
6232 fmulx. */
6233 return 439;
6236 else
6238 if (((word >> 14) & 0x1) == 0)
6240 /* 33222222222211111111110000000000
6241 10987654321098765432109876543210
6242 xxxxxxxxxx11110xxxxxx1xx0111101x
6243 cmge. */
6244 return 444;
6246 else
6248 if (((word >> 23) & 0x1) == 0)
6250 /* 33222222222211111111110000000000
6251 10987654321098765432109876543210
6252 xxxxxxxxxx11111xxxxxx1x00111101x
6253 frecps. */
6254 return 441;
6256 else
6258 /* 33222222222211111111110000000000
6259 10987654321098765432109876543210
6260 xxxxxxxxxx11111xxxxxx1x10111101x
6261 frsqrts. */
6262 return 442;
6269 else
6271 if (((word >> 12) & 0x1) == 0)
6273 if (((word >> 13) & 0x1) == 0)
6275 if (((word >> 14) & 0x1) == 0)
6277 if (((word >> 15) & 0x1) == 0)
6279 /* 33222222222211111111110000000000
6280 10987654321098765432109876543210
6281 xxxxxxxxxx110000xxxxx1xx011111xx
6282 uqadd. */
6283 return 449;
6285 else
6287 /* 33222222222211111111110000000000
6288 10987654321098765432109876543210
6289 xxxxxxxxxx110001xxxxx1xx011111xx
6290 cmeq. */
6291 return 464;
6294 else
6296 /* 33222222222211111111110000000000
6297 10987654321098765432109876543210
6298 xxxxxxxxxx11001xxxxxx1xx011111xx
6299 uqshl. */
6300 return 451;
6303 else
6305 if (((word >> 14) & 0x1) == 0)
6307 /* 33222222222211111111110000000000
6308 10987654321098765432109876543210
6309 xxxxxxxxxx11010xxxxxx1xx011111xx
6310 uqsub. */
6311 return 450;
6313 else
6315 if (((word >> 23) & 0x1) == 0)
6317 /* 33222222222211111111110000000000
6318 10987654321098765432109876543210
6319 xxxxxxxxxx11011xxxxxx1x0011111xx
6320 facge. */
6321 return 455;
6323 else
6325 /* 33222222222211111111110000000000
6326 10987654321098765432109876543210
6327 xxxxxxxxxx11011xxxxxx1x1011111xx
6328 facgt. */
6329 return 458;
6334 else
6336 if (((word >> 13) & 0x1) == 0)
6338 /* 33222222222211111111110000000000
6339 10987654321098765432109876543210
6340 xxxxxxxxxx1110xxxxxxx1xx011111xx
6341 uqrshl. */
6342 return 452;
6344 else
6346 /* 33222222222211111111110000000000
6347 10987654321098765432109876543210
6348 xxxxxxxxxx1111xxxxxxx1xx011111xx
6349 cmhs. */
6350 return 460;
6359 else
6361 if (((word >> 15) & 0x1) == 0)
6363 if (((word >> 28) & 0x1) == 0)
6365 if (((word >> 10) & 0x1) == 0)
6367 if (((word >> 12) & 0x1) == 0)
6369 if (((word >> 13) & 0x1) == 0)
6371 if (((word >> 14) & 0x1) == 0)
6373 /* 33222222222211111111110000000000
6374 10987654321098765432109876543210
6375 xxxxxxxxxx0x0000xxxxxxxx11110xxx
6376 mla. */
6377 return 110;
6379 else
6381 /* 33222222222211111111110000000000
6382 10987654321098765432109876543210
6383 xxxxxxxxxx0x0010xxxxxxxx11110xxx
6384 mls. */
6385 return 113;
6388 else
6390 if (((word >> 14) & 0x1) == 0)
6392 if (((word >> 29) & 0x1) == 0)
6394 if (((word >> 30) & 0x1) == 0)
6396 /* 33222222222211111111110000000000
6397 10987654321098765432109876543210
6398 xxxxxxxxxx0x0100xxxxxxxx1111000x
6399 smlal. */
6400 return 92;
6402 else
6404 /* 33222222222211111111110000000000
6405 10987654321098765432109876543210
6406 xxxxxxxxxx0x0100xxxxxxxx1111001x
6407 smlal2. */
6408 return 93;
6411 else
6413 if (((word >> 30) & 0x1) == 0)
6415 /* 33222222222211111111110000000000
6416 10987654321098765432109876543210
6417 xxxxxxxxxx0x0100xxxxxxxx1111010x
6418 umlal. */
6419 return 111;
6421 else
6423 /* 33222222222211111111110000000000
6424 10987654321098765432109876543210
6425 xxxxxxxxxx0x0100xxxxxxxx1111011x
6426 umlal2. */
6427 return 112;
6431 else
6433 if (((word >> 29) & 0x1) == 0)
6435 if (((word >> 30) & 0x1) == 0)
6437 /* 33222222222211111111110000000000
6438 10987654321098765432109876543210
6439 xxxxxxxxxx0x0110xxxxxxxx1111000x
6440 smlsl. */
6441 return 96;
6443 else
6445 /* 33222222222211111111110000000000
6446 10987654321098765432109876543210
6447 xxxxxxxxxx0x0110xxxxxxxx1111001x
6448 smlsl2. */
6449 return 97;
6452 else
6454 if (((word >> 30) & 0x1) == 0)
6456 /* 33222222222211111111110000000000
6457 10987654321098765432109876543210
6458 xxxxxxxxxx0x0110xxxxxxxx1111010x
6459 umlsl. */
6460 return 114;
6462 else
6464 /* 33222222222211111111110000000000
6465 10987654321098765432109876543210
6466 xxxxxxxxxx0x0110xxxxxxxx1111011x
6467 umlsl2. */
6468 return 115;
6474 else
6476 if (((word >> 13) & 0x1) == 0)
6478 if (((word >> 14) & 0x1) == 0)
6480 /* 33222222222211111111110000000000
6481 10987654321098765432109876543210
6482 xxxxxxxxxx0x1000xxxxxxxx11110xxx
6483 fmla. */
6484 return 107;
6486 else
6488 /* 33222222222211111111110000000000
6489 10987654321098765432109876543210
6490 xxxxxxxxxx0x1010xxxxxxxx11110xxx
6491 fmls. */
6492 return 108;
6495 else
6497 if (((word >> 14) & 0x1) == 0)
6499 if (((word >> 30) & 0x1) == 0)
6501 /* 33222222222211111111110000000000
6502 10987654321098765432109876543210
6503 xxxxxxxxxx0x1100xxxxxxxx11110x0x
6504 sqdmlal. */
6505 return 94;
6507 else
6509 /* 33222222222211111111110000000000
6510 10987654321098765432109876543210
6511 xxxxxxxxxx0x1100xxxxxxxx11110x1x
6512 sqdmlal2. */
6513 return 95;
6516 else
6518 if (((word >> 30) & 0x1) == 0)
6520 /* 33222222222211111111110000000000
6521 10987654321098765432109876543210
6522 xxxxxxxxxx0x1110xxxxxxxx11110x0x
6523 sqdmlsl. */
6524 return 98;
6526 else
6528 /* 33222222222211111111110000000000
6529 10987654321098765432109876543210
6530 xxxxxxxxxx0x1110xxxxxxxx11110x1x
6531 sqdmlsl2. */
6532 return 99;
6538 else
6540 if (((word >> 12) & 0x1) == 0)
6542 if (((word >> 29) & 0x1) == 0)
6544 /* 33222222222211111111110000000000
6545 10987654321098765432109876543210
6546 xxxxxxxxxx1x0xx0xxxxxxxx111100xx
6547 movi. */
6548 return 120;
6550 else
6552 /* 33222222222211111111110000000000
6553 10987654321098765432109876543210
6554 xxxxxxxxxx1x0xx0xxxxxxxx111101xx
6555 mvni. */
6556 return 127;
6559 else
6561 if (((word >> 29) & 0x1) == 0)
6563 /* 33222222222211111111110000000000
6564 10987654321098765432109876543210
6565 xxxxxxxxxx1x1xx0xxxxxxxx111100xx
6566 orr. */
6567 return 121;
6569 else
6571 /* 33222222222211111111110000000000
6572 10987654321098765432109876543210
6573 xxxxxxxxxx1x1xx0xxxxxxxx111101xx
6574 bic. */
6575 return 128;
6580 else
6582 if (((word >> 29) & 0x1) == 0)
6584 if (((word >> 30) & 0x1) == 0)
6586 if (((word >> 21) & 0x1) == 0)
6588 /* 33222222222211111111110000000000
6589 10987654321098765432109876543210
6590 xxxxxxxxxxxxxxx0xxxxx0xx1111100x
6591 fmadd. */
6592 return 631;
6594 else
6596 /* 33222222222211111111110000000000
6597 10987654321098765432109876543210
6598 xxxxxxxxxxxxxxx0xxxxx1xx1111100x
6599 fnmadd. */
6600 return 633;
6603 else
6605 if (((word >> 10) & 0x1) == 0)
6607 if (((word >> 13) & 0x1) == 0)
6609 if (((word >> 14) & 0x1) == 0)
6611 /* 33222222222211111111110000000000
6612 10987654321098765432109876543210
6613 xxxxxxxxxx0xx000xxxxxxxx1111101x
6614 fmla. */
6615 return 347;
6617 else
6619 /* 33222222222211111111110000000000
6620 10987654321098765432109876543210
6621 xxxxxxxxxx0xx010xxxxxxxx1111101x
6622 fmls. */
6623 return 348;
6626 else
6628 if (((word >> 14) & 0x1) == 0)
6630 /* 33222222222211111111110000000000
6631 10987654321098765432109876543210
6632 xxxxxxxxxx0xx100xxxxxxxx1111101x
6633 sqdmlal. */
6634 return 342;
6636 else
6638 /* 33222222222211111111110000000000
6639 10987654321098765432109876543210
6640 xxxxxxxxxx0xx110xxxxxxxx1111101x
6641 sqdmlsl. */
6642 return 343;
6646 else
6648 if (((word >> 12) & 0x1) == 0)
6650 if (((word >> 13) & 0x1) == 0)
6652 /* 33222222222211111111110000000000
6653 10987654321098765432109876543210
6654 xxxxxxxxxx1x00x0xxxxxxxx1111101x
6655 sshr. */
6656 return 465;
6658 else
6660 /* 33222222222211111111110000000000
6661 10987654321098765432109876543210
6662 xxxxxxxxxx1x01x0xxxxxxxx1111101x
6663 srshr. */
6664 return 467;
6667 else
6669 if (((word >> 13) & 0x1) == 0)
6671 if (((word >> 14) & 0x1) == 0)
6673 /* 33222222222211111111110000000000
6674 10987654321098765432109876543210
6675 xxxxxxxxxx1x1000xxxxxxxx1111101x
6676 ssra. */
6677 return 466;
6679 else
6681 /* 33222222222211111111110000000000
6682 10987654321098765432109876543210
6683 xxxxxxxxxx1x1010xxxxxxxx1111101x
6684 shl. */
6685 return 469;
6688 else
6690 if (((word >> 14) & 0x1) == 0)
6692 /* 33222222222211111111110000000000
6693 10987654321098765432109876543210
6694 xxxxxxxxxx1x1100xxxxxxxx1111101x
6695 srsra. */
6696 return 468;
6698 else
6700 /* 33222222222211111111110000000000
6701 10987654321098765432109876543210
6702 xxxxxxxxxx1x1110xxxxxxxx1111101x
6703 sqshl. */
6704 return 470;
6711 else
6713 if (((word >> 12) & 0x1) == 0)
6715 if (((word >> 13) & 0x1) == 0)
6717 if (((word >> 14) & 0x1) == 0)
6719 /* 33222222222211111111110000000000
6720 10987654321098765432109876543210
6721 xxxxxxxxxxxx0000xxxxxxxx111111xx
6722 ushr. */
6723 return 475;
6725 else
6727 /* 33222222222211111111110000000000
6728 10987654321098765432109876543210
6729 xxxxxxxxxxxx0010xxxxxxxx111111xx
6730 sri. */
6731 return 479;
6734 else
6736 if (((word >> 14) & 0x1) == 0)
6738 /* 33222222222211111111110000000000
6739 10987654321098765432109876543210
6740 xxxxxxxxxxxx0100xxxxxxxx111111xx
6741 urshr. */
6742 return 477;
6744 else
6746 /* 33222222222211111111110000000000
6747 10987654321098765432109876543210
6748 xxxxxxxxxxxx0110xxxxxxxx111111xx
6749 sqshlu. */
6750 return 481;
6754 else
6756 if (((word >> 13) & 0x1) == 0)
6758 if (((word >> 14) & 0x1) == 0)
6760 /* 33222222222211111111110000000000
6761 10987654321098765432109876543210
6762 xxxxxxxxxxxx1000xxxxxxxx111111xx
6763 usra. */
6764 return 476;
6766 else
6768 /* 33222222222211111111110000000000
6769 10987654321098765432109876543210
6770 xxxxxxxxxxxx1010xxxxxxxx111111xx
6771 sli. */
6772 return 480;
6775 else
6777 if (((word >> 14) & 0x1) == 0)
6779 /* 33222222222211111111110000000000
6780 10987654321098765432109876543210
6781 xxxxxxxxxxxx1100xxxxxxxx111111xx
6782 ursra. */
6783 return 478;
6785 else
6787 /* 33222222222211111111110000000000
6788 10987654321098765432109876543210
6789 xxxxxxxxxxxx1110xxxxxxxx111111xx
6790 uqshl. */
6791 return 482;
6798 else
6800 if (((word >> 28) & 0x1) == 0)
6802 if (((word >> 10) & 0x1) == 0)
6804 if (((word >> 12) & 0x1) == 0)
6806 if (((word >> 13) & 0x1) == 0)
6808 if (((word >> 14) & 0x1) == 0)
6810 /* 33222222222211111111110000000000
6811 10987654321098765432109876543210
6812 xxxxxxxxxx0x0001xxxxxxxx11110xxx
6813 mul. */
6814 return 100;
6816 else
6818 /* 33222222222211111111110000000000
6819 10987654321098765432109876543210
6820 xxxxxxxxxx0x0011xxxxxxxx11110xxx
6821 sqdmulh. */
6822 return 105;
6825 else
6827 if (((word >> 29) & 0x1) == 0)
6829 if (((word >> 30) & 0x1) == 0)
6831 /* 33222222222211111111110000000000
6832 10987654321098765432109876543210
6833 xxxxxxxxxx0x01x1xxxxxxxx1111000x
6834 smull. */
6835 return 101;
6837 else
6839 /* 33222222222211111111110000000000
6840 10987654321098765432109876543210
6841 xxxxxxxxxx0x01x1xxxxxxxx1111001x
6842 smull2. */
6843 return 102;
6846 else
6848 if (((word >> 30) & 0x1) == 0)
6850 /* 33222222222211111111110000000000
6851 10987654321098765432109876543210
6852 xxxxxxxxxx0x01x1xxxxxxxx1111010x
6853 umull. */
6854 return 116;
6856 else
6858 /* 33222222222211111111110000000000
6859 10987654321098765432109876543210
6860 xxxxxxxxxx0x01x1xxxxxxxx1111011x
6861 umull2. */
6862 return 117;
6867 else
6869 if (((word >> 13) & 0x1) == 0)
6871 if (((word >> 14) & 0x1) == 0)
6873 if (((word >> 29) & 0x1) == 0)
6875 /* 33222222222211111111110000000000
6876 10987654321098765432109876543210
6877 xxxxxxxxxx0x1001xxxxxxxx111100xx
6878 fmul. */
6879 return 109;
6881 else
6883 /* 33222222222211111111110000000000
6884 10987654321098765432109876543210
6885 xxxxxxxxxx0x1001xxxxxxxx111101xx
6886 fmulx. */
6887 return 118;
6890 else
6892 /* 33222222222211111111110000000000
6893 10987654321098765432109876543210
6894 xxxxxxxxxx0x1011xxxxxxxx11110xxx
6895 sqrdmulh. */
6896 return 106;
6899 else
6901 if (((word >> 30) & 0x1) == 0)
6903 /* 33222222222211111111110000000000
6904 10987654321098765432109876543210
6905 xxxxxxxxxx0x11x1xxxxxxxx11110x0x
6906 sqdmull. */
6907 return 103;
6909 else
6911 /* 33222222222211111111110000000000
6912 10987654321098765432109876543210
6913 xxxxxxxxxx0x11x1xxxxxxxx11110x1x
6914 sqdmull2. */
6915 return 104;
6920 else
6922 if (((word >> 11) & 0x1) == 0)
6924 if (((word >> 14) & 0x1) == 0)
6926 if (((word >> 12) & 0x1) == 0)
6928 if (((word >> 29) & 0x1) == 0)
6930 /* 33222222222211111111110000000000
6931 10987654321098765432109876543210
6932 xxxxxxxxxx100x01xxxxxxxx111100xx
6933 movi. */
6934 return 122;
6936 else
6938 /* 33222222222211111111110000000000
6939 10987654321098765432109876543210
6940 xxxxxxxxxx100x01xxxxxxxx111101xx
6941 mvni. */
6942 return 129;
6945 else
6947 if (((word >> 29) & 0x1) == 0)
6949 /* 33222222222211111111110000000000
6950 10987654321098765432109876543210
6951 xxxxxxxxxx101x01xxxxxxxx111100xx
6952 orr. */
6953 return 123;
6955 else
6957 /* 33222222222211111111110000000000
6958 10987654321098765432109876543210
6959 xxxxxxxxxx101x01xxxxxxxx111101xx
6960 bic. */
6961 return 130;
6965 else
6967 if (((word >> 13) & 0x1) == 0)
6969 if (((word >> 29) & 0x1) == 0)
6971 /* 33222222222211111111110000000000
6972 10987654321098765432109876543210
6973 xxxxxxxxxx10x011xxxxxxxx111100xx
6974 movi. */
6975 return 124;
6977 else
6979 /* 33222222222211111111110000000000
6980 10987654321098765432109876543210
6981 xxxxxxxxxx10x011xxxxxxxx111101xx
6982 mvni. */
6983 return 131;
6986 else
6988 if (((word >> 12) & 0x1) == 0)
6990 if (((word >> 29) & 0x1) == 0)
6992 /* 33222222222211111111110000000000
6993 10987654321098765432109876543210
6994 xxxxxxxxxx100111xxxxxxxx111100xx
6995 movi. */
6996 return 125;
6998 else
7000 /* 33222222222211111111110000000000
7001 10987654321098765432109876543210
7002 xxxxxxxxxx100111xxxxxxxx111101xx
7003 movi. */
7004 return 132;
7007 else
7009 if (((word >> 29) & 0x1) == 0)
7011 /* 33222222222211111111110000000000
7012 10987654321098765432109876543210
7013 xxxxxxxxxx101111xxxxxxxx111100xx
7014 fmov. */
7015 return 126;
7017 else
7019 /* 33222222222211111111110000000000
7020 10987654321098765432109876543210
7021 xxxxxxxxxx101111xxxxxxxx111101xx
7022 fmov. */
7023 return 134;
7029 else
7031 if (((word >> 12) & 0x1) == 0)
7033 if (((word >> 29) & 0x1) == 0)
7035 if (((word >> 30) & 0x1) == 0)
7037 /* 33222222222211111111110000000000
7038 10987654321098765432109876543210
7039 xxxxxxxxxx110xx1xxxxxxxx1111000x
7040 rshrn. */
7041 return 307;
7043 else
7045 /* 33222222222211111111110000000000
7046 10987654321098765432109876543210
7047 xxxxxxxxxx110xx1xxxxxxxx1111001x
7048 rshrn2. */
7049 return 308;
7052 else
7054 if (((word >> 30) & 0x1) == 0)
7056 /* 33222222222211111111110000000000
7057 10987654321098765432109876543210
7058 xxxxxxxxxx110xx1xxxxxxxx1111010x
7059 sqrshrun. */
7060 return 327;
7062 else
7064 /* 33222222222211111111110000000000
7065 10987654321098765432109876543210
7066 xxxxxxxxxx110xx1xxxxxxxx1111011x
7067 sqrshrun2. */
7068 return 328;
7072 else
7074 if (((word >> 13) & 0x1) == 0)
7076 if (((word >> 29) & 0x1) == 0)
7078 if (((word >> 30) & 0x1) == 0)
7080 /* 33222222222211111111110000000000
7081 10987654321098765432109876543210
7082 xxxxxxxxxx1110x1xxxxxxxx1111000x
7083 sqrshrn. */
7084 return 311;
7086 else
7088 /* 33222222222211111111110000000000
7089 10987654321098765432109876543210
7090 xxxxxxxxxx1110x1xxxxxxxx1111001x
7091 sqrshrn2. */
7092 return 312;
7095 else
7097 if (((word >> 30) & 0x1) == 0)
7099 /* 33222222222211111111110000000000
7100 10987654321098765432109876543210
7101 xxxxxxxxxx1110x1xxxxxxxx1111010x
7102 uqrshrn. */
7103 return 331;
7105 else
7107 /* 33222222222211111111110000000000
7108 10987654321098765432109876543210
7109 xxxxxxxxxx1110x1xxxxxxxx1111011x
7110 uqrshrn2. */
7111 return 332;
7115 else
7117 if (((word >> 29) & 0x1) == 0)
7119 /* 33222222222211111111110000000000
7120 10987654321098765432109876543210
7121 xxxxxxxxxx1111x1xxxxxxxx111100xx
7122 fcvtzs. */
7123 return 316;
7125 else
7127 /* 33222222222211111111110000000000
7128 10987654321098765432109876543210
7129 xxxxxxxxxx1111x1xxxxxxxx111101xx
7130 fcvtzu. */
7131 return 336;
7138 else
7140 if (((word >> 29) & 0x1) == 0)
7142 if (((word >> 30) & 0x1) == 0)
7144 if (((word >> 21) & 0x1) == 0)
7146 /* 33222222222211111111110000000000
7147 10987654321098765432109876543210
7148 xxxxxxxxxxxxxxx1xxxxx0xx1111100x
7149 fmsub. */
7150 return 632;
7152 else
7154 /* 33222222222211111111110000000000
7155 10987654321098765432109876543210
7156 xxxxxxxxxxxxxxx1xxxxx1xx1111100x
7157 fnmsub. */
7158 return 634;
7161 else
7163 if (((word >> 10) & 0x1) == 0)
7165 if (((word >> 12) & 0x1) == 0)
7167 /* 33222222222211111111110000000000
7168 10987654321098765432109876543210
7169 xxxxxxxxxx0x0xx1xxxxxxxx1111101x
7170 sqdmulh. */
7171 return 345;
7173 else
7175 if (((word >> 13) & 0x1) == 0)
7177 if (((word >> 14) & 0x1) == 0)
7179 /* 33222222222211111111110000000000
7180 10987654321098765432109876543210
7181 xxxxxxxxxx0x1001xxxxxxxx1111101x
7182 fmul. */
7183 return 349;
7185 else
7187 /* 33222222222211111111110000000000
7188 10987654321098765432109876543210
7189 xxxxxxxxxx0x1011xxxxxxxx1111101x
7190 sqrdmulh. */
7191 return 346;
7194 else
7196 /* 33222222222211111111110000000000
7197 10987654321098765432109876543210
7198 xxxxxxxxxx0x11x1xxxxxxxx1111101x
7199 sqdmull. */
7200 return 344;
7204 else
7206 if (((word >> 11) & 0x1) == 0)
7208 if (((word >> 12) & 0x1) == 0)
7210 /* 33222222222211111111110000000000
7211 10987654321098765432109876543210
7212 xxxxxxxxxx100xx1xxxxxxxx1111101x
7213 scvtf. */
7214 return 473;
7216 else
7218 /* 33222222222211111111110000000000
7219 10987654321098765432109876543210
7220 xxxxxxxxxx101xx1xxxxxxxx1111101x
7221 sqshrn. */
7222 return 471;
7225 else
7227 if (((word >> 13) & 0x1) == 0)
7229 /* 33222222222211111111110000000000
7230 10987654321098765432109876543210
7231 xxxxxxxxxx11x0x1xxxxxxxx1111101x
7232 sqrshrn. */
7233 return 472;
7235 else
7237 /* 33222222222211111111110000000000
7238 10987654321098765432109876543210
7239 xxxxxxxxxx11x1x1xxxxxxxx1111101x
7240 fcvtzs. */
7241 return 474;
7247 else
7249 if (((word >> 10) & 0x1) == 0)
7251 /* 33222222222211111111110000000000
7252 10987654321098765432109876543210
7253 xxxxxxxxxx0xxxx1xxxxxxxx111111xx
7254 fmulx. */
7255 return 350;
7257 else
7259 if (((word >> 11) & 0x1) == 0)
7261 if (((word >> 12) & 0x1) == 0)
7263 if (((word >> 13) & 0x1) == 0)
7265 /* 33222222222211111111110000000000
7266 10987654321098765432109876543210
7267 xxxxxxxxxx1000x1xxxxxxxx111111xx
7268 sqshrun. */
7269 return 483;
7271 else
7273 /* 33222222222211111111110000000000
7274 10987654321098765432109876543210
7275 xxxxxxxxxx1001x1xxxxxxxx111111xx
7276 ucvtf. */
7277 return 487;
7280 else
7282 /* 33222222222211111111110000000000
7283 10987654321098765432109876543210
7284 xxxxxxxxxx101xx1xxxxxxxx111111xx
7285 uqshrn. */
7286 return 485;
7289 else
7291 if (((word >> 12) & 0x1) == 0)
7293 /* 33222222222211111111110000000000
7294 10987654321098765432109876543210
7295 xxxxxxxxxx110xx1xxxxxxxx111111xx
7296 sqrshrun. */
7297 return 484;
7299 else
7301 if (((word >> 13) & 0x1) == 0)
7303 /* 33222222222211111111110000000000
7304 10987654321098765432109876543210
7305 xxxxxxxxxx1110x1xxxxxxxx111111xx
7306 uqrshrn. */
7307 return 486;
7309 else
7311 /* 33222222222211111111110000000000
7312 10987654321098765432109876543210
7313 xxxxxxxxxx1111x1xxxxxxxx111111xx
7314 fcvtzu. */
7315 return 488;
7329 /* Lookup opcode WORD in the opcode table. N.B. all alias
7330 opcodes are ignored here. */
7332 const aarch64_opcode *
7333 aarch64_opcode_lookup (uint32_t word)
7335 return aarch64_opcode_table + aarch64_opcode_lookup_1 (word);
7338 const aarch64_opcode *
7339 aarch64_find_next_opcode (const aarch64_opcode *opcode)
7341 /* Use the index as the key to locate the next opcode. */
7342 int key = opcode - aarch64_opcode_table;
7343 int value;
7344 switch (key)
7346 case 727: value = 731; break; /* stnp --> stp. */
7347 case 731: return NULL; /* stp --> NULL. */
7348 case 728: value = 732; break; /* ldnp --> ldp. */
7349 case 732: return NULL; /* ldp --> NULL. */
7350 case 351: value = 352; break; /* st4 --> st1. */
7351 case 352: value = 353; break; /* st1 --> st2. */
7352 case 353: value = 354; break; /* st2 --> st3. */
7353 case 354: return NULL; /* st3 --> NULL. */
7354 case 359: value = 360; break; /* st4 --> st1. */
7355 case 360: value = 361; break; /* st1 --> st2. */
7356 case 361: value = 362; break; /* st2 --> st3. */
7357 case 362: return NULL; /* st3 --> NULL. */
7358 case 355: value = 356; break; /* ld4 --> ld1. */
7359 case 356: value = 357; break; /* ld1 --> ld2. */
7360 case 357: value = 358; break; /* ld2 --> ld3. */
7361 case 358: return NULL; /* ld3 --> NULL. */
7362 case 371: value = 373; break; /* ld1 --> ld1r. */
7363 case 373: return NULL; /* ld1r --> NULL. */
7364 case 375: value = 377; break; /* ld2 --> ld2r. */
7365 case 377: return NULL; /* ld2r --> NULL. */
7366 case 372: value = 374; break; /* ld3 --> ld3r. */
7367 case 374: return NULL; /* ld3r --> NULL. */
7368 case 376: value = 378; break; /* ld4 --> ld4r. */
7369 case 378: return NULL; /* ld4r --> NULL. */
7370 case 363: value = 364; break; /* ld4 --> ld1. */
7371 case 364: value = 365; break; /* ld1 --> ld2. */
7372 case 365: value = 366; break; /* ld2 --> ld3. */
7373 case 366: return NULL; /* ld3 --> NULL. */
7374 case 383: value = 385; break; /* ld1 --> ld1r. */
7375 case 385: return NULL; /* ld1r --> NULL. */
7376 case 384: value = 386; break; /* ld3 --> ld3r. */
7377 case 386: return NULL; /* ld3r --> NULL. */
7378 case 387: value = 389; break; /* ld2 --> ld2r. */
7379 case 389: return NULL; /* ld2r --> NULL. */
7380 case 388: value = 390; break; /* ld4 --> ld4r. */
7381 case 390: return NULL; /* ld4r --> NULL. */
7382 case 120: value = 299; break; /* movi --> sshr. */
7383 case 299: value = 301; break; /* sshr --> srshr. */
7384 case 301: return NULL; /* srshr --> NULL. */
7385 case 127: value = 317; break; /* mvni --> ushr. */
7386 case 317: value = 319; break; /* ushr --> urshr. */
7387 case 319: value = 321; break; /* urshr --> sri. */
7388 case 321: value = 323; break; /* sri --> sqshlu. */
7389 case 323: return NULL; /* sqshlu --> NULL. */
7390 case 121: value = 300; break; /* orr --> ssra. */
7391 case 300: value = 302; break; /* ssra --> srsra. */
7392 case 302: value = 303; break; /* srsra --> shl. */
7393 case 303: value = 304; break; /* shl --> sqshl. */
7394 case 304: return NULL; /* sqshl --> NULL. */
7395 case 128: value = 318; break; /* bic --> usra. */
7396 case 318: value = 320; break; /* usra --> ursra. */
7397 case 320: value = 322; break; /* ursra --> sli. */
7398 case 322: value = 324; break; /* sli --> uqshl. */
7399 case 324: return NULL; /* uqshl --> NULL. */
7400 case 122: value = 305; break; /* movi --> shrn. */
7401 case 305: value = 306; break; /* shrn --> shrn2. */
7402 case 306: value = 313; break; /* shrn2 --> sshll. */
7403 case 313: value = 314; break; /* sshll --> sshll2. */
7404 case 314: return NULL; /* sshll2 --> NULL. */
7405 case 129: value = 325; break; /* mvni --> sqshrun. */
7406 case 325: value = 326; break; /* sqshrun --> sqshrun2. */
7407 case 326: value = 333; break; /* sqshrun2 --> ushll. */
7408 case 333: value = 334; break; /* ushll --> ushll2. */
7409 case 334: return NULL; /* ushll2 --> NULL. */
7410 case 123: value = 309; break; /* orr --> sqshrn. */
7411 case 309: value = 310; break; /* sqshrn --> sqshrn2. */
7412 case 310: return NULL; /* sqshrn2 --> NULL. */
7413 case 130: value = 329; break; /* bic --> uqshrn. */
7414 case 329: value = 330; break; /* uqshrn --> uqshrn2. */
7415 case 330: return NULL; /* uqshrn2 --> NULL. */
7416 case 125: value = 315; break; /* movi --> scvtf. */
7417 case 315: return NULL; /* scvtf --> NULL. */
7418 case 132: value = 133; break; /* movi --> movi. */
7419 case 133: value = 335; break; /* movi --> ucvtf. */
7420 case 335: return NULL; /* ucvtf --> NULL. */
7421 default: return NULL;
7424 return aarch64_opcode_table + value;
7427 const aarch64_opcode *
7428 aarch64_find_alias_opcode (const aarch64_opcode *opcode)
7430 /* Use the index as the key to locate the alias opcode. */
7431 int key = opcode - aarch64_opcode_table;
7432 int value;
7433 switch (key)
7435 case 2: value = 3; break; /* sbc --> ngc. */
7436 case 4: value = 5; break; /* sbcs --> ngcs. */
7437 case 7: value = 8; break; /* adds --> cmn. */
7438 case 10: value = 11; break; /* subs --> cmp. */
7439 case 12: value = 13; break; /* add --> mov. */
7440 case 14: value = 15; break; /* adds --> cmn. */
7441 case 17: value = 18; break; /* subs --> cmp. */
7442 case 20: value = 21; break; /* adds --> cmn. */
7443 case 22: value = 23; break; /* sub --> neg. */
7444 case 24: value = 26; break; /* subs --> negs. */
7445 case 138: value = 139; break; /* umov --> mov. */
7446 case 140: value = 141; break; /* ins --> mov. */
7447 case 142: value = 143; break; /* ins --> mov. */
7448 case 203: value = 204; break; /* not --> mvn. */
7449 case 258: value = 259; break; /* orr --> mov. */
7450 case 426: value = 427; break; /* dup --> mov. */
7451 case 489: value = 494; break; /* sbfm --> sxtw. */
7452 case 496: value = 498; break; /* bfm --> bfxil. */
7453 case 499: value = 503; break; /* ubfm --> uxth. */
7454 case 521: value = 523; break; /* csinc --> cset. */
7455 case 524: value = 526; break; /* csinv --> csetm. */
7456 case 527: value = 528; break; /* csneg --> cneg. */
7457 case 552: value = 553; break; /* lslv --> lsl. */
7458 case 554: value = 555; break; /* lsrv --> lsr. */
7459 case 556: value = 557; break; /* asrv --> asr. */
7460 case 558: value = 559; break; /* rorv --> ror. */
7461 case 560: value = 561; break; /* madd --> mul. */
7462 case 562: value = 563; break; /* msub --> mneg. */
7463 case 564: value = 565; break; /* smaddl --> smull. */
7464 case 566: value = 567; break; /* smsubl --> smnegl. */
7465 case 569: value = 570; break; /* umaddl --> umull. */
7466 case 571: value = 572; break; /* umsubl --> umnegl. */
7467 case 582: value = 583; break; /* extr --> ror. */
7468 case 681: value = 683; break; /* sturb --> strb. */
7469 case 682: value = 684; break; /* ldurb --> ldrb. */
7470 case 685: value = 686; break; /* ldursb --> ldrsb. */
7471 case 687: value = 689; break; /* stur --> str. */
7472 case 688: value = 690; break; /* ldur --> ldr. */
7473 case 691: value = 693; break; /* sturh --> strh. */
7474 case 692: value = 694; break; /* ldurh --> ldrh. */
7475 case 695: value = 696; break; /* ldursh --> ldrsh. */
7476 case 697: value = 699; break; /* stur --> str. */
7477 case 698: value = 700; break; /* ldur --> ldr. */
7478 case 701: value = 702; break; /* ldursw --> ldrsw. */
7479 case 703: value = 704; break; /* prfum --> prfm. */
7480 case 745: value = 746; break; /* and --> bic. */
7481 case 747: value = 748; break; /* orr --> mov. */
7482 case 750: value = 751; break; /* ands --> tst. */
7483 case 754: value = 756; break; /* orr --> uxtw. */
7484 case 757: value = 758; break; /* orn --> mvn. */
7485 case 761: value = 762; break; /* ands --> tst. */
7486 case 764: value = 765; break; /* movn --> mov. */
7487 case 766: value = 767; break; /* movz --> mov. */
7488 case 772: value = 778; break; /* hint --> sevl. */
7489 case 783: value = 787; break; /* sys --> tlbi. */
7490 default: return NULL;
7493 return aarch64_opcode_table + value;
7496 const aarch64_opcode *
7497 aarch64_find_next_alias_opcode (const aarch64_opcode *opcode)
7499 /* Use the index as the key to locate the next opcode. */
7500 int key = opcode - aarch64_opcode_table;
7501 int value;
7502 switch (key)
7504 case 26: value = 25; break; /* negs --> cmp. */
7505 case 494: value = 493; break; /* sxtw --> sxth. */
7506 case 493: value = 492; break; /* sxth --> sxtb. */
7507 case 492: value = 495; break; /* sxtb --> asr. */
7508 case 495: value = 491; break; /* asr --> sbfx. */
7509 case 491: value = 490; break; /* sbfx --> sbfiz. */
7510 case 498: value = 497; break; /* bfxil --> bfi. */
7511 case 503: value = 502; break; /* uxth --> uxtb. */
7512 case 502: value = 505; break; /* uxtb --> lsr. */
7513 case 505: value = 504; break; /* lsr --> lsl. */
7514 case 504: value = 501; break; /* lsl --> ubfx. */
7515 case 501: value = 500; break; /* ubfx --> ubfiz. */
7516 case 523: value = 522; break; /* cset --> cinc. */
7517 case 526: value = 525; break; /* csetm --> cinv. */
7518 case 756: value = 755; break; /* uxtw --> mov. */
7519 case 778: value = 777; break; /* sevl --> sev. */
7520 case 777: value = 776; break; /* sev --> wfi. */
7521 case 776: value = 775; break; /* wfi --> wfe. */
7522 case 775: value = 774; break; /* wfe --> yield. */
7523 case 774: value = 773; break; /* yield --> nop. */
7524 case 787: value = 786; break; /* tlbi --> ic. */
7525 case 786: value = 785; break; /* ic --> dc. */
7526 case 785: value = 784; break; /* dc --> at. */
7527 default: return NULL;
7530 return aarch64_opcode_table + value;
7534 aarch64_extract_operand (const aarch64_operand *self,
7535 aarch64_opnd_info *info,
7536 aarch64_insn code, const aarch64_inst *inst)
7538 /* Use the index as the key. */
7539 int key = self - aarch64_operands;
7540 switch (key)
7542 case 1:
7543 case 2:
7544 case 3:
7545 case 4:
7546 case 5:
7547 case 6:
7548 case 7:
7549 case 9:
7550 case 10:
7551 case 13:
7552 case 14:
7553 case 15:
7554 case 16:
7555 case 18:
7556 case 19:
7557 case 20:
7558 case 21:
7559 case 22:
7560 case 23:
7561 case 24:
7562 case 25:
7563 case 26:
7564 case 34:
7565 case 35:
7566 return aarch64_ext_regno (self, info, code, inst);
7567 case 8:
7568 return aarch64_ext_regrt_sysins (self, info, code, inst);
7569 case 11:
7570 return aarch64_ext_reg_extended (self, info, code, inst);
7571 case 12:
7572 return aarch64_ext_reg_shifted (self, info, code, inst);
7573 case 17:
7574 return aarch64_ext_ft (self, info, code, inst);
7575 case 27:
7576 case 28:
7577 case 29:
7578 return aarch64_ext_reglane (self, info, code, inst);
7579 case 30:
7580 return aarch64_ext_reglist (self, info, code, inst);
7581 case 31:
7582 return aarch64_ext_ldst_reglist (self, info, code, inst);
7583 case 32:
7584 return aarch64_ext_ldst_reglist_r (self, info, code, inst);
7585 case 33:
7586 return aarch64_ext_ldst_elemlist (self, info, code, inst);
7587 case 36:
7588 case 45:
7589 case 46:
7590 case 47:
7591 case 48:
7592 case 49:
7593 case 50:
7594 case 51:
7595 case 52:
7596 case 53:
7597 case 54:
7598 case 55:
7599 case 56:
7600 case 57:
7601 case 64:
7602 case 65:
7603 case 66:
7604 case 67:
7605 case 68:
7606 return aarch64_ext_imm (self, info, code, inst);
7607 case 37:
7608 case 38:
7609 return aarch64_ext_advsimd_imm_shift (self, info, code, inst);
7610 case 39:
7611 case 40:
7612 case 41:
7613 return aarch64_ext_advsimd_imm_modified (self, info, code, inst);
7614 case 42:
7615 return aarch64_ext_shll_imm (self, info, code, inst);
7616 case 58:
7617 return aarch64_ext_limm (self, info, code, inst);
7618 case 59:
7619 return aarch64_ext_aimm (self, info, code, inst);
7620 case 60:
7621 return aarch64_ext_imm_half (self, info, code, inst);
7622 case 61:
7623 return aarch64_ext_fbits (self, info, code, inst);
7624 case 63:
7625 return aarch64_ext_cond (self, info, code, inst);
7626 case 69:
7627 case 75:
7628 return aarch64_ext_addr_simple (self, info, code, inst);
7629 case 70:
7630 return aarch64_ext_addr_regoff (self, info, code, inst);
7631 case 71:
7632 case 72:
7633 case 73:
7634 return aarch64_ext_addr_simm (self, info, code, inst);
7635 case 74:
7636 return aarch64_ext_addr_uimm12 (self, info, code, inst);
7637 case 76:
7638 return aarch64_ext_simd_addr_post (self, info, code, inst);
7639 case 77:
7640 return aarch64_ext_sysreg (self, info, code, inst);
7641 case 78:
7642 return aarch64_ext_pstatefield (self, info, code, inst);
7643 case 79:
7644 case 80:
7645 case 81:
7646 case 82:
7647 return aarch64_ext_sysins_op (self, info, code, inst);
7648 case 83:
7649 case 84:
7650 return aarch64_ext_barrier (self, info, code, inst);
7651 case 85:
7652 return aarch64_ext_prfop (self, info, code, inst);
7653 default: assert (0); abort ();