Re-add support for lbarx, lharx, stbcx. and sthcx. insns back to the E6500 cpu.
[binutils-gdb.git] / opcodes / aarch64-dis-2.c
blob8e85dbf2e27c66831dab69f940c8bbd1ca4d9dd5
1 /* This file is automatically generated by aarch64-gen. Do not edit! */
2 /* Copyright (C) 2012-2016 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 1115;
45 else
47 /* 33222222222211111111110000000000
48 10987654321098765432109876543210
49 xxxxxxxxxxxxxxxxxxxxxxxx0000xxx1
50 adrp. */
51 return 1116;
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 873;
120 else
122 /* 33222222222211111111110000000000
123 10987654321098765432109876543210
124 xxxxxxxxxxxxxxx0xxxxx000x0010010
125 stxrh. */
126 return 879;
129 else
131 /* 33222222222211111111110000000000
132 10987654321098765432109876543210
133 xxxxxxxxxxxxxxx0xxxxx000x00100x1
134 stxr. */
135 return 885;
138 else
140 if (((word >> 31) & 0x1) == 0)
142 /* 33222222222211111111110000000000
143 10987654321098765432109876543210
144 xxxxxxxxxxxxxxx0xxxxx100x00100x0
145 casp. */
146 return 950;
148 else
150 /* 33222222222211111111110000000000
151 10987654321098765432109876543210
152 xxxxxxxxxxxxxxx0xxxxx100x00100x1
153 stxp. */
154 return 887;
158 else
160 if (((word >> 21) & 0x1) == 0)
162 if (((word >> 31) & 0x1) == 0)
164 if (((word >> 30) & 0x1) == 0)
166 /* 33222222222211111111110000000000
167 10987654321098765432109876543210
168 xxxxxxxxxxxxxxx1xxxxx000x0010000
169 stlxrb. */
170 return 874;
172 else
174 /* 33222222222211111111110000000000
175 10987654321098765432109876543210
176 xxxxxxxxxxxxxxx1xxxxx000x0010010
177 stlxrh. */
178 return 880;
181 else
183 /* 33222222222211111111110000000000
184 10987654321098765432109876543210
185 xxxxxxxxxxxxxxx1xxxxx000x00100x1
186 stlxr. */
187 return 886;
190 else
192 if (((word >> 31) & 0x1) == 0)
194 /* 33222222222211111111110000000000
195 10987654321098765432109876543210
196 xxxxxxxxxxxxxxx1xxxxx100x00100x0
197 caspl. */
198 return 952;
200 else
202 /* 33222222222211111111110000000000
203 10987654321098765432109876543210
204 xxxxxxxxxxxxxxx1xxxxx100x00100x1
205 stlxp. */
206 return 888;
211 else
213 /* 33222222222211111111110000000000
214 10987654321098765432109876543210
215 xxxxxxxxxxxxxxxxxxxxxx00x00101xx
216 stnp. */
217 return 901;
220 else
222 if (((word >> 29) & 0x1) == 0)
224 if (((word >> 15) & 0x1) == 0)
226 if (((word >> 21) & 0x1) == 0)
228 if (((word >> 31) & 0x1) == 0)
230 /* 33222222222211111111110000000000
231 10987654321098765432109876543210
232 xxxxxxxxxxxxxxx0xxxxx001x00100x0
233 stllrb. */
234 return 899;
236 else
238 /* 33222222222211111111110000000000
239 10987654321098765432109876543210
240 xxxxxxxxxxxxxxx0xxxxx001x00100x1
241 stllr. */
242 return 898;
245 else
247 if (((word >> 31) & 0x1) == 0)
249 if (((word >> 30) & 0x1) == 0)
251 /* 33222222222211111111110000000000
252 10987654321098765432109876543210
253 xxxxxxxxxxxxxxx0xxxxx101x0010000
254 casb. */
255 return 938;
257 else
259 /* 33222222222211111111110000000000
260 10987654321098765432109876543210
261 xxxxxxxxxxxxxxx0xxxxx101x0010010
262 cash. */
263 return 939;
266 else
268 /* 33222222222211111111110000000000
269 10987654321098765432109876543210
270 xxxxxxxxxxxxxxx0xxxxx101x00100x1
271 cas. */
272 return 940;
276 else
278 if (((word >> 21) & 0x1) == 0)
280 if (((word >> 31) & 0x1) == 0)
282 if (((word >> 30) & 0x1) == 0)
284 /* 33222222222211111111110000000000
285 10987654321098765432109876543210
286 xxxxxxxxxxxxxxx1xxxxx001x0010000
287 stlrb. */
288 return 877;
290 else
292 /* 33222222222211111111110000000000
293 10987654321098765432109876543210
294 xxxxxxxxxxxxxxx1xxxxx001x0010010
295 stlrh. */
296 return 883;
299 else
301 /* 33222222222211111111110000000000
302 10987654321098765432109876543210
303 xxxxxxxxxxxxxxx1xxxxx001x00100x1
304 stlr. */
305 return 893;
308 else
310 if (((word >> 31) & 0x1) == 0)
312 if (((word >> 30) & 0x1) == 0)
314 /* 33222222222211111111110000000000
315 10987654321098765432109876543210
316 xxxxxxxxxxxxxxx1xxxxx101x0010000
317 caslb. */
318 return 942;
320 else
322 /* 33222222222211111111110000000000
323 10987654321098765432109876543210
324 xxxxxxxxxxxxxxx1xxxxx101x0010010
325 caslh. */
326 return 945;
329 else
331 /* 33222222222211111111110000000000
332 10987654321098765432109876543210
333 xxxxxxxxxxxxxxx1xxxxx101x00100x1
334 casl. */
335 return 948;
340 else
342 /* 33222222222211111111110000000000
343 10987654321098765432109876543210
344 xxxxxxxxxxxxxxxxxxxxxx01x00101xx
345 stp. */
346 return 910;
350 else
352 if (((word >> 23) & 0x1) == 0)
354 if (((word >> 29) & 0x1) == 0)
356 if (((word >> 15) & 0x1) == 0)
358 if (((word >> 21) & 0x1) == 0)
360 if (((word >> 31) & 0x1) == 0)
362 if (((word >> 30) & 0x1) == 0)
364 /* 33222222222211111111110000000000
365 10987654321098765432109876543210
366 xxxxxxxxxxxxxxx0xxxxx010x0010000
367 ldxrb. */
368 return 875;
370 else
372 /* 33222222222211111111110000000000
373 10987654321098765432109876543210
374 xxxxxxxxxxxxxxx0xxxxx010x0010010
375 ldxrh. */
376 return 881;
379 else
381 /* 33222222222211111111110000000000
382 10987654321098765432109876543210
383 xxxxxxxxxxxxxxx0xxxxx010x00100x1
384 ldxr. */
385 return 889;
388 else
390 if (((word >> 31) & 0x1) == 0)
392 /* 33222222222211111111110000000000
393 10987654321098765432109876543210
394 xxxxxxxxxxxxxxx0xxxxx110x00100x0
395 caspa. */
396 return 951;
398 else
400 /* 33222222222211111111110000000000
401 10987654321098765432109876543210
402 xxxxxxxxxxxxxxx0xxxxx110x00100x1
403 ldxp. */
404 return 891;
408 else
410 if (((word >> 21) & 0x1) == 0)
412 if (((word >> 31) & 0x1) == 0)
414 if (((word >> 30) & 0x1) == 0)
416 /* 33222222222211111111110000000000
417 10987654321098765432109876543210
418 xxxxxxxxxxxxxxx1xxxxx010x0010000
419 ldaxrb. */
420 return 876;
422 else
424 /* 33222222222211111111110000000000
425 10987654321098765432109876543210
426 xxxxxxxxxxxxxxx1xxxxx010x0010010
427 ldaxrh. */
428 return 882;
431 else
433 /* 33222222222211111111110000000000
434 10987654321098765432109876543210
435 xxxxxxxxxxxxxxx1xxxxx010x00100x1
436 ldaxr. */
437 return 890;
440 else
442 if (((word >> 31) & 0x1) == 0)
444 /* 33222222222211111111110000000000
445 10987654321098765432109876543210
446 xxxxxxxxxxxxxxx1xxxxx110x00100x0
447 caspal. */
448 return 953;
450 else
452 /* 33222222222211111111110000000000
453 10987654321098765432109876543210
454 xxxxxxxxxxxxxxx1xxxxx110x00100x1
455 ldaxp. */
456 return 892;
461 else
463 if (((word >> 30) & 0x1) == 0)
465 /* 33222222222211111111110000000000
466 10987654321098765432109876543210
467 xxxxxxxxxxxxxxxxxxxxxx10x001010x
468 ldnp. */
469 return 902;
471 else
473 /* 33222222222211111111110000000000
474 10987654321098765432109876543210
475 xxxxxxxxxxxxxxxxxxxxxx10x001011x
476 ldpsw. */
477 return 909;
481 else
483 if (((word >> 29) & 0x1) == 0)
485 if (((word >> 15) & 0x1) == 0)
487 if (((word >> 21) & 0x1) == 0)
489 if (((word >> 31) & 0x1) == 0)
491 if (((word >> 30) & 0x1) == 0)
493 /* 33222222222211111111110000000000
494 10987654321098765432109876543210
495 xxxxxxxxxxxxxxx0xxxxx011x0010000
496 ldlarb. */
497 return 896;
499 else
501 /* 33222222222211111111110000000000
502 10987654321098765432109876543210
503 xxxxxxxxxxxxxxx0xxxxx011x0010010
504 ldlarh. */
505 return 897;
508 else
510 /* 33222222222211111111110000000000
511 10987654321098765432109876543210
512 xxxxxxxxxxxxxxx0xxxxx011x00100x1
513 ldlar. */
514 return 895;
517 else
519 if (((word >> 31) & 0x1) == 0)
521 if (((word >> 30) & 0x1) == 0)
523 /* 33222222222211111111110000000000
524 10987654321098765432109876543210
525 xxxxxxxxxxxxxxx0xxxxx111x0010000
526 casab. */
527 return 941;
529 else
531 /* 33222222222211111111110000000000
532 10987654321098765432109876543210
533 xxxxxxxxxxxxxxx0xxxxx111x0010010
534 casah. */
535 return 944;
538 else
540 /* 33222222222211111111110000000000
541 10987654321098765432109876543210
542 xxxxxxxxxxxxxxx0xxxxx111x00100x1
543 casa. */
544 return 947;
548 else
550 if (((word >> 21) & 0x1) == 0)
552 if (((word >> 31) & 0x1) == 0)
554 if (((word >> 30) & 0x1) == 0)
556 /* 33222222222211111111110000000000
557 10987654321098765432109876543210
558 xxxxxxxxxxxxxxx1xxxxx011x0010000
559 ldarb. */
560 return 878;
562 else
564 /* 33222222222211111111110000000000
565 10987654321098765432109876543210
566 xxxxxxxxxxxxxxx1xxxxx011x0010010
567 ldarh. */
568 return 884;
571 else
573 /* 33222222222211111111110000000000
574 10987654321098765432109876543210
575 xxxxxxxxxxxxxxx1xxxxx011x00100x1
576 ldar. */
577 return 894;
580 else
582 if (((word >> 31) & 0x1) == 0)
584 if (((word >> 30) & 0x1) == 0)
586 /* 33222222222211111111110000000000
587 10987654321098765432109876543210
588 xxxxxxxxxxxxxxx1xxxxx111x0010000
589 casalb. */
590 return 943;
592 else
594 /* 33222222222211111111110000000000
595 10987654321098765432109876543210
596 xxxxxxxxxxxxxxx1xxxxx111x0010010
597 casalh. */
598 return 946;
601 else
603 /* 33222222222211111111110000000000
604 10987654321098765432109876543210
605 xxxxxxxxxxxxxxx1xxxxx111x00100x1
606 casal. */
607 return 949;
612 else
614 if (((word >> 30) & 0x1) == 0)
616 /* 33222222222211111111110000000000
617 10987654321098765432109876543210
618 xxxxxxxxxxxxxxxxxxxxxx11x001010x
619 ldp. */
620 return 911;
622 else
624 /* 33222222222211111111110000000000
625 10987654321098765432109876543210
626 xxxxxxxxxxxxxxxxxxxxxx11x001011x
627 ldpsw. */
628 return 914;
634 else
636 if (((word >> 24) & 0x1) == 0)
638 if (((word >> 29) & 0x1) == 0)
640 if (((word >> 31) & 0x1) == 0)
642 /* 33222222222211111111110000000000
643 10987654321098765432109876543210
644 xxxxxxxxxxxxxxxxxxxxxxxx000110x0
645 ldr. */
646 return 915;
648 else
650 if (((word >> 30) & 0x1) == 0)
652 /* 33222222222211111111110000000000
653 10987654321098765432109876543210
654 xxxxxxxxxxxxxxxxxxxxxxxx00011001
655 ldrsw. */
656 return 917;
658 else
660 /* 33222222222211111111110000000000
661 10987654321098765432109876543210
662 xxxxxxxxxxxxxxxxxxxxxxxx00011011
663 prfm. */
664 return 918;
668 else
670 if (((word >> 10) & 0x1) == 0)
672 if (((word >> 11) & 0x1) == 0)
674 if (((word >> 21) & 0x1) == 0)
676 if (((word >> 23) & 0x1) == 0)
678 if (((word >> 22) & 0x1) == 0)
680 if (((word >> 31) & 0x1) == 0)
682 if (((word >> 30) & 0x1) == 0)
684 /* 33222222222211111111110000000000
685 10987654321098765432109876543210
686 xxxxxxxxxx00xxxxxxxxx00000011100
687 sturb. */
688 return 861;
690 else
692 /* 33222222222211111111110000000000
693 10987654321098765432109876543210
694 xxxxxxxxxx00xxxxxxxxx00000011110
695 sturh. */
696 return 866;
699 else
701 /* 33222222222211111111110000000000
702 10987654321098765432109876543210
703 xxxxxxxxxx00xxxxxxxxx000000111x1
704 stur. */
705 return 869;
708 else
710 if (((word >> 31) & 0x1) == 0)
712 if (((word >> 30) & 0x1) == 0)
714 /* 33222222222211111111110000000000
715 10987654321098765432109876543210
716 xxxxxxxxxx00xxxxxxxxx01000011100
717 ldurb. */
718 return 862;
720 else
722 /* 33222222222211111111110000000000
723 10987654321098765432109876543210
724 xxxxxxxxxx00xxxxxxxxx01000011110
725 ldurh. */
726 return 867;
729 else
731 /* 33222222222211111111110000000000
732 10987654321098765432109876543210
733 xxxxxxxxxx00xxxxxxxxx010000111x1
734 ldur. */
735 return 870;
739 else
741 if (((word >> 30) & 0x1) == 0)
743 if (((word >> 31) & 0x1) == 0)
745 /* 33222222222211111111110000000000
746 10987654321098765432109876543210
747 xxxxxxxxxx00xxxxxxxxx0x100011100
748 ldursb. */
749 return 863;
751 else
753 /* 33222222222211111111110000000000
754 10987654321098765432109876543210
755 xxxxxxxxxx00xxxxxxxxx0x100011101
756 ldursw. */
757 return 871;
760 else
762 if (((word >> 31) & 0x1) == 0)
764 /* 33222222222211111111110000000000
765 10987654321098765432109876543210
766 xxxxxxxxxx00xxxxxxxxx0x100011110
767 ldursh. */
768 return 868;
770 else
772 /* 33222222222211111111110000000000
773 10987654321098765432109876543210
774 xxxxxxxxxx00xxxxxxxxx0x100011111
775 prfum. */
776 return 872;
781 else
783 if (((word >> 12) & 0x1) == 0)
785 if (((word >> 13) & 0x1) == 0)
787 if (((word >> 14) & 0x1) == 0)
789 if (((word >> 15) & 0x1) == 0)
791 if (((word >> 22) & 0x1) == 0)
793 if (((word >> 23) & 0x1) == 0)
795 if (((word >> 31) & 0x1) == 0)
797 if (((word >> 30) & 0x1) == 0)
799 /* 33222222222211111111110000000000
800 10987654321098765432109876543210
801 xxxxxxxxxx000000xxxxx10000011100
802 ldaddb. */
803 return 966;
805 else
807 /* 33222222222211111111110000000000
808 10987654321098765432109876543210
809 xxxxxxxxxx000000xxxxx10000011110
810 ldaddh. */
811 return 967;
814 else
816 /* 33222222222211111111110000000000
817 10987654321098765432109876543210
818 xxxxxxxxxx000000xxxxx100000111x1
819 ldadd. */
820 return 968;
823 else
825 if (((word >> 31) & 0x1) == 0)
827 if (((word >> 30) & 0x1) == 0)
829 /* 33222222222211111111110000000000
830 10987654321098765432109876543210
831 xxxxxxxxxx000000xxxxx10100011100
832 ldaddab. */
833 return 969;
835 else
837 /* 33222222222211111111110000000000
838 10987654321098765432109876543210
839 xxxxxxxxxx000000xxxxx10100011110
840 ldaddah. */
841 return 972;
844 else
846 /* 33222222222211111111110000000000
847 10987654321098765432109876543210
848 xxxxxxxxxx000000xxxxx101000111x1
849 ldadda. */
850 return 975;
854 else
856 if (((word >> 23) & 0x1) == 0)
858 if (((word >> 31) & 0x1) == 0)
860 if (((word >> 30) & 0x1) == 0)
862 /* 33222222222211111111110000000000
863 10987654321098765432109876543210
864 xxxxxxxxxx000000xxxxx11000011100
865 ldaddlb. */
866 return 970;
868 else
870 /* 33222222222211111111110000000000
871 10987654321098765432109876543210
872 xxxxxxxxxx000000xxxxx11000011110
873 ldaddlh. */
874 return 973;
877 else
879 /* 33222222222211111111110000000000
880 10987654321098765432109876543210
881 xxxxxxxxxx000000xxxxx110000111x1
882 ldaddl. */
883 return 976;
886 else
888 if (((word >> 31) & 0x1) == 0)
890 if (((word >> 30) & 0x1) == 0)
892 /* 33222222222211111111110000000000
893 10987654321098765432109876543210
894 xxxxxxxxxx000000xxxxx11100011100
895 ldaddalb. */
896 return 971;
898 else
900 /* 33222222222211111111110000000000
901 10987654321098765432109876543210
902 xxxxxxxxxx000000xxxxx11100011110
903 ldaddalh. */
904 return 974;
907 else
909 /* 33222222222211111111110000000000
910 10987654321098765432109876543210
911 xxxxxxxxxx000000xxxxx111000111x1
912 ldaddal. */
913 return 977;
918 else
920 if (((word >> 22) & 0x1) == 0)
922 if (((word >> 23) & 0x1) == 0)
924 if (((word >> 31) & 0x1) == 0)
926 if (((word >> 30) & 0x1) == 0)
928 /* 33222222222211111111110000000000
929 10987654321098765432109876543210
930 xxxxxxxxxx000001xxxxx10000011100
931 swpb. */
932 return 954;
934 else
936 /* 33222222222211111111110000000000
937 10987654321098765432109876543210
938 xxxxxxxxxx000001xxxxx10000011110
939 swph. */
940 return 955;
943 else
945 /* 33222222222211111111110000000000
946 10987654321098765432109876543210
947 xxxxxxxxxx000001xxxxx100000111x1
948 swp. */
949 return 956;
952 else
954 if (((word >> 31) & 0x1) == 0)
956 if (((word >> 30) & 0x1) == 0)
958 /* 33222222222211111111110000000000
959 10987654321098765432109876543210
960 xxxxxxxxxx000001xxxxx10100011100
961 swpab. */
962 return 957;
964 else
966 /* 33222222222211111111110000000000
967 10987654321098765432109876543210
968 xxxxxxxxxx000001xxxxx10100011110
969 swpah. */
970 return 960;
973 else
975 /* 33222222222211111111110000000000
976 10987654321098765432109876543210
977 xxxxxxxxxx000001xxxxx101000111x1
978 swpa. */
979 return 963;
983 else
985 if (((word >> 23) & 0x1) == 0)
987 if (((word >> 31) & 0x1) == 0)
989 if (((word >> 30) & 0x1) == 0)
991 /* 33222222222211111111110000000000
992 10987654321098765432109876543210
993 xxxxxxxxxx000001xxxxx11000011100
994 swplb. */
995 return 958;
997 else
999 /* 33222222222211111111110000000000
1000 10987654321098765432109876543210
1001 xxxxxxxxxx000001xxxxx11000011110
1002 swplh. */
1003 return 961;
1006 else
1008 /* 33222222222211111111110000000000
1009 10987654321098765432109876543210
1010 xxxxxxxxxx000001xxxxx110000111x1
1011 swpl. */
1012 return 964;
1015 else
1017 if (((word >> 31) & 0x1) == 0)
1019 if (((word >> 30) & 0x1) == 0)
1021 /* 33222222222211111111110000000000
1022 10987654321098765432109876543210
1023 xxxxxxxxxx000001xxxxx11100011100
1024 swpalb. */
1025 return 959;
1027 else
1029 /* 33222222222211111111110000000000
1030 10987654321098765432109876543210
1031 xxxxxxxxxx000001xxxxx11100011110
1032 swpalh. */
1033 return 962;
1036 else
1038 /* 33222222222211111111110000000000
1039 10987654321098765432109876543210
1040 xxxxxxxxxx000001xxxxx111000111x1
1041 swpal. */
1042 return 965;
1048 else
1050 if (((word >> 22) & 0x1) == 0)
1052 if (((word >> 23) & 0x1) == 0)
1054 if (((word >> 31) & 0x1) == 0)
1056 if (((word >> 30) & 0x1) == 0)
1058 /* 33222222222211111111110000000000
1059 10987654321098765432109876543210
1060 xxxxxxxxxx00001xxxxxx10000011100
1061 ldsmaxb. */
1062 return 1014;
1064 else
1066 /* 33222222222211111111110000000000
1067 10987654321098765432109876543210
1068 xxxxxxxxxx00001xxxxxx10000011110
1069 ldsmaxh. */
1070 return 1015;
1073 else
1075 /* 33222222222211111111110000000000
1076 10987654321098765432109876543210
1077 xxxxxxxxxx00001xxxxxx100000111x1
1078 ldsmax. */
1079 return 1016;
1082 else
1084 if (((word >> 31) & 0x1) == 0)
1086 if (((word >> 30) & 0x1) == 0)
1088 /* 33222222222211111111110000000000
1089 10987654321098765432109876543210
1090 xxxxxxxxxx00001xxxxxx10100011100
1091 ldsmaxab. */
1092 return 1017;
1094 else
1096 /* 33222222222211111111110000000000
1097 10987654321098765432109876543210
1098 xxxxxxxxxx00001xxxxxx10100011110
1099 ldsmaxah. */
1100 return 1020;
1103 else
1105 /* 33222222222211111111110000000000
1106 10987654321098765432109876543210
1107 xxxxxxxxxx00001xxxxxx101000111x1
1108 ldsmaxa. */
1109 return 1023;
1113 else
1115 if (((word >> 23) & 0x1) == 0)
1117 if (((word >> 31) & 0x1) == 0)
1119 if (((word >> 30) & 0x1) == 0)
1121 /* 33222222222211111111110000000000
1122 10987654321098765432109876543210
1123 xxxxxxxxxx00001xxxxxx11000011100
1124 ldsmaxlb. */
1125 return 1018;
1127 else
1129 /* 33222222222211111111110000000000
1130 10987654321098765432109876543210
1131 xxxxxxxxxx00001xxxxxx11000011110
1132 ldsmaxlh. */
1133 return 1021;
1136 else
1138 /* 33222222222211111111110000000000
1139 10987654321098765432109876543210
1140 xxxxxxxxxx00001xxxxxx110000111x1
1141 ldsmaxl. */
1142 return 1024;
1145 else
1147 if (((word >> 31) & 0x1) == 0)
1149 if (((word >> 30) & 0x1) == 0)
1151 /* 33222222222211111111110000000000
1152 10987654321098765432109876543210
1153 xxxxxxxxxx00001xxxxxx11100011100
1154 ldsmaxalb. */
1155 return 1019;
1157 else
1159 /* 33222222222211111111110000000000
1160 10987654321098765432109876543210
1161 xxxxxxxxxx00001xxxxxx11100011110
1162 ldsmaxalh. */
1163 return 1022;
1166 else
1168 /* 33222222222211111111110000000000
1169 10987654321098765432109876543210
1170 xxxxxxxxxx00001xxxxxx111000111x1
1171 ldsmaxal. */
1172 return 1025;
1178 else
1180 if (((word >> 14) & 0x1) == 0)
1182 if (((word >> 22) & 0x1) == 0)
1184 if (((word >> 23) & 0x1) == 0)
1186 if (((word >> 31) & 0x1) == 0)
1188 if (((word >> 30) & 0x1) == 0)
1190 /* 33222222222211111111110000000000
1191 10987654321098765432109876543210
1192 xxxxxxxxxx00010xxxxxx10000011100
1193 ldeorb. */
1194 return 990;
1196 else
1198 /* 33222222222211111111110000000000
1199 10987654321098765432109876543210
1200 xxxxxxxxxx00010xxxxxx10000011110
1201 ldeorh. */
1202 return 991;
1205 else
1207 /* 33222222222211111111110000000000
1208 10987654321098765432109876543210
1209 xxxxxxxxxx00010xxxxxx100000111x1
1210 ldeor. */
1211 return 992;
1214 else
1216 if (((word >> 31) & 0x1) == 0)
1218 if (((word >> 30) & 0x1) == 0)
1220 /* 33222222222211111111110000000000
1221 10987654321098765432109876543210
1222 xxxxxxxxxx00010xxxxxx10100011100
1223 ldeorab. */
1224 return 993;
1226 else
1228 /* 33222222222211111111110000000000
1229 10987654321098765432109876543210
1230 xxxxxxxxxx00010xxxxxx10100011110
1231 ldeorah. */
1232 return 996;
1235 else
1237 /* 33222222222211111111110000000000
1238 10987654321098765432109876543210
1239 xxxxxxxxxx00010xxxxxx101000111x1
1240 ldeora. */
1241 return 999;
1245 else
1247 if (((word >> 23) & 0x1) == 0)
1249 if (((word >> 31) & 0x1) == 0)
1251 if (((word >> 30) & 0x1) == 0)
1253 /* 33222222222211111111110000000000
1254 10987654321098765432109876543210
1255 xxxxxxxxxx00010xxxxxx11000011100
1256 ldeorlb. */
1257 return 994;
1259 else
1261 /* 33222222222211111111110000000000
1262 10987654321098765432109876543210
1263 xxxxxxxxxx00010xxxxxx11000011110
1264 ldeorlh. */
1265 return 997;
1268 else
1270 /* 33222222222211111111110000000000
1271 10987654321098765432109876543210
1272 xxxxxxxxxx00010xxxxxx110000111x1
1273 ldeorl. */
1274 return 1000;
1277 else
1279 if (((word >> 31) & 0x1) == 0)
1281 if (((word >> 30) & 0x1) == 0)
1283 /* 33222222222211111111110000000000
1284 10987654321098765432109876543210
1285 xxxxxxxxxx00010xxxxxx11100011100
1286 ldeoralb. */
1287 return 995;
1289 else
1291 /* 33222222222211111111110000000000
1292 10987654321098765432109876543210
1293 xxxxxxxxxx00010xxxxxx11100011110
1294 ldeoralh. */
1295 return 998;
1298 else
1300 /* 33222222222211111111110000000000
1301 10987654321098765432109876543210
1302 xxxxxxxxxx00010xxxxxx111000111x1
1303 ldeoral. */
1304 return 1001;
1309 else
1311 if (((word >> 22) & 0x1) == 0)
1313 if (((word >> 23) & 0x1) == 0)
1315 if (((word >> 31) & 0x1) == 0)
1317 if (((word >> 30) & 0x1) == 0)
1319 /* 33222222222211111111110000000000
1320 10987654321098765432109876543210
1321 xxxxxxxxxx00011xxxxxx10000011100
1322 ldumaxb. */
1323 return 1038;
1325 else
1327 /* 33222222222211111111110000000000
1328 10987654321098765432109876543210
1329 xxxxxxxxxx00011xxxxxx10000011110
1330 ldumaxh. */
1331 return 1039;
1334 else
1336 /* 33222222222211111111110000000000
1337 10987654321098765432109876543210
1338 xxxxxxxxxx00011xxxxxx100000111x1
1339 ldumax. */
1340 return 1040;
1343 else
1345 if (((word >> 31) & 0x1) == 0)
1347 if (((word >> 30) & 0x1) == 0)
1349 /* 33222222222211111111110000000000
1350 10987654321098765432109876543210
1351 xxxxxxxxxx00011xxxxxx10100011100
1352 ldumaxab. */
1353 return 1041;
1355 else
1357 /* 33222222222211111111110000000000
1358 10987654321098765432109876543210
1359 xxxxxxxxxx00011xxxxxx10100011110
1360 ldumaxah. */
1361 return 1044;
1364 else
1366 /* 33222222222211111111110000000000
1367 10987654321098765432109876543210
1368 xxxxxxxxxx00011xxxxxx101000111x1
1369 ldumaxa. */
1370 return 1047;
1374 else
1376 if (((word >> 23) & 0x1) == 0)
1378 if (((word >> 31) & 0x1) == 0)
1380 if (((word >> 30) & 0x1) == 0)
1382 /* 33222222222211111111110000000000
1383 10987654321098765432109876543210
1384 xxxxxxxxxx00011xxxxxx11000011100
1385 ldumaxlb. */
1386 return 1042;
1388 else
1390 /* 33222222222211111111110000000000
1391 10987654321098765432109876543210
1392 xxxxxxxxxx00011xxxxxx11000011110
1393 ldumaxlh. */
1394 return 1045;
1397 else
1399 /* 33222222222211111111110000000000
1400 10987654321098765432109876543210
1401 xxxxxxxxxx00011xxxxxx110000111x1
1402 ldumaxl. */
1403 return 1048;
1406 else
1408 if (((word >> 31) & 0x1) == 0)
1410 if (((word >> 30) & 0x1) == 0)
1412 /* 33222222222211111111110000000000
1413 10987654321098765432109876543210
1414 xxxxxxxxxx00011xxxxxx11100011100
1415 ldumaxalb. */
1416 return 1043;
1418 else
1420 /* 33222222222211111111110000000000
1421 10987654321098765432109876543210
1422 xxxxxxxxxx00011xxxxxx11100011110
1423 ldumaxalh. */
1424 return 1046;
1427 else
1429 /* 33222222222211111111110000000000
1430 10987654321098765432109876543210
1431 xxxxxxxxxx00011xxxxxx111000111x1
1432 ldumaxal. */
1433 return 1049;
1440 else
1442 if (((word >> 13) & 0x1) == 0)
1444 if (((word >> 14) & 0x1) == 0)
1446 if (((word >> 22) & 0x1) == 0)
1448 if (((word >> 23) & 0x1) == 0)
1450 if (((word >> 31) & 0x1) == 0)
1452 if (((word >> 30) & 0x1) == 0)
1454 /* 33222222222211111111110000000000
1455 10987654321098765432109876543210
1456 xxxxxxxxxx00100xxxxxx10000011100
1457 ldclrb. */
1458 return 978;
1460 else
1462 /* 33222222222211111111110000000000
1463 10987654321098765432109876543210
1464 xxxxxxxxxx00100xxxxxx10000011110
1465 ldclrh. */
1466 return 979;
1469 else
1471 /* 33222222222211111111110000000000
1472 10987654321098765432109876543210
1473 xxxxxxxxxx00100xxxxxx100000111x1
1474 ldclr. */
1475 return 980;
1478 else
1480 if (((word >> 31) & 0x1) == 0)
1482 if (((word >> 30) & 0x1) == 0)
1484 /* 33222222222211111111110000000000
1485 10987654321098765432109876543210
1486 xxxxxxxxxx00100xxxxxx10100011100
1487 ldclrab. */
1488 return 981;
1490 else
1492 /* 33222222222211111111110000000000
1493 10987654321098765432109876543210
1494 xxxxxxxxxx00100xxxxxx10100011110
1495 ldclrah. */
1496 return 984;
1499 else
1501 /* 33222222222211111111110000000000
1502 10987654321098765432109876543210
1503 xxxxxxxxxx00100xxxxxx101000111x1
1504 ldclra. */
1505 return 987;
1509 else
1511 if (((word >> 23) & 0x1) == 0)
1513 if (((word >> 31) & 0x1) == 0)
1515 if (((word >> 30) & 0x1) == 0)
1517 /* 33222222222211111111110000000000
1518 10987654321098765432109876543210
1519 xxxxxxxxxx00100xxxxxx11000011100
1520 ldclrlb. */
1521 return 982;
1523 else
1525 /* 33222222222211111111110000000000
1526 10987654321098765432109876543210
1527 xxxxxxxxxx00100xxxxxx11000011110
1528 ldclrlh. */
1529 return 985;
1532 else
1534 /* 33222222222211111111110000000000
1535 10987654321098765432109876543210
1536 xxxxxxxxxx00100xxxxxx110000111x1
1537 ldclrl. */
1538 return 988;
1541 else
1543 if (((word >> 31) & 0x1) == 0)
1545 if (((word >> 30) & 0x1) == 0)
1547 /* 33222222222211111111110000000000
1548 10987654321098765432109876543210
1549 xxxxxxxxxx00100xxxxxx11100011100
1550 ldclralb. */
1551 return 983;
1553 else
1555 /* 33222222222211111111110000000000
1556 10987654321098765432109876543210
1557 xxxxxxxxxx00100xxxxxx11100011110
1558 ldclralh. */
1559 return 986;
1562 else
1564 /* 33222222222211111111110000000000
1565 10987654321098765432109876543210
1566 xxxxxxxxxx00100xxxxxx111000111x1
1567 ldclral. */
1568 return 989;
1573 else
1575 if (((word >> 22) & 0x1) == 0)
1577 if (((word >> 23) & 0x1) == 0)
1579 if (((word >> 31) & 0x1) == 0)
1581 if (((word >> 30) & 0x1) == 0)
1583 /* 33222222222211111111110000000000
1584 10987654321098765432109876543210
1585 xxxxxxxxxx00101xxxxxx10000011100
1586 ldsminb. */
1587 return 1026;
1589 else
1591 /* 33222222222211111111110000000000
1592 10987654321098765432109876543210
1593 xxxxxxxxxx00101xxxxxx10000011110
1594 ldsminh. */
1595 return 1027;
1598 else
1600 /* 33222222222211111111110000000000
1601 10987654321098765432109876543210
1602 xxxxxxxxxx00101xxxxxx100000111x1
1603 ldsmin. */
1604 return 1028;
1607 else
1609 if (((word >> 31) & 0x1) == 0)
1611 if (((word >> 30) & 0x1) == 0)
1613 /* 33222222222211111111110000000000
1614 10987654321098765432109876543210
1615 xxxxxxxxxx00101xxxxxx10100011100
1616 ldsminab. */
1617 return 1029;
1619 else
1621 /* 33222222222211111111110000000000
1622 10987654321098765432109876543210
1623 xxxxxxxxxx00101xxxxxx10100011110
1624 ldsminah. */
1625 return 1032;
1628 else
1630 /* 33222222222211111111110000000000
1631 10987654321098765432109876543210
1632 xxxxxxxxxx00101xxxxxx101000111x1
1633 ldsmina. */
1634 return 1035;
1638 else
1640 if (((word >> 23) & 0x1) == 0)
1642 if (((word >> 31) & 0x1) == 0)
1644 if (((word >> 30) & 0x1) == 0)
1646 /* 33222222222211111111110000000000
1647 10987654321098765432109876543210
1648 xxxxxxxxxx00101xxxxxx11000011100
1649 ldsminlb. */
1650 return 1030;
1652 else
1654 /* 33222222222211111111110000000000
1655 10987654321098765432109876543210
1656 xxxxxxxxxx00101xxxxxx11000011110
1657 ldsminlh. */
1658 return 1033;
1661 else
1663 /* 33222222222211111111110000000000
1664 10987654321098765432109876543210
1665 xxxxxxxxxx00101xxxxxx110000111x1
1666 ldsminl. */
1667 return 1036;
1670 else
1672 if (((word >> 31) & 0x1) == 0)
1674 if (((word >> 30) & 0x1) == 0)
1676 /* 33222222222211111111110000000000
1677 10987654321098765432109876543210
1678 xxxxxxxxxx00101xxxxxx11100011100
1679 ldsminalb. */
1680 return 1031;
1682 else
1684 /* 33222222222211111111110000000000
1685 10987654321098765432109876543210
1686 xxxxxxxxxx00101xxxxxx11100011110
1687 ldsminalh. */
1688 return 1034;
1691 else
1693 /* 33222222222211111111110000000000
1694 10987654321098765432109876543210
1695 xxxxxxxxxx00101xxxxxx111000111x1
1696 ldsminal. */
1697 return 1037;
1703 else
1705 if (((word >> 14) & 0x1) == 0)
1707 if (((word >> 22) & 0x1) == 0)
1709 if (((word >> 23) & 0x1) == 0)
1711 if (((word >> 31) & 0x1) == 0)
1713 if (((word >> 30) & 0x1) == 0)
1715 /* 33222222222211111111110000000000
1716 10987654321098765432109876543210
1717 xxxxxxxxxx00110xxxxxx10000011100
1718 ldsetb. */
1719 return 1002;
1721 else
1723 /* 33222222222211111111110000000000
1724 10987654321098765432109876543210
1725 xxxxxxxxxx00110xxxxxx10000011110
1726 ldseth. */
1727 return 1003;
1730 else
1732 /* 33222222222211111111110000000000
1733 10987654321098765432109876543210
1734 xxxxxxxxxx00110xxxxxx100000111x1
1735 ldset. */
1736 return 1004;
1739 else
1741 if (((word >> 31) & 0x1) == 0)
1743 if (((word >> 30) & 0x1) == 0)
1745 /* 33222222222211111111110000000000
1746 10987654321098765432109876543210
1747 xxxxxxxxxx00110xxxxxx10100011100
1748 ldsetab. */
1749 return 1005;
1751 else
1753 /* 33222222222211111111110000000000
1754 10987654321098765432109876543210
1755 xxxxxxxxxx00110xxxxxx10100011110
1756 ldsetah. */
1757 return 1008;
1760 else
1762 /* 33222222222211111111110000000000
1763 10987654321098765432109876543210
1764 xxxxxxxxxx00110xxxxxx101000111x1
1765 ldseta. */
1766 return 1011;
1770 else
1772 if (((word >> 23) & 0x1) == 0)
1774 if (((word >> 31) & 0x1) == 0)
1776 if (((word >> 30) & 0x1) == 0)
1778 /* 33222222222211111111110000000000
1779 10987654321098765432109876543210
1780 xxxxxxxxxx00110xxxxxx11000011100
1781 ldsetlb. */
1782 return 1006;
1784 else
1786 /* 33222222222211111111110000000000
1787 10987654321098765432109876543210
1788 xxxxxxxxxx00110xxxxxx11000011110
1789 ldsetlh. */
1790 return 1009;
1793 else
1795 /* 33222222222211111111110000000000
1796 10987654321098765432109876543210
1797 xxxxxxxxxx00110xxxxxx110000111x1
1798 ldsetl. */
1799 return 1012;
1802 else
1804 if (((word >> 31) & 0x1) == 0)
1806 if (((word >> 30) & 0x1) == 0)
1808 /* 33222222222211111111110000000000
1809 10987654321098765432109876543210
1810 xxxxxxxxxx00110xxxxxx11100011100
1811 ldsetalb. */
1812 return 1007;
1814 else
1816 /* 33222222222211111111110000000000
1817 10987654321098765432109876543210
1818 xxxxxxxxxx00110xxxxxx11100011110
1819 ldsetalh. */
1820 return 1010;
1823 else
1825 /* 33222222222211111111110000000000
1826 10987654321098765432109876543210
1827 xxxxxxxxxx00110xxxxxx111000111x1
1828 ldsetal. */
1829 return 1013;
1834 else
1836 if (((word >> 22) & 0x1) == 0)
1838 if (((word >> 23) & 0x1) == 0)
1840 if (((word >> 31) & 0x1) == 0)
1842 if (((word >> 30) & 0x1) == 0)
1844 /* 33222222222211111111110000000000
1845 10987654321098765432109876543210
1846 xxxxxxxxxx00111xxxxxx10000011100
1847 lduminb. */
1848 return 1050;
1850 else
1852 /* 33222222222211111111110000000000
1853 10987654321098765432109876543210
1854 xxxxxxxxxx00111xxxxxx10000011110
1855 lduminh. */
1856 return 1051;
1859 else
1861 /* 33222222222211111111110000000000
1862 10987654321098765432109876543210
1863 xxxxxxxxxx00111xxxxxx100000111x1
1864 ldumin. */
1865 return 1052;
1868 else
1870 if (((word >> 31) & 0x1) == 0)
1872 if (((word >> 30) & 0x1) == 0)
1874 /* 33222222222211111111110000000000
1875 10987654321098765432109876543210
1876 xxxxxxxxxx00111xxxxxx10100011100
1877 lduminab. */
1878 return 1053;
1880 else
1882 /* 33222222222211111111110000000000
1883 10987654321098765432109876543210
1884 xxxxxxxxxx00111xxxxxx10100011110
1885 lduminah. */
1886 return 1056;
1889 else
1891 /* 33222222222211111111110000000000
1892 10987654321098765432109876543210
1893 xxxxxxxxxx00111xxxxxx101000111x1
1894 ldumina. */
1895 return 1059;
1899 else
1901 if (((word >> 23) & 0x1) == 0)
1903 if (((word >> 31) & 0x1) == 0)
1905 if (((word >> 30) & 0x1) == 0)
1907 /* 33222222222211111111110000000000
1908 10987654321098765432109876543210
1909 xxxxxxxxxx00111xxxxxx11000011100
1910 lduminlb. */
1911 return 1054;
1913 else
1915 /* 33222222222211111111110000000000
1916 10987654321098765432109876543210
1917 xxxxxxxxxx00111xxxxxx11000011110
1918 lduminlh. */
1919 return 1057;
1922 else
1924 /* 33222222222211111111110000000000
1925 10987654321098765432109876543210
1926 xxxxxxxxxx00111xxxxxx110000111x1
1927 lduminl. */
1928 return 1060;
1931 else
1933 if (((word >> 31) & 0x1) == 0)
1935 if (((word >> 30) & 0x1) == 0)
1937 /* 33222222222211111111110000000000
1938 10987654321098765432109876543210
1939 xxxxxxxxxx00111xxxxxx11100011100
1940 lduminalb. */
1941 return 1055;
1943 else
1945 /* 33222222222211111111110000000000
1946 10987654321098765432109876543210
1947 xxxxxxxxxx00111xxxxxx11100011110
1948 lduminalh. */
1949 return 1058;
1952 else
1954 /* 33222222222211111111110000000000
1955 10987654321098765432109876543210
1956 xxxxxxxxxx00111xxxxxx111000111x1
1957 lduminal. */
1958 return 1061;
1967 else
1969 if (((word >> 21) & 0x1) == 0)
1971 if (((word >> 23) & 0x1) == 0)
1973 if (((word >> 22) & 0x1) == 0)
1975 if (((word >> 31) & 0x1) == 0)
1977 if (((word >> 30) & 0x1) == 0)
1979 /* 33222222222211111111110000000000
1980 10987654321098765432109876543210
1981 xxxxxxxxxx01xxxxxxxxx00000011100
1982 sttrb. */
1983 return 852;
1985 else
1987 /* 33222222222211111111110000000000
1988 10987654321098765432109876543210
1989 xxxxxxxxxx01xxxxxxxxx00000011110
1990 sttrh. */
1991 return 855;
1994 else
1996 /* 33222222222211111111110000000000
1997 10987654321098765432109876543210
1998 xxxxxxxxxx01xxxxxxxxx000000111x1
1999 sttr. */
2000 return 858;
2003 else
2005 if (((word >> 31) & 0x1) == 0)
2007 if (((word >> 30) & 0x1) == 0)
2009 /* 33222222222211111111110000000000
2010 10987654321098765432109876543210
2011 xxxxxxxxxx01xxxxxxxxx01000011100
2012 ldtrb. */
2013 return 853;
2015 else
2017 /* 33222222222211111111110000000000
2018 10987654321098765432109876543210
2019 xxxxxxxxxx01xxxxxxxxx01000011110
2020 ldtrh. */
2021 return 856;
2024 else
2026 /* 33222222222211111111110000000000
2027 10987654321098765432109876543210
2028 xxxxxxxxxx01xxxxxxxxx010000111x1
2029 ldtr. */
2030 return 859;
2034 else
2036 if (((word >> 30) & 0x1) == 0)
2038 if (((word >> 31) & 0x1) == 0)
2040 /* 33222222222211111111110000000000
2041 10987654321098765432109876543210
2042 xxxxxxxxxx01xxxxxxxxx0x100011100
2043 ldtrsb. */
2044 return 854;
2046 else
2048 /* 33222222222211111111110000000000
2049 10987654321098765432109876543210
2050 xxxxxxxxxx01xxxxxxxxx0x100011101
2051 ldtrsw. */
2052 return 860;
2055 else
2057 /* 33222222222211111111110000000000
2058 10987654321098765432109876543210
2059 xxxxxxxxxx01xxxxxxxxx0x10001111x
2060 ldtrsh. */
2061 return 857;
2065 else
2067 if (((word >> 23) & 0x1) == 0)
2069 if (((word >> 22) & 0x1) == 0)
2071 if (((word >> 31) & 0x1) == 0)
2073 if (((word >> 30) & 0x1) == 0)
2075 /* 33222222222211111111110000000000
2076 10987654321098765432109876543210
2077 xxxxxxxxxx01xxxxxxxxx10000011100
2078 strb. */
2079 return 840;
2081 else
2083 /* 33222222222211111111110000000000
2084 10987654321098765432109876543210
2085 xxxxxxxxxx01xxxxxxxxx10000011110
2086 strh. */
2087 return 845;
2090 else
2092 /* 33222222222211111111110000000000
2093 10987654321098765432109876543210
2094 xxxxxxxxxx01xxxxxxxxx100000111x1
2095 str. */
2096 return 848;
2099 else
2101 if (((word >> 31) & 0x1) == 0)
2103 if (((word >> 30) & 0x1) == 0)
2105 /* 33222222222211111111110000000000
2106 10987654321098765432109876543210
2107 xxxxxxxxxx01xxxxxxxxx11000011100
2108 ldrb. */
2109 return 841;
2111 else
2113 /* 33222222222211111111110000000000
2114 10987654321098765432109876543210
2115 xxxxxxxxxx01xxxxxxxxx11000011110
2116 ldrh. */
2117 return 846;
2120 else
2122 /* 33222222222211111111110000000000
2123 10987654321098765432109876543210
2124 xxxxxxxxxx01xxxxxxxxx110000111x1
2125 ldr. */
2126 return 849;
2130 else
2132 if (((word >> 30) & 0x1) == 0)
2134 if (((word >> 31) & 0x1) == 0)
2136 /* 33222222222211111111110000000000
2137 10987654321098765432109876543210
2138 xxxxxxxxxx01xxxxxxxxx1x100011100
2139 ldrsb. */
2140 return 842;
2142 else
2144 /* 33222222222211111111110000000000
2145 10987654321098765432109876543210
2146 xxxxxxxxxx01xxxxxxxxx1x100011101
2147 ldrsw. */
2148 return 850;
2151 else
2153 if (((word >> 31) & 0x1) == 0)
2155 /* 33222222222211111111110000000000
2156 10987654321098765432109876543210
2157 xxxxxxxxxx01xxxxxxxxx1x100011110
2158 ldrsh. */
2159 return 847;
2161 else
2163 /* 33222222222211111111110000000000
2164 10987654321098765432109876543210
2165 xxxxxxxxxx01xxxxxxxxx1x100011111
2166 prfm. */
2167 return 851;
2174 else
2176 if (((word >> 23) & 0x1) == 0)
2178 if (((word >> 22) & 0x1) == 0)
2180 if (((word >> 31) & 0x1) == 0)
2182 if (((word >> 30) & 0x1) == 0)
2184 /* 33222222222211111111110000000000
2185 10987654321098765432109876543210
2186 xxxxxxxxxx1xxxxxxxxxxx0000011100
2187 strb. */
2188 return 817;
2190 else
2192 /* 33222222222211111111110000000000
2193 10987654321098765432109876543210
2194 xxxxxxxxxx1xxxxxxxxxxx0000011110
2195 strh. */
2196 return 822;
2199 else
2201 /* 33222222222211111111110000000000
2202 10987654321098765432109876543210
2203 xxxxxxxxxx1xxxxxxxxxxx00000111x1
2204 str. */
2205 return 825;
2208 else
2210 if (((word >> 31) & 0x1) == 0)
2212 if (((word >> 30) & 0x1) == 0)
2214 /* 33222222222211111111110000000000
2215 10987654321098765432109876543210
2216 xxxxxxxxxx1xxxxxxxxxxx1000011100
2217 ldrb. */
2218 return 818;
2220 else
2222 /* 33222222222211111111110000000000
2223 10987654321098765432109876543210
2224 xxxxxxxxxx1xxxxxxxxxxx1000011110
2225 ldrh. */
2226 return 823;
2229 else
2231 /* 33222222222211111111110000000000
2232 10987654321098765432109876543210
2233 xxxxxxxxxx1xxxxxxxxxxx10000111x1
2234 ldr. */
2235 return 826;
2239 else
2241 if (((word >> 30) & 0x1) == 0)
2243 if (((word >> 31) & 0x1) == 0)
2245 /* 33222222222211111111110000000000
2246 10987654321098765432109876543210
2247 xxxxxxxxxx1xxxxxxxxxxxx100011100
2248 ldrsb. */
2249 return 819;
2251 else
2253 /* 33222222222211111111110000000000
2254 10987654321098765432109876543210
2255 xxxxxxxxxx1xxxxxxxxxxxx100011101
2256 ldrsw. */
2257 return 827;
2260 else
2262 /* 33222222222211111111110000000000
2263 10987654321098765432109876543210
2264 xxxxxxxxxx1xxxxxxxxxxxx10001111x
2265 ldrsh. */
2266 return 824;
2272 else
2274 if (((word >> 23) & 0x1) == 0)
2276 if (((word >> 22) & 0x1) == 0)
2278 if (((word >> 31) & 0x1) == 0)
2280 if (((word >> 30) & 0x1) == 0)
2282 /* 33222222222211111111110000000000
2283 10987654321098765432109876543210
2284 xxxxxxxxxxxxxxxxxxxxxx0010011x00
2285 strb. */
2286 return 828;
2288 else
2290 /* 33222222222211111111110000000000
2291 10987654321098765432109876543210
2292 xxxxxxxxxxxxxxxxxxxxxx0010011x10
2293 strh. */
2294 return 833;
2297 else
2299 /* 33222222222211111111110000000000
2300 10987654321098765432109876543210
2301 xxxxxxxxxxxxxxxxxxxxxx0010011xx1
2302 str. */
2303 return 836;
2306 else
2308 if (((word >> 31) & 0x1) == 0)
2310 if (((word >> 30) & 0x1) == 0)
2312 /* 33222222222211111111110000000000
2313 10987654321098765432109876543210
2314 xxxxxxxxxxxxxxxxxxxxxx1010011x00
2315 ldrb. */
2316 return 829;
2318 else
2320 /* 33222222222211111111110000000000
2321 10987654321098765432109876543210
2322 xxxxxxxxxxxxxxxxxxxxxx1010011x10
2323 ldrh. */
2324 return 834;
2327 else
2329 /* 33222222222211111111110000000000
2330 10987654321098765432109876543210
2331 xxxxxxxxxxxxxxxxxxxxxx1010011xx1
2332 ldr. */
2333 return 837;
2337 else
2339 if (((word >> 30) & 0x1) == 0)
2341 if (((word >> 31) & 0x1) == 0)
2343 /* 33222222222211111111110000000000
2344 10987654321098765432109876543210
2345 xxxxxxxxxxxxxxxxxxxxxxx110011x00
2346 ldrsb. */
2347 return 830;
2349 else
2351 /* 33222222222211111111110000000000
2352 10987654321098765432109876543210
2353 xxxxxxxxxxxxxxxxxxxxxxx110011x01
2354 ldrsw. */
2355 return 838;
2358 else
2360 if (((word >> 31) & 0x1) == 0)
2362 /* 33222222222211111111110000000000
2363 10987654321098765432109876543210
2364 xxxxxxxxxxxxxxxxxxxxxxx110011x10
2365 ldrsh. */
2366 return 835;
2368 else
2370 /* 33222222222211111111110000000000
2371 10987654321098765432109876543210
2372 xxxxxxxxxxxxxxxxxxxxxxx110011x11
2373 prfm. */
2374 return 839;
2382 else
2384 if (((word >> 24) & 0x1) == 0)
2386 if (((word >> 27) & 0x1) == 0)
2388 if (((word >> 23) & 0x1) == 0)
2390 if (((word >> 29) & 0x1) == 0)
2392 if (((word >> 30) & 0x1) == 0)
2394 /* 33222222222211111111110000000000
2395 10987654321098765432109876543210
2396 xxxxxxxxxxxxxxxxxxxxxxx00100x00x
2397 and. */
2398 return 919;
2400 else
2402 /* 33222222222211111111110000000000
2403 10987654321098765432109876543210
2404 xxxxxxxxxxxxxxxxxxxxxxx00100x01x
2405 eor. */
2406 return 923;
2409 else
2411 if (((word >> 30) & 0x1) == 0)
2413 /* 33222222222211111111110000000000
2414 10987654321098765432109876543210
2415 xxxxxxxxxxxxxxxxxxxxxxx00100x10x
2416 orr. */
2417 return 921;
2419 else
2421 /* 33222222222211111111110000000000
2422 10987654321098765432109876543210
2423 xxxxxxxxxxxxxxxxxxxxxxx00100x11x
2424 ands. */
2425 return 924;
2429 else
2431 if (((word >> 29) & 0x1) == 0)
2433 if (((word >> 30) & 0x1) == 0)
2435 /* 33222222222211111111110000000000
2436 10987654321098765432109876543210
2437 xxxxxxxxxxxxxxxxxxxxxxx10100x00x
2438 movn. */
2439 return 1110;
2441 else
2443 /* 33222222222211111111110000000000
2444 10987654321098765432109876543210
2445 xxxxxxxxxxxxxxxxxxxxxxx10100x01x
2446 movz. */
2447 return 1112;
2450 else
2452 /* 33222222222211111111110000000000
2453 10987654321098765432109876543210
2454 xxxxxxxxxxxxxxxxxxxxxxx10100x1xx
2455 movk. */
2456 return 1114;
2460 else
2462 if (((word >> 21) & 0x1) == 0)
2464 if (((word >> 28) & 0x1) == 0)
2466 if (((word >> 29) & 0x1) == 0)
2468 if (((word >> 30) & 0x1) == 0)
2470 /* 33222222222211111111110000000000
2471 10987654321098765432109876543210
2472 xxxxxxxxxxxxxxxxxxxxx0xx0101000x
2473 and. */
2474 return 926;
2476 else
2478 /* 33222222222211111111110000000000
2479 10987654321098765432109876543210
2480 xxxxxxxxxxxxxxxxxxxxx0xx0101001x
2481 eor. */
2482 return 933;
2485 else
2487 if (((word >> 30) & 0x1) == 0)
2489 /* 33222222222211111111110000000000
2490 10987654321098765432109876543210
2491 xxxxxxxxxxxxxxxxxxxxx0xx0101010x
2492 orr. */
2493 return 928;
2495 else
2497 /* 33222222222211111111110000000000
2498 10987654321098765432109876543210
2499 xxxxxxxxxxxxxxxxxxxxx0xx0101011x
2500 ands. */
2501 return 935;
2505 else
2507 if (((word >> 10) & 0x1) == 0)
2509 if (((word >> 11) & 0x1) == 0)
2511 if (((word >> 22) & 0x1) == 0)
2513 if (((word >> 23) & 0x1) == 0)
2515 if (((word >> 29) & 0x1) == 0)
2517 if (((word >> 30) & 0x1) == 0)
2519 /* 33222222222211111111110000000000
2520 10987654321098765432109876543210
2521 xxxxxxxxxx00xxxxxxxxx0000101100x
2522 adc. */
2523 return 0;
2525 else
2527 /* 33222222222211111111110000000000
2528 10987654321098765432109876543210
2529 xxxxxxxxxx00xxxxxxxxx0000101101x
2530 sbc. */
2531 return 2;
2534 else
2536 if (((word >> 30) & 0x1) == 0)
2538 /* 33222222222211111111110000000000
2539 10987654321098765432109876543210
2540 xxxxxxxxxx00xxxxxxxxx0000101110x
2541 adcs. */
2542 return 1;
2544 else
2546 /* 33222222222211111111110000000000
2547 10987654321098765432109876543210
2548 xxxxxxxxxx00xxxxxxxxx0000101111x
2549 sbcs. */
2550 return 4;
2554 else
2556 if (((word >> 30) & 0x1) == 0)
2558 /* 33222222222211111111110000000000
2559 10987654321098765432109876543210
2560 xxxxxxxxxx00xxxxxxxxx00101011x0x
2561 csel. */
2562 return 641;
2564 else
2566 /* 33222222222211111111110000000000
2567 10987654321098765432109876543210
2568 xxxxxxxxxx00xxxxxxxxx00101011x1x
2569 csinv. */
2570 return 645;
2574 else
2576 if (((word >> 23) & 0x1) == 0)
2578 if (((word >> 30) & 0x1) == 0)
2580 /* 33222222222211111111110000000000
2581 10987654321098765432109876543210
2582 xxxxxxxxxx00xxxxxxxxx01001011x0x
2583 ccmn. */
2584 return 639;
2586 else
2588 /* 33222222222211111111110000000000
2589 10987654321098765432109876543210
2590 xxxxxxxxxx00xxxxxxxxx01001011x1x
2591 ccmp. */
2592 return 640;
2595 else
2597 if (((word >> 12) & 0x1) == 0)
2599 if (((word >> 13) & 0x1) == 0)
2601 if (((word >> 14) & 0x1) == 0)
2603 /* 33222222222211111111110000000000
2604 10987654321098765432109876543210
2605 xxxxxxxxxx00000xxxxxx01101011xxx
2606 rbit. */
2607 return 664;
2609 else
2611 /* 33222222222211111111110000000000
2612 10987654321098765432109876543210
2613 xxxxxxxxxx00001xxxxxx01101011xxx
2614 crc32b. */
2615 return 682;
2618 else
2620 /* 33222222222211111111110000000000
2621 10987654321098765432109876543210
2622 xxxxxxxxxx0001xxxxxxx01101011xxx
2623 lslv. */
2624 return 674;
2627 else
2629 if (((word >> 14) & 0x1) == 0)
2631 /* 33222222222211111111110000000000
2632 10987654321098765432109876543210
2633 xxxxxxxxxx001x0xxxxxx01101011xxx
2634 clz. */
2635 return 669;
2637 else
2639 /* 33222222222211111111110000000000
2640 10987654321098765432109876543210
2641 xxxxxxxxxx001x1xxxxxx01101011xxx
2642 crc32cb. */
2643 return 686;
2649 else
2651 if (((word >> 23) & 0x1) == 0)
2653 if (((word >> 30) & 0x1) == 0)
2655 /* 33222222222211111111110000000000
2656 10987654321098765432109876543210
2657 xxxxxxxxxx01xxxxxxxxx0x001011x0x
2658 ccmn. */
2659 return 637;
2661 else
2663 /* 33222222222211111111110000000000
2664 10987654321098765432109876543210
2665 xxxxxxxxxx01xxxxxxxxx0x001011x1x
2666 ccmp. */
2667 return 638;
2670 else
2672 if (((word >> 12) & 0x1) == 0)
2674 if (((word >> 13) & 0x1) == 0)
2676 if (((word >> 14) & 0x1) == 0)
2678 if (((word >> 30) & 0x1) == 0)
2680 /* 33222222222211111111110000000000
2681 10987654321098765432109876543210
2682 xxxxxxxxxx01000xxxxxx0x101011x0x
2683 udiv. */
2684 return 672;
2686 else
2688 if (((word >> 31) & 0x1) == 0)
2690 /* 33222222222211111111110000000000
2691 10987654321098765432109876543210
2692 xxxxxxxxxx01000xxxxxx0x101011x10
2693 rev. */
2694 return 666;
2696 else
2698 /* 33222222222211111111110000000000
2699 10987654321098765432109876543210
2700 xxxxxxxxxx01000xxxxxx0x101011x11
2701 rev32. */
2702 return 671;
2706 else
2708 /* 33222222222211111111110000000000
2709 10987654321098765432109876543210
2710 xxxxxxxxxx01001xxxxxx0x101011xxx
2711 crc32w. */
2712 return 684;
2715 else
2717 /* 33222222222211111111110000000000
2718 10987654321098765432109876543210
2719 xxxxxxxxxx0101xxxxxxx0x101011xxx
2720 asrv. */
2721 return 678;
2724 else
2726 /* 33222222222211111111110000000000
2727 10987654321098765432109876543210
2728 xxxxxxxxxx011xxxxxxxx0x101011xxx
2729 crc32cw. */
2730 return 688;
2735 else
2737 if (((word >> 11) & 0x1) == 0)
2739 if (((word >> 22) & 0x1) == 0)
2741 if (((word >> 30) & 0x1) == 0)
2743 /* 33222222222211111111110000000000
2744 10987654321098765432109876543210
2745 xxxxxxxxxx10xxxxxxxxx00x01011x0x
2746 csinc. */
2747 return 642;
2749 else
2751 /* 33222222222211111111110000000000
2752 10987654321098765432109876543210
2753 xxxxxxxxxx10xxxxxxxxx00x01011x1x
2754 csneg. */
2755 return 648;
2758 else
2760 if (((word >> 12) & 0x1) == 0)
2762 if (((word >> 13) & 0x1) == 0)
2764 if (((word >> 14) & 0x1) == 0)
2766 /* 33222222222211111111110000000000
2767 10987654321098765432109876543210
2768 xxxxxxxxxx10000xxxxxx01x01011xxx
2769 rev16. */
2770 return 665;
2772 else
2774 /* 33222222222211111111110000000000
2775 10987654321098765432109876543210
2776 xxxxxxxxxx10001xxxxxx01x01011xxx
2777 crc32h. */
2778 return 683;
2781 else
2783 /* 33222222222211111111110000000000
2784 10987654321098765432109876543210
2785 xxxxxxxxxx1001xxxxxxx01x01011xxx
2786 lsrv. */
2787 return 676;
2790 else
2792 if (((word >> 14) & 0x1) == 0)
2794 /* 33222222222211111111110000000000
2795 10987654321098765432109876543210
2796 xxxxxxxxxx101x0xxxxxx01x01011xxx
2797 cls. */
2798 return 670;
2800 else
2802 /* 33222222222211111111110000000000
2803 10987654321098765432109876543210
2804 xxxxxxxxxx101x1xxxxxx01x01011xxx
2805 crc32ch. */
2806 return 687;
2811 else
2813 if (((word >> 12) & 0x1) == 0)
2815 if (((word >> 13) & 0x1) == 0)
2817 if (((word >> 14) & 0x1) == 0)
2819 if (((word >> 30) & 0x1) == 0)
2821 /* 33222222222211111111110000000000
2822 10987654321098765432109876543210
2823 xxxxxxxxxx11000xxxxxx0xx01011x0x
2824 sdiv. */
2825 return 673;
2827 else
2829 /* 33222222222211111111110000000000
2830 10987654321098765432109876543210
2831 xxxxxxxxxx11000xxxxxx0xx01011x1x
2832 rev. */
2833 return 667;
2836 else
2838 /* 33222222222211111111110000000000
2839 10987654321098765432109876543210
2840 xxxxxxxxxx11001xxxxxx0xx01011xxx
2841 crc32x. */
2842 return 685;
2845 else
2847 /* 33222222222211111111110000000000
2848 10987654321098765432109876543210
2849 xxxxxxxxxx1101xxxxxxx0xx01011xxx
2850 rorv. */
2851 return 680;
2854 else
2856 /* 33222222222211111111110000000000
2857 10987654321098765432109876543210
2858 xxxxxxxxxx111xxxxxxxx0xx01011xxx
2859 crc32cx. */
2860 return 689;
2866 else
2868 if (((word >> 29) & 0x1) == 0)
2870 if (((word >> 30) & 0x1) == 0)
2872 /* 33222222222211111111110000000000
2873 10987654321098765432109876543210
2874 xxxxxxxxxxxxxxxxxxxxx1xx0101x00x
2875 bic. */
2876 return 927;
2878 else
2880 /* 33222222222211111111110000000000
2881 10987654321098765432109876543210
2882 xxxxxxxxxxxxxxxxxxxxx1xx0101x01x
2883 eon. */
2884 return 934;
2887 else
2889 if (((word >> 30) & 0x1) == 0)
2891 /* 33222222222211111111110000000000
2892 10987654321098765432109876543210
2893 xxxxxxxxxxxxxxxxxxxxx1xx0101x10x
2894 orn. */
2895 return 931;
2897 else
2899 /* 33222222222211111111110000000000
2900 10987654321098765432109876543210
2901 xxxxxxxxxxxxxxxxxxxxx1xx0101x11x
2902 bics. */
2903 return 937;
2909 else
2911 if (((word >> 27) & 0x1) == 0)
2913 if (((word >> 23) & 0x1) == 0)
2915 if (((word >> 29) & 0x1) == 0)
2917 if (((word >> 30) & 0x1) == 0)
2919 /* 33222222222211111111110000000000
2920 10987654321098765432109876543210
2921 xxxxxxxxxxxxxxxxxxxxxxx01100x00x
2922 sbfm. */
2923 return 609;
2925 else
2927 /* 33222222222211111111110000000000
2928 10987654321098765432109876543210
2929 xxxxxxxxxxxxxxxxxxxxxxx01100x01x
2930 ubfm. */
2931 return 620;
2934 else
2936 /* 33222222222211111111110000000000
2937 10987654321098765432109876543210
2938 xxxxxxxxxxxxxxxxxxxxxxx01100x1xx
2939 bfm. */
2940 return 616;
2943 else
2945 /* 33222222222211111111110000000000
2946 10987654321098765432109876543210
2947 xxxxxxxxxxxxxxxxxxxxxxx11100xxxx
2948 extr. */
2949 return 712;
2952 else
2954 if (((word >> 21) & 0x1) == 0)
2956 if (((word >> 28) & 0x1) == 0)
2958 if (((word >> 29) & 0x1) == 0)
2960 if (((word >> 30) & 0x1) == 0)
2962 /* 33222222222211111111110000000000
2963 10987654321098765432109876543210
2964 xxxxxxxxxxxxxxxxxxxxx0xx1101000x
2965 add. */
2966 return 19;
2968 else
2970 /* 33222222222211111111110000000000
2971 10987654321098765432109876543210
2972 xxxxxxxxxxxxxxxxxxxxx0xx1101001x
2973 sub. */
2974 return 22;
2977 else
2979 if (((word >> 30) & 0x1) == 0)
2981 /* 33222222222211111111110000000000
2982 10987654321098765432109876543210
2983 xxxxxxxxxxxxxxxxxxxxx0xx1101010x
2984 adds. */
2985 return 20;
2987 else
2989 /* 33222222222211111111110000000000
2990 10987654321098765432109876543210
2991 xxxxxxxxxxxxxxxxxxxxx0xx1101011x
2992 subs. */
2993 return 24;
2997 else
2999 if (((word >> 15) & 0x1) == 0)
3001 if (((word >> 22) & 0x1) == 0)
3003 /* 33222222222211111111110000000000
3004 10987654321098765432109876543210
3005 xxxxxxxxxxxxxxx0xxxxx00x11011xxx
3006 madd. */
3007 return 690;
3009 else
3011 if (((word >> 23) & 0x1) == 0)
3013 /* 33222222222211111111110000000000
3014 10987654321098765432109876543210
3015 xxxxxxxxxxxxxxx0xxxxx01011011xxx
3016 smulh. */
3017 return 698;
3019 else
3021 /* 33222222222211111111110000000000
3022 10987654321098765432109876543210
3023 xxxxxxxxxxxxxxx0xxxxx01111011xxx
3024 umulh. */
3025 return 703;
3029 else
3031 /* 33222222222211111111110000000000
3032 10987654321098765432109876543210
3033 xxxxxxxxxxxxxxx1xxxxx0xx11011xxx
3034 msub. */
3035 return 692;
3039 else
3041 if (((word >> 23) & 0x1) == 0)
3043 if (((word >> 28) & 0x1) == 0)
3045 if (((word >> 29) & 0x1) == 0)
3047 if (((word >> 30) & 0x1) == 0)
3049 /* 33222222222211111111110000000000
3050 10987654321098765432109876543210
3051 xxxxxxxxxxxxxxxxxxxxx1x01101000x
3052 add. */
3053 return 6;
3055 else
3057 /* 33222222222211111111110000000000
3058 10987654321098765432109876543210
3059 xxxxxxxxxxxxxxxxxxxxx1x01101001x
3060 sub. */
3061 return 9;
3064 else
3066 if (((word >> 30) & 0x1) == 0)
3068 /* 33222222222211111111110000000000
3069 10987654321098765432109876543210
3070 xxxxxxxxxxxxxxxxxxxxx1x01101010x
3071 adds. */
3072 return 7;
3074 else
3076 /* 33222222222211111111110000000000
3077 10987654321098765432109876543210
3078 xxxxxxxxxxxxxxxxxxxxx1x01101011x
3079 subs. */
3080 return 10;
3084 else
3086 if (((word >> 15) & 0x1) == 0)
3088 /* 33222222222211111111110000000000
3089 10987654321098765432109876543210
3090 xxxxxxxxxxxxxxx0xxxxx1x011011xxx
3091 smaddl. */
3092 return 694;
3094 else
3096 /* 33222222222211111111110000000000
3097 10987654321098765432109876543210
3098 xxxxxxxxxxxxxxx1xxxxx1x011011xxx
3099 smsubl. */
3100 return 696;
3104 else
3106 if (((word >> 15) & 0x1) == 0)
3108 /* 33222222222211111111110000000000
3109 10987654321098765432109876543210
3110 xxxxxxxxxxxxxxx0xxxxx1x11101xxxx
3111 umaddl. */
3112 return 699;
3114 else
3116 /* 33222222222211111111110000000000
3117 10987654321098765432109876543210
3118 xxxxxxxxxxxxxxx1xxxxx1x11101xxxx
3119 umsubl. */
3120 return 701;
3128 else
3130 if (((word >> 27) & 0x1) == 0)
3132 if (((word >> 29) & 0x1) == 0)
3134 if (((word >> 30) & 0x1) == 0)
3136 if (((word >> 31) & 0x1) == 0)
3138 /* 33222222222211111111110000000000
3139 10987654321098765432109876543210
3140 xxxxxxxxxxxxxxxxxxxxxxxxxx10x000
3141 b. */
3142 return 627;
3144 else
3146 /* 33222222222211111111110000000000
3147 10987654321098765432109876543210
3148 xxxxxxxxxxxxxxxxxxxxxxxxxx10x001
3149 bl. */
3150 return 628;
3153 else
3155 if (((word >> 24) & 0x1) == 0)
3157 if (((word >> 25) & 0x1) == 0)
3159 if (((word >> 31) & 0x1) == 0)
3161 /* 33222222222211111111110000000000
3162 10987654321098765432109876543210
3163 xxxxxxxxxxxxxxxxxxxxxxxx0010x010
3164 b.c. */
3165 return 636;
3167 else
3169 if (((word >> 0) & 0x1) == 0)
3171 if (((word >> 1) & 0x1) == 0)
3173 if (((word >> 21) & 0x1) == 0)
3175 /* 33222222222211111111110000000000
3176 10987654321098765432109876543210
3177 00xxxxxxxxxxxxxxxxxxx0xx0010x011
3178 hlt. */
3179 return 708;
3181 else
3183 /* 33222222222211111111110000000000
3184 10987654321098765432109876543210
3185 00xxxxxxxxxxxxxxxxxxx1xx0010x011
3186 brk. */
3187 return 707;
3190 else
3192 if (((word >> 21) & 0x1) == 0)
3194 /* 33222222222211111111110000000000
3195 10987654321098765432109876543210
3196 01xxxxxxxxxxxxxxxxxxx0xx0010x011
3197 hvc. */
3198 return 705;
3200 else
3202 /* 33222222222211111111110000000000
3203 10987654321098765432109876543210
3204 01xxxxxxxxxxxxxxxxxxx1xx0010x011
3205 dcps2. */
3206 return 710;
3210 else
3212 if (((word >> 1) & 0x1) == 0)
3214 if (((word >> 21) & 0x1) == 0)
3216 /* 33222222222211111111110000000000
3217 10987654321098765432109876543210
3218 10xxxxxxxxxxxxxxxxxxx0xx0010x011
3219 svc. */
3220 return 704;
3222 else
3224 /* 33222222222211111111110000000000
3225 10987654321098765432109876543210
3226 10xxxxxxxxxxxxxxxxxxx1xx0010x011
3227 dcps1. */
3228 return 709;
3231 else
3233 if (((word >> 21) & 0x1) == 0)
3235 /* 33222222222211111111110000000000
3236 10987654321098765432109876543210
3237 11xxxxxxxxxxxxxxxxxxx0xx0010x011
3238 smc. */
3239 return 706;
3241 else
3243 /* 33222222222211111111110000000000
3244 10987654321098765432109876543210
3245 11xxxxxxxxxxxxxxxxxxx1xx0010x011
3246 dcps3. */
3247 return 711;
3253 else
3255 if (((word >> 21) & 0x1) == 0)
3257 if (((word >> 22) & 0x1) == 0)
3259 if (((word >> 23) & 0x1) == 0)
3261 /* 33222222222211111111110000000000
3262 10987654321098765432109876543210
3263 xxxxxxxxxxxxxxxxxxxxx0000110x01x
3264 br. */
3265 return 629;
3267 else
3269 /* 33222222222211111111110000000000
3270 10987654321098765432109876543210
3271 xxxxxxxxxxxxxxxxxxxxx0010110x01x
3272 eret. */
3273 return 632;
3276 else
3278 /* 33222222222211111111110000000000
3279 10987654321098765432109876543210
3280 xxxxxxxxxxxxxxxxxxxxx01x0110x01x
3281 ret. */
3282 return 631;
3285 else
3287 if (((word >> 23) & 0x1) == 0)
3289 /* 33222222222211111111110000000000
3290 10987654321098765432109876543210
3291 xxxxxxxxxxxxxxxxxxxxx1x00110x01x
3292 blr. */
3293 return 630;
3295 else
3297 /* 33222222222211111111110000000000
3298 10987654321098765432109876543210
3299 xxxxxxxxxxxxxxxxxxxxx1x10110x01x
3300 drps. */
3301 return 633;
3306 else
3308 if (((word >> 21) & 0x1) == 0)
3310 /* 33222222222211111111110000000000
3311 10987654321098765432109876543210
3312 xxxxxxxxxxxxxxxxxxxxx0xx1x10x01x
3313 msr. */
3314 return 1117;
3316 else
3318 /* 33222222222211111111110000000000
3319 10987654321098765432109876543210
3320 xxxxxxxxxxxxxxxxxxxxx1xx1x10x01x
3321 sysl. */
3322 return 1137;
3327 else
3329 if (((word >> 24) & 0x1) == 0)
3331 if (((word >> 25) & 0x1) == 0)
3333 /* 33222222222211111111110000000000
3334 10987654321098765432109876543210
3335 xxxxxxxxxxxxxxxxxxxxxxxx0010x1xx
3336 cbz. */
3337 return 634;
3339 else
3341 /* 33222222222211111111110000000000
3342 10987654321098765432109876543210
3343 xxxxxxxxxxxxxxxxxxxxxxxx0110x1xx
3344 tbz. */
3345 return 1139;
3348 else
3350 if (((word >> 25) & 0x1) == 0)
3352 /* 33222222222211111111110000000000
3353 10987654321098765432109876543210
3354 xxxxxxxxxxxxxxxxxxxxxxxx1010x1xx
3355 cbnz. */
3356 return 635;
3358 else
3360 /* 33222222222211111111110000000000
3361 10987654321098765432109876543210
3362 xxxxxxxxxxxxxxxxxxxxxxxx1110x1xx
3363 tbnz. */
3364 return 1140;
3369 else
3371 if (((word >> 25) & 0x1) == 0)
3373 if (((word >> 28) & 0x1) == 0)
3375 if (((word >> 22) & 0x1) == 0)
3377 if (((word >> 23) & 0x1) == 0)
3379 if (((word >> 24) & 0x1) == 0)
3381 if (((word >> 29) & 0x1) == 0)
3383 /* 33222222222211111111110000000000
3384 10987654321098765432109876543210
3385 xxxxxxxxxxxxxxxxxxxxxx00001100xx
3386 st4. */
3387 return 431;
3389 else
3391 /* 33222222222211111111110000000000
3392 10987654321098765432109876543210
3393 xxxxxxxxxxxxxxxxxxxxxx00001101xx
3394 stnp. */
3395 return 903;
3398 else
3400 if (((word >> 29) & 0x1) == 0)
3402 if (((word >> 13) & 0x1) == 0)
3404 if (((word >> 21) & 0x1) == 0)
3406 /* 33222222222211111111110000000000
3407 10987654321098765432109876543210
3408 xxxxxxxxxxxxx0xxxxxxx000101100xx
3409 st1. */
3410 return 447;
3412 else
3414 /* 33222222222211111111110000000000
3415 10987654321098765432109876543210
3416 xxxxxxxxxxxxx0xxxxxxx100101100xx
3417 st2. */
3418 return 449;
3421 else
3423 if (((word >> 21) & 0x1) == 0)
3425 /* 33222222222211111111110000000000
3426 10987654321098765432109876543210
3427 xxxxxxxxxxxxx1xxxxxxx000101100xx
3428 st3. */
3429 return 448;
3431 else
3433 /* 33222222222211111111110000000000
3434 10987654321098765432109876543210
3435 xxxxxxxxxxxxx1xxxxxxx100101100xx
3436 st4. */
3437 return 450;
3441 else
3443 /* 33222222222211111111110000000000
3444 10987654321098765432109876543210
3445 xxxxxxxxxxxxxxxxxxxxxx00101101xx
3446 stp. */
3447 return 907;
3451 else
3453 if (((word >> 29) & 0x1) == 0)
3455 if (((word >> 21) & 0x1) == 0)
3457 if (((word >> 24) & 0x1) == 0)
3459 /* 33222222222211111111110000000000
3460 10987654321098765432109876543210
3461 xxxxxxxxxxxxxxxxxxxxx001001100xx
3462 st4. */
3463 return 439;
3465 else
3467 if (((word >> 13) & 0x1) == 0)
3469 /* 33222222222211111111110000000000
3470 10987654321098765432109876543210
3471 xxxxxxxxxxxxx0xxxxxxx001101100xx
3472 st1. */
3473 return 459;
3475 else
3477 /* 33222222222211111111110000000000
3478 10987654321098765432109876543210
3479 xxxxxxxxxxxxx1xxxxxxx001101100xx
3480 st3. */
3481 return 460;
3485 else
3487 if (((word >> 13) & 0x1) == 0)
3489 /* 33222222222211111111110000000000
3490 10987654321098765432109876543210
3491 xxxxxxxxxxxxx0xxxxxxx101x01100xx
3492 st2. */
3493 return 461;
3495 else
3497 /* 33222222222211111111110000000000
3498 10987654321098765432109876543210
3499 xxxxxxxxxxxxx1xxxxxxx101x01100xx
3500 st4. */
3501 return 462;
3505 else
3507 /* 33222222222211111111110000000000
3508 10987654321098765432109876543210
3509 xxxxxxxxxxxxxxxxxxxxxx01x01101xx
3510 stp. */
3511 return 912;
3515 else
3517 if (((word >> 23) & 0x1) == 0)
3519 if (((word >> 24) & 0x1) == 0)
3521 if (((word >> 29) & 0x1) == 0)
3523 /* 33222222222211111111110000000000
3524 10987654321098765432109876543210
3525 xxxxxxxxxxxxxxxxxxxxxx10001100xx
3526 ld4. */
3527 return 435;
3529 else
3531 /* 33222222222211111111110000000000
3532 10987654321098765432109876543210
3533 xxxxxxxxxxxxxxxxxxxxxx10001101xx
3534 ldnp. */
3535 return 904;
3538 else
3540 if (((word >> 29) & 0x1) == 0)
3542 if (((word >> 13) & 0x1) == 0)
3544 if (((word >> 21) & 0x1) == 0)
3546 /* 33222222222211111111110000000000
3547 10987654321098765432109876543210
3548 xxxxxxxxxxxxx0xxxxxxx010101100xx
3549 ld1. */
3550 return 451;
3552 else
3554 /* 33222222222211111111110000000000
3555 10987654321098765432109876543210
3556 xxxxxxxxxxxxx0xxxxxxx110101100xx
3557 ld2. */
3558 return 455;
3561 else
3563 if (((word >> 21) & 0x1) == 0)
3565 /* 33222222222211111111110000000000
3566 10987654321098765432109876543210
3567 xxxxxxxxxxxxx1xxxxxxx010101100xx
3568 ld3. */
3569 return 452;
3571 else
3573 /* 33222222222211111111110000000000
3574 10987654321098765432109876543210
3575 xxxxxxxxxxxxx1xxxxxxx110101100xx
3576 ld4. */
3577 return 456;
3581 else
3583 /* 33222222222211111111110000000000
3584 10987654321098765432109876543210
3585 xxxxxxxxxxxxxxxxxxxxxx10101101xx
3586 ldp. */
3587 return 908;
3591 else
3593 if (((word >> 29) & 0x1) == 0)
3595 if (((word >> 21) & 0x1) == 0)
3597 if (((word >> 24) & 0x1) == 0)
3599 /* 33222222222211111111110000000000
3600 10987654321098765432109876543210
3601 xxxxxxxxxxxxxxxxxxxxx011001100xx
3602 ld4. */
3603 return 443;
3605 else
3607 if (((word >> 13) & 0x1) == 0)
3609 /* 33222222222211111111110000000000
3610 10987654321098765432109876543210
3611 xxxxxxxxxxxxx0xxxxxxx011101100xx
3612 ld1. */
3613 return 463;
3615 else
3617 /* 33222222222211111111110000000000
3618 10987654321098765432109876543210
3619 xxxxxxxxxxxxx1xxxxxxx011101100xx
3620 ld3. */
3621 return 464;
3625 else
3627 if (((word >> 13) & 0x1) == 0)
3629 /* 33222222222211111111110000000000
3630 10987654321098765432109876543210
3631 xxxxxxxxxxxxx0xxxxxxx111x01100xx
3632 ld2. */
3633 return 467;
3635 else
3637 /* 33222222222211111111110000000000
3638 10987654321098765432109876543210
3639 xxxxxxxxxxxxx1xxxxxxx111x01100xx
3640 ld4. */
3641 return 468;
3645 else
3647 /* 33222222222211111111110000000000
3648 10987654321098765432109876543210
3649 xxxxxxxxxxxxxxxxxxxxxx11x01101xx
3650 ldp. */
3651 return 913;
3656 else
3658 if (((word >> 24) & 0x1) == 0)
3660 if (((word >> 29) & 0x1) == 0)
3662 /* 33222222222211111111110000000000
3663 10987654321098765432109876543210
3664 xxxxxxxxxxxxxxxxxxxxxxxx001110xx
3665 ldr. */
3666 return 916;
3668 else
3670 if (((word >> 10) & 0x1) == 0)
3672 if (((word >> 11) & 0x1) == 0)
3674 if (((word >> 22) & 0x1) == 0)
3676 /* 33222222222211111111110000000000
3677 10987654321098765432109876543210
3678 xxxxxxxxxx00xxxxxxxxxx0x001111xx
3679 stur. */
3680 return 864;
3682 else
3684 /* 33222222222211111111110000000000
3685 10987654321098765432109876543210
3686 xxxxxxxxxx00xxxxxxxxxx1x001111xx
3687 ldur. */
3688 return 865;
3691 else
3693 if (((word >> 22) & 0x1) == 0)
3695 /* 33222222222211111111110000000000
3696 10987654321098765432109876543210
3697 xxxxxxxxxx01xxxxxxxxxx0x001111xx
3698 str. */
3699 return 843;
3701 else
3703 /* 33222222222211111111110000000000
3704 10987654321098765432109876543210
3705 xxxxxxxxxx01xxxxxxxxxx1x001111xx
3706 ldr. */
3707 return 844;
3711 else
3713 if (((word >> 22) & 0x1) == 0)
3715 /* 33222222222211111111110000000000
3716 10987654321098765432109876543210
3717 xxxxxxxxxx1xxxxxxxxxxx0x001111xx
3718 str. */
3719 return 820;
3721 else
3723 /* 33222222222211111111110000000000
3724 10987654321098765432109876543210
3725 xxxxxxxxxx1xxxxxxxxxxx1x001111xx
3726 ldr. */
3727 return 821;
3732 else
3734 if (((word >> 22) & 0x1) == 0)
3736 /* 33222222222211111111110000000000
3737 10987654321098765432109876543210
3738 xxxxxxxxxxxxxxxxxxxxxx0x10111xxx
3739 str. */
3740 return 831;
3742 else
3744 /* 33222222222211111111110000000000
3745 10987654321098765432109876543210
3746 xxxxxxxxxxxxxxxxxxxxxx1x10111xxx
3747 ldr. */
3748 return 832;
3753 else
3755 if (((word >> 24) & 0x1) == 0)
3757 if (((word >> 21) & 0x1) == 0)
3759 if (((word >> 28) & 0x1) == 0)
3761 if (((word >> 10) & 0x1) == 0)
3763 if (((word >> 29) & 0x1) == 0)
3765 if (((word >> 11) & 0x1) == 0)
3767 if (((word >> 12) & 0x1) == 0)
3769 /* 33222222222211111111110000000000
3770 10987654321098765432109876543210
3771 xxxxxxxxxx000xxxxxxxx0xx011100xx
3772 tbl. */
3773 return 411;
3775 else
3777 /* 33222222222211111111110000000000
3778 10987654321098765432109876543210
3779 xxxxxxxxxx001xxxxxxxx0xx011100xx
3780 tbx. */
3781 return 412;
3784 else
3786 if (((word >> 12) & 0x1) == 0)
3788 if (((word >> 14) & 0x1) == 0)
3790 /* 33222222222211111111110000000000
3791 10987654321098765432109876543210
3792 xxxxxxxxxx010x0xxxxxx0xx011100xx
3793 trn1. */
3794 return 256;
3796 else
3798 /* 33222222222211111111110000000000
3799 10987654321098765432109876543210
3800 xxxxxxxxxx010x1xxxxxx0xx011100xx
3801 trn2. */
3802 return 259;
3805 else
3807 if (((word >> 13) & 0x1) == 0)
3809 if (((word >> 14) & 0x1) == 0)
3811 /* 33222222222211111111110000000000
3812 10987654321098765432109876543210
3813 xxxxxxxxxx01100xxxxxx0xx011100xx
3814 uzp1. */
3815 return 255;
3817 else
3819 /* 33222222222211111111110000000000
3820 10987654321098765432109876543210
3821 xxxxxxxxxx01101xxxxxx0xx011100xx
3822 uzp2. */
3823 return 258;
3826 else
3828 if (((word >> 14) & 0x1) == 0)
3830 /* 33222222222211111111110000000000
3831 10987654321098765432109876543210
3832 xxxxxxxxxx01110xxxxxx0xx011100xx
3833 zip1. */
3834 return 257;
3836 else
3838 /* 33222222222211111111110000000000
3839 10987654321098765432109876543210
3840 xxxxxxxxxx01111xxxxxx0xx011100xx
3841 zip2. */
3842 return 260;
3848 else
3850 /* 33222222222211111111110000000000
3851 10987654321098765432109876543210
3852 xxxxxxxxxx0xxxxxxxxxx0xx011101xx
3853 ext. */
3854 return 129;
3857 else
3859 if (((word >> 15) & 0x1) == 0)
3861 if (((word >> 22) & 0x1) == 0)
3863 if (((word >> 29) & 0x1) == 0)
3865 if (((word >> 11) & 0x1) == 0)
3867 /* 33222222222211111111110000000000
3868 10987654321098765432109876543210
3869 xxxxxxxxxx10xxx0xxxxx00x011100xx
3870 dup. */
3871 return 146;
3873 else
3875 if (((word >> 12) & 0x1) == 0)
3877 if (((word >> 13) & 0x1) == 0)
3879 /* 33222222222211111111110000000000
3880 10987654321098765432109876543210
3881 xxxxxxxxxx1100x0xxxxx00x011100xx
3882 dup. */
3883 return 147;
3885 else
3887 /* 33222222222211111111110000000000
3888 10987654321098765432109876543210
3889 xxxxxxxxxx1101x0xxxxx00x011100xx
3890 smov. */
3891 return 148;
3894 else
3896 if (((word >> 13) & 0x1) == 0)
3898 /* 33222222222211111111110000000000
3899 10987654321098765432109876543210
3900 xxxxxxxxxx1110x0xxxxx00x011100xx
3901 ins. */
3902 return 151;
3904 else
3906 /* 33222222222211111111110000000000
3907 10987654321098765432109876543210
3908 xxxxxxxxxx1111x0xxxxx00x011100xx
3909 umov. */
3910 return 149;
3915 else
3917 /* 33222222222211111111110000000000
3918 10987654321098765432109876543210
3919 xxxxxxxxxx1xxxx0xxxxx00x011101xx
3920 ins. */
3921 return 153;
3924 else
3926 if (((word >> 11) & 0x1) == 0)
3928 if (((word >> 12) & 0x1) == 0)
3930 if (((word >> 13) & 0x1) == 0)
3932 if (((word >> 23) & 0x1) == 0)
3934 if (((word >> 29) & 0x1) == 0)
3936 /* 33222222222211111111110000000000
3937 10987654321098765432109876543210
3938 xxxxxxxxxx1000x0xxxxx010011100xx
3939 fmaxnm. */
3940 return 285;
3942 else
3944 /* 33222222222211111111110000000000
3945 10987654321098765432109876543210
3946 xxxxxxxxxx1000x0xxxxx010011101xx
3947 fmaxnmp. */
3948 return 336;
3951 else
3953 if (((word >> 29) & 0x1) == 0)
3955 /* 33222222222211111111110000000000
3956 10987654321098765432109876543210
3957 xxxxxxxxxx1000x0xxxxx011011100xx
3958 fminnm. */
3959 return 301;
3961 else
3963 /* 33222222222211111111110000000000
3964 10987654321098765432109876543210
3965 xxxxxxxxxx1000x0xxxxx011011101xx
3966 fminnmp. */
3967 return 352;
3971 else
3973 if (((word >> 23) & 0x1) == 0)
3975 if (((word >> 29) & 0x1) == 0)
3977 /* 33222222222211111111110000000000
3978 10987654321098765432109876543210
3979 xxxxxxxxxx1001x0xxxxx010011100xx
3980 fcmeq. */
3981 return 293;
3983 else
3985 /* 33222222222211111111110000000000
3986 10987654321098765432109876543210
3987 xxxxxxxxxx1001x0xxxxx010011101xx
3988 fcmge. */
3989 return 342;
3992 else
3994 /* 33222222222211111111110000000000
3995 10987654321098765432109876543210
3996 xxxxxxxxxx1001x0xxxxx01101110xxx
3997 fcmgt. */
3998 return 356;
4002 else
4004 if (((word >> 13) & 0x1) == 0)
4006 if (((word >> 23) & 0x1) == 0)
4008 if (((word >> 29) & 0x1) == 0)
4010 /* 33222222222211111111110000000000
4011 10987654321098765432109876543210
4012 xxxxxxxxxx1010x0xxxxx010011100xx
4013 fadd. */
4014 return 289;
4016 else
4018 /* 33222222222211111111110000000000
4019 10987654321098765432109876543210
4020 xxxxxxxxxx1010x0xxxxx010011101xx
4021 faddp. */
4022 return 338;
4025 else
4027 if (((word >> 29) & 0x1) == 0)
4029 /* 33222222222211111111110000000000
4030 10987654321098765432109876543210
4031 xxxxxxxxxx1010x0xxxxx011011100xx
4032 fsub. */
4033 return 305;
4035 else
4037 /* 33222222222211111111110000000000
4038 10987654321098765432109876543210
4039 xxxxxxxxxx1010x0xxxxx011011101xx
4040 fabd. */
4041 return 354;
4045 else
4047 if (((word >> 23) & 0x1) == 0)
4049 if (((word >> 29) & 0x1) == 0)
4051 /* 33222222222211111111110000000000
4052 10987654321098765432109876543210
4053 xxxxxxxxxx1011x0xxxxx010011100xx
4054 fmax. */
4055 return 295;
4057 else
4059 /* 33222222222211111111110000000000
4060 10987654321098765432109876543210
4061 xxxxxxxxxx1011x0xxxxx010011101xx
4062 fmaxp. */
4063 return 346;
4066 else
4068 if (((word >> 29) & 0x1) == 0)
4070 /* 33222222222211111111110000000000
4071 10987654321098765432109876543210
4072 xxxxxxxxxx1011x0xxxxx011011100xx
4073 fmin. */
4074 return 307;
4076 else
4078 /* 33222222222211111111110000000000
4079 10987654321098765432109876543210
4080 xxxxxxxxxx1011x0xxxxx011011101xx
4081 fminp. */
4082 return 360;
4088 else
4090 if (((word >> 12) & 0x1) == 0)
4092 if (((word >> 13) & 0x1) == 0)
4094 if (((word >> 23) & 0x1) == 0)
4096 /* 33222222222211111111110000000000
4097 10987654321098765432109876543210
4098 xxxxxxxxxx1100x0xxxxx01001110xxx
4099 fmla. */
4100 return 287;
4102 else
4104 /* 33222222222211111111110000000000
4105 10987654321098765432109876543210
4106 xxxxxxxxxx1100x0xxxxx01101110xxx
4107 fmls. */
4108 return 303;
4111 else
4113 if (((word >> 23) & 0x1) == 0)
4115 /* 33222222222211111111110000000000
4116 10987654321098765432109876543210
4117 xxxxxxxxxx1101x0xxxxx01001110xxx
4118 facge. */
4119 return 344;
4121 else
4123 /* 33222222222211111111110000000000
4124 10987654321098765432109876543210
4125 xxxxxxxxxx1101x0xxxxx01101110xxx
4126 facgt. */
4127 return 358;
4131 else
4133 if (((word >> 13) & 0x1) == 0)
4135 if (((word >> 29) & 0x1) == 0)
4137 /* 33222222222211111111110000000000
4138 10987654321098765432109876543210
4139 xxxxxxxxxx1110x0xxxxx01x011100xx
4140 fmulx. */
4141 return 291;
4143 else
4145 /* 33222222222211111111110000000000
4146 10987654321098765432109876543210
4147 xxxxxxxxxx1110x0xxxxx01x011101xx
4148 fmul. */
4149 return 340;
4152 else
4154 if (((word >> 23) & 0x1) == 0)
4156 if (((word >> 29) & 0x1) == 0)
4158 /* 33222222222211111111110000000000
4159 10987654321098765432109876543210
4160 xxxxxxxxxx1111x0xxxxx010011100xx
4161 frecps. */
4162 return 297;
4164 else
4166 /* 33222222222211111111110000000000
4167 10987654321098765432109876543210
4168 xxxxxxxxxx1111x0xxxxx010011101xx
4169 fdiv. */
4170 return 348;
4173 else
4175 /* 33222222222211111111110000000000
4176 10987654321098765432109876543210
4177 xxxxxxxxxx1111x0xxxxx01101110xxx
4178 frsqrts. */
4179 return 309;
4186 else
4188 if (((word >> 11) & 0x1) == 0)
4190 /* 33222222222211111111110000000000
4191 10987654321098765432109876543210
4192 xxxxxxxxxx10xxx1xxxxx0xx01110xxx
4193 sqrdmlah. */
4194 return 363;
4196 else
4198 /* 33222222222211111111110000000000
4199 10987654321098765432109876543210
4200 xxxxxxxxxx11xxx1xxxxx0xx01110xxx
4201 sqrdmlsh. */
4202 return 364;
4207 else
4209 if (((word >> 29) & 0x1) == 0)
4211 if (((word >> 30) & 0x1) == 0)
4213 if (((word >> 16) & 0x1) == 0)
4215 if (((word >> 17) & 0x1) == 0)
4217 /* 33222222222211111111110000000000
4218 10987654321098765432109876543210
4219 xxxxxxxxxxxxxxxx00xxx0xx0111100x
4220 fcvtzs. */
4221 return 718;
4223 else
4225 /* 33222222222211111111110000000000
4226 10987654321098765432109876543210
4227 xxxxxxxxxxxxxxxx01xxx0xx0111100x
4228 scvtf. */
4229 return 714;
4232 else
4234 if (((word >> 17) & 0x1) == 0)
4236 /* 33222222222211111111110000000000
4237 10987654321098765432109876543210
4238 xxxxxxxxxxxxxxxx10xxx0xx0111100x
4239 fcvtzu. */
4240 return 720;
4242 else
4244 /* 33222222222211111111110000000000
4245 10987654321098765432109876543210
4246 xxxxxxxxxxxxxxxx11xxx0xx0111100x
4247 ucvtf. */
4248 return 716;
4252 else
4254 if (((word >> 10) & 0x1) == 0)
4256 if (((word >> 12) & 0x1) == 0)
4258 if (((word >> 13) & 0x1) == 0)
4260 if (((word >> 14) & 0x1) == 0)
4262 /* 33222222222211111111110000000000
4263 10987654321098765432109876543210
4264 xxxxxxxxxx0x000xxxxxx0xx0111101x
4265 sha1c. */
4266 return 657;
4268 else
4270 /* 33222222222211111111110000000000
4271 10987654321098765432109876543210
4272 xxxxxxxxxx0x001xxxxxx0xx0111101x
4273 sha256h. */
4274 return 661;
4277 else
4279 if (((word >> 14) & 0x1) == 0)
4281 /* 33222222222211111111110000000000
4282 10987654321098765432109876543210
4283 xxxxxxxxxx0x010xxxxxx0xx0111101x
4284 sha1m. */
4285 return 659;
4287 else
4289 /* 33222222222211111111110000000000
4290 10987654321098765432109876543210
4291 xxxxxxxxxx0x011xxxxxx0xx0111101x
4292 sha256su1. */
4293 return 663;
4297 else
4299 if (((word >> 13) & 0x1) == 0)
4301 if (((word >> 14) & 0x1) == 0)
4303 /* 33222222222211111111110000000000
4304 10987654321098765432109876543210
4305 xxxxxxxxxx0x100xxxxxx0xx0111101x
4306 sha1p. */
4307 return 658;
4309 else
4311 /* 33222222222211111111110000000000
4312 10987654321098765432109876543210
4313 xxxxxxxxxx0x101xxxxxx0xx0111101x
4314 sha256h2. */
4315 return 662;
4318 else
4320 /* 33222222222211111111110000000000
4321 10987654321098765432109876543210
4322 xxxxxxxxxx0x11xxxxxxx0xx0111101x
4323 sha1su0. */
4324 return 660;
4328 else
4330 if (((word >> 11) & 0x1) == 0)
4332 if (((word >> 13) & 0x1) == 0)
4334 /* 33222222222211111111110000000000
4335 10987654321098765432109876543210
4336 xxxxxxxxxx10x0xxxxxxx0xx0111101x
4337 dup. */
4338 return 526;
4340 else
4342 /* 33222222222211111111110000000000
4343 10987654321098765432109876543210
4344 xxxxxxxxxx10x1xxxxxxx0xx0111101x
4345 fcmeq. */
4346 return 547;
4349 else
4351 if (((word >> 13) & 0x1) == 0)
4353 /* 33222222222211111111110000000000
4354 10987654321098765432109876543210
4355 xxxxxxxxxx11x0xxxxxxx0xx0111101x
4356 fmulx. */
4357 return 545;
4359 else
4361 if (((word >> 23) & 0x1) == 0)
4363 /* 33222222222211111111110000000000
4364 10987654321098765432109876543210
4365 xxxxxxxxxx11x1xxxxxxx0x00111101x
4366 frecps. */
4367 return 549;
4369 else
4371 /* 33222222222211111111110000000000
4372 10987654321098765432109876543210
4373 xxxxxxxxxx11x1xxxxxxx0x10111101x
4374 frsqrts. */
4375 return 551;
4382 else
4384 if (((word >> 11) & 0x1) == 0)
4386 if (((word >> 12) & 0x1) == 0)
4388 if (((word >> 13) & 0x1) == 0)
4390 /* 33222222222211111111110000000000
4391 10987654321098765432109876543210
4392 xxxxxxxxxxx000xxxxxxx0xx011111xx
4393 sqrdmlah. */
4394 return 579;
4396 else
4398 if (((word >> 23) & 0x1) == 0)
4400 /* 33222222222211111111110000000000
4401 10987654321098765432109876543210
4402 xxxxxxxxxxx001xxxxxxx0x0011111xx
4403 fcmge. */
4404 return 564;
4406 else
4408 /* 33222222222211111111110000000000
4409 10987654321098765432109876543210
4410 xxxxxxxxxxx001xxxxxxx0x1011111xx
4411 fcmgt. */
4412 return 570;
4416 else
4418 /* 33222222222211111111110000000000
4419 10987654321098765432109876543210
4420 xxxxxxxxxxx01xxxxxxxx0xx011111xx
4421 fabd. */
4422 return 568;
4425 else
4427 if (((word >> 13) & 0x1) == 0)
4429 /* 33222222222211111111110000000000
4430 10987654321098765432109876543210
4431 xxxxxxxxxxx1x0xxxxxxx0xx011111xx
4432 sqrdmlsh. */
4433 return 580;
4435 else
4437 if (((word >> 23) & 0x1) == 0)
4439 /* 33222222222211111111110000000000
4440 10987654321098765432109876543210
4441 xxxxxxxxxxx1x1xxxxxxx0x0011111xx
4442 facge. */
4443 return 566;
4445 else
4447 /* 33222222222211111111110000000000
4448 10987654321098765432109876543210
4449 xxxxxxxxxxx1x1xxxxxxx0x1011111xx
4450 facgt. */
4451 return 572;
4458 else
4460 if (((word >> 10) & 0x1) == 0)
4462 if (((word >> 11) & 0x1) == 0)
4464 if (((word >> 12) & 0x1) == 0)
4466 if (((word >> 13) & 0x1) == 0)
4468 if (((word >> 14) & 0x1) == 0)
4470 if (((word >> 15) & 0x1) == 0)
4472 if (((word >> 28) & 0x1) == 0)
4474 if (((word >> 29) & 0x1) == 0)
4476 if (((word >> 30) & 0x1) == 0)
4478 /* 33222222222211111111110000000000
4479 10987654321098765432109876543210
4480 xxxxxxxxxx000000xxxxx1xx0111000x
4481 saddl. */
4482 return 42;
4484 else
4486 /* 33222222222211111111110000000000
4487 10987654321098765432109876543210
4488 xxxxxxxxxx000000xxxxx1xx0111001x
4489 saddl2. */
4490 return 43;
4493 else
4495 if (((word >> 30) & 0x1) == 0)
4497 /* 33222222222211111111110000000000
4498 10987654321098765432109876543210
4499 xxxxxxxxxx000000xxxxx1xx0111010x
4500 uaddl. */
4501 return 74;
4503 else
4505 /* 33222222222211111111110000000000
4506 10987654321098765432109876543210
4507 xxxxxxxxxx000000xxxxx1xx0111011x
4508 uaddl2. */
4509 return 75;
4513 else
4515 if (((word >> 16) & 0x1) == 0)
4517 if (((word >> 17) & 0x1) == 0)
4519 if (((word >> 18) & 0x1) == 0)
4521 if (((word >> 19) & 0x1) == 0)
4523 if (((word >> 20) & 0x1) == 0)
4525 /* 33222222222211111111110000000000
4526 10987654321098765432109876543210
4527 xxxxxxxxxx000000000001xx01111xxx
4528 fcvtns. */
4529 return 722;
4531 else
4533 /* 33222222222211111111110000000000
4534 10987654321098765432109876543210
4535 xxxxxxxxxx000000000011xx01111xxx
4536 fcvtms. */
4537 return 742;
4540 else
4542 if (((word >> 20) & 0x1) == 0)
4544 /* 33222222222211111111110000000000
4545 10987654321098765432109876543210
4546 xxxxxxxxxx000000000101xx01111xxx
4547 fcvtps. */
4548 return 738;
4550 else
4552 /* 33222222222211111111110000000000
4553 10987654321098765432109876543210
4554 xxxxxxxxxx000000000111xx01111xxx
4555 fcvtzs. */
4556 return 746;
4560 else
4562 /* 33222222222211111111110000000000
4563 10987654321098765432109876543210
4564 xxxxxxxxxx000000001xx1xx01111xxx
4565 fcvtas. */
4566 return 730;
4569 else
4571 if (((word >> 18) & 0x1) == 0)
4573 /* 33222222222211111111110000000000
4574 10987654321098765432109876543210
4575 xxxxxxxxxx000000010xx1xx01111xxx
4576 scvtf. */
4577 return 726;
4579 else
4581 if (((word >> 19) & 0x1) == 0)
4583 /* 33222222222211111111110000000000
4584 10987654321098765432109876543210
4585 xxxxxxxxxx0000000110x1xx01111xxx
4586 fmov. */
4587 return 734;
4589 else
4591 /* 33222222222211111111110000000000
4592 10987654321098765432109876543210
4593 xxxxxxxxxx0000000111x1xx01111xxx
4594 fmov. */
4595 return 750;
4600 else
4602 if (((word >> 17) & 0x1) == 0)
4604 if (((word >> 18) & 0x1) == 0)
4606 if (((word >> 19) & 0x1) == 0)
4608 if (((word >> 20) & 0x1) == 0)
4610 /* 33222222222211111111110000000000
4611 10987654321098765432109876543210
4612 xxxxxxxxxx000000100001xx01111xxx
4613 fcvtnu. */
4614 return 724;
4616 else
4618 /* 33222222222211111111110000000000
4619 10987654321098765432109876543210
4620 xxxxxxxxxx000000100011xx01111xxx
4621 fcvtmu. */
4622 return 744;
4625 else
4627 if (((word >> 20) & 0x1) == 0)
4629 /* 33222222222211111111110000000000
4630 10987654321098765432109876543210
4631 xxxxxxxxxx000000100101xx01111xxx
4632 fcvtpu. */
4633 return 740;
4635 else
4637 /* 33222222222211111111110000000000
4638 10987654321098765432109876543210
4639 xxxxxxxxxx000000100111xx01111xxx
4640 fcvtzu. */
4641 return 748;
4645 else
4647 /* 33222222222211111111110000000000
4648 10987654321098765432109876543210
4649 xxxxxxxxxx000000101xx1xx01111xxx
4650 fcvtau. */
4651 return 732;
4654 else
4656 if (((word >> 18) & 0x1) == 0)
4658 /* 33222222222211111111110000000000
4659 10987654321098765432109876543210
4660 xxxxxxxxxx000000110xx1xx01111xxx
4661 ucvtf. */
4662 return 728;
4664 else
4666 if (((word >> 19) & 0x1) == 0)
4668 /* 33222222222211111111110000000000
4669 10987654321098765432109876543210
4670 xxxxxxxxxx0000001110x1xx01111xxx
4671 fmov. */
4672 return 736;
4674 else
4676 /* 33222222222211111111110000000000
4677 10987654321098765432109876543210
4678 xxxxxxxxxx0000001111x1xx01111xxx
4679 fmov. */
4680 return 751;
4687 else
4689 if (((word >> 29) & 0x1) == 0)
4691 if (((word >> 30) & 0x1) == 0)
4693 /* 33222222222211111111110000000000
4694 10987654321098765432109876543210
4695 xxxxxxxxxx000001xxxxx1xx0111x00x
4696 smlal. */
4697 return 58;
4699 else
4701 /* 33222222222211111111110000000000
4702 10987654321098765432109876543210
4703 xxxxxxxxxx000001xxxxx1xx0111x01x
4704 smlal2. */
4705 return 59;
4708 else
4710 if (((word >> 30) & 0x1) == 0)
4712 /* 33222222222211111111110000000000
4713 10987654321098765432109876543210
4714 xxxxxxxxxx000001xxxxx1xx0111x10x
4715 umlal. */
4716 return 90;
4718 else
4720 /* 33222222222211111111110000000000
4721 10987654321098765432109876543210
4722 xxxxxxxxxx000001xxxxx1xx0111x11x
4723 umlal2. */
4724 return 91;
4729 else
4731 if (((word >> 28) & 0x1) == 0)
4733 if (((word >> 15) & 0x1) == 0)
4735 if (((word >> 29) & 0x1) == 0)
4737 if (((word >> 30) & 0x1) == 0)
4739 /* 33222222222211111111110000000000
4740 10987654321098765432109876543210
4741 xxxxxxxxxx000010xxxxx1xx0111000x
4742 addhn. */
4743 return 50;
4745 else
4747 /* 33222222222211111111110000000000
4748 10987654321098765432109876543210
4749 xxxxxxxxxx000010xxxxx1xx0111001x
4750 addhn2. */
4751 return 51;
4754 else
4756 if (((word >> 30) & 0x1) == 0)
4758 /* 33222222222211111111110000000000
4759 10987654321098765432109876543210
4760 xxxxxxxxxx000010xxxxx1xx0111010x
4761 raddhn. */
4762 return 82;
4764 else
4766 /* 33222222222211111111110000000000
4767 10987654321098765432109876543210
4768 xxxxxxxxxx000010xxxxx1xx0111011x
4769 raddhn2. */
4770 return 83;
4774 else
4776 if (((word >> 29) & 0x1) == 0)
4778 if (((word >> 30) & 0x1) == 0)
4780 /* 33222222222211111111110000000000
4781 10987654321098765432109876543210
4782 xxxxxxxxxx000011xxxxx1xx0111000x
4783 smull. */
4784 return 66;
4786 else
4788 /* 33222222222211111111110000000000
4789 10987654321098765432109876543210
4790 xxxxxxxxxx000011xxxxx1xx0111001x
4791 smull2. */
4792 return 67;
4795 else
4797 if (((word >> 30) & 0x1) == 0)
4799 /* 33222222222211111111110000000000
4800 10987654321098765432109876543210
4801 xxxxxxxxxx000011xxxxx1xx0111010x
4802 umull. */
4803 return 94;
4805 else
4807 /* 33222222222211111111110000000000
4808 10987654321098765432109876543210
4809 xxxxxxxxxx000011xxxxx1xx0111011x
4810 umull2. */
4811 return 95;
4816 else
4818 if (((word >> 17) & 0x1) == 0)
4820 if (((word >> 15) & 0x1) == 0)
4822 if (((word >> 16) & 0x1) == 0)
4824 if (((word >> 18) & 0x1) == 0)
4826 /* 33222222222211111111110000000000
4827 10987654321098765432109876543210
4828 xxxxxxxxxx000010000xx1xx01111xxx
4829 fmov. */
4830 return 764;
4832 else
4834 /* 33222222222211111111110000000000
4835 10987654321098765432109876543210
4836 xxxxxxxxxx000010001xx1xx01111xxx
4837 frintn. */
4838 return 773;
4841 else
4843 if (((word >> 18) & 0x1) == 0)
4845 /* 33222222222211111111110000000000
4846 10987654321098765432109876543210
4847 xxxxxxxxxx000010100xx1xx01111xxx
4848 fneg. */
4849 return 768;
4851 else
4853 /* 33222222222211111111110000000000
4854 10987654321098765432109876543210
4855 xxxxxxxxxx000010101xx1xx01111xxx
4856 frintm. */
4857 return 777;
4861 else
4863 if (((word >> 16) & 0x1) == 0)
4865 if (((word >> 18) & 0x1) == 0)
4867 /* 33222222222211111111110000000000
4868 10987654321098765432109876543210
4869 xxxxxxxxxx000011000xx1xx01111xxx
4870 fabs. */
4871 return 766;
4873 else
4875 /* 33222222222211111111110000000000
4876 10987654321098765432109876543210
4877 xxxxxxxxxx000011001xx1xx01111xxx
4878 frintp. */
4879 return 775;
4882 else
4884 if (((word >> 18) & 0x1) == 0)
4886 /* 33222222222211111111110000000000
4887 10987654321098765432109876543210
4888 xxxxxxxxxx000011100xx1xx01111xxx
4889 fsqrt. */
4890 return 770;
4892 else
4894 /* 33222222222211111111110000000000
4895 10987654321098765432109876543210
4896 xxxxxxxxxx000011101xx1xx01111xxx
4897 frintz. */
4898 return 779;
4903 else
4905 if (((word >> 18) & 0x1) == 0)
4907 /* 33222222222211111111110000000000
4908 10987654321098765432109876543210
4909 xxxxxxxxxx00001xx10xx1xx01111xxx
4910 fcvt. */
4911 return 772;
4913 else
4915 if (((word >> 15) & 0x1) == 0)
4917 if (((word >> 16) & 0x1) == 0)
4919 /* 33222222222211111111110000000000
4920 10987654321098765432109876543210
4921 xxxxxxxxxx000010011xx1xx01111xxx
4922 frinta. */
4923 return 781;
4925 else
4927 /* 33222222222211111111110000000000
4928 10987654321098765432109876543210
4929 xxxxxxxxxx000010111xx1xx01111xxx
4930 frintx. */
4931 return 783;
4934 else
4936 /* 33222222222211111111110000000000
4937 10987654321098765432109876543210
4938 xxxxxxxxxx000011x11xx1xx01111xxx
4939 frinti. */
4940 return 785;
4947 else
4949 if (((word >> 14) & 0x1) == 0)
4951 if (((word >> 15) & 0x1) == 0)
4953 if (((word >> 28) & 0x1) == 0)
4955 if (((word >> 29) & 0x1) == 0)
4957 if (((word >> 30) & 0x1) == 0)
4959 /* 33222222222211111111110000000000
4960 10987654321098765432109876543210
4961 xxxxxxxxxx000100xxxxx1xx0111000x
4962 ssubl. */
4963 return 46;
4965 else
4967 /* 33222222222211111111110000000000
4968 10987654321098765432109876543210
4969 xxxxxxxxxx000100xxxxx1xx0111001x
4970 ssubl2. */
4971 return 47;
4974 else
4976 if (((word >> 30) & 0x1) == 0)
4978 /* 33222222222211111111110000000000
4979 10987654321098765432109876543210
4980 xxxxxxxxxx000100xxxxx1xx0111010x
4981 usubl. */
4982 return 78;
4984 else
4986 /* 33222222222211111111110000000000
4987 10987654321098765432109876543210
4988 xxxxxxxxxx000100xxxxx1xx0111011x
4989 usubl2. */
4990 return 79;
4994 else
4996 if (((word >> 3) & 0x1) == 0)
4998 if (((word >> 4) & 0x1) == 0)
5000 /* 33222222222211111111110000000000
5001 10987654321098765432109876543210
5002 xxx00xxxxx000100xxxxx1xx01111xxx
5003 fcmp. */
5004 return 756;
5006 else
5008 /* 33222222222211111111110000000000
5009 10987654321098765432109876543210
5010 xxx01xxxxx000100xxxxx1xx01111xxx
5011 fcmpe. */
5012 return 758;
5015 else
5017 if (((word >> 4) & 0x1) == 0)
5019 /* 33222222222211111111110000000000
5020 10987654321098765432109876543210
5021 xxx10xxxxx000100xxxxx1xx01111xxx
5022 fcmp. */
5023 return 760;
5025 else
5027 /* 33222222222211111111110000000000
5028 10987654321098765432109876543210
5029 xxx11xxxxx000100xxxxx1xx01111xxx
5030 fcmpe. */
5031 return 762;
5036 else
5038 if (((word >> 29) & 0x1) == 0)
5040 if (((word >> 30) & 0x1) == 0)
5042 /* 33222222222211111111110000000000
5043 10987654321098765432109876543210
5044 xxxxxxxxxx000101xxxxx1xx0111x00x
5045 smlsl. */
5046 return 62;
5048 else
5050 /* 33222222222211111111110000000000
5051 10987654321098765432109876543210
5052 xxxxxxxxxx000101xxxxx1xx0111x01x
5053 smlsl2. */
5054 return 63;
5057 else
5059 if (((word >> 30) & 0x1) == 0)
5061 /* 33222222222211111111110000000000
5062 10987654321098765432109876543210
5063 xxxxxxxxxx000101xxxxx1xx0111x10x
5064 umlsl. */
5065 return 92;
5067 else
5069 /* 33222222222211111111110000000000
5070 10987654321098765432109876543210
5071 xxxxxxxxxx000101xxxxx1xx0111x11x
5072 umlsl2. */
5073 return 93;
5078 else
5080 if (((word >> 15) & 0x1) == 0)
5082 if (((word >> 29) & 0x1) == 0)
5084 if (((word >> 30) & 0x1) == 0)
5086 /* 33222222222211111111110000000000
5087 10987654321098765432109876543210
5088 xxxxxxxxxx000110xxxxx1xx0111x00x
5089 subhn. */
5090 return 54;
5092 else
5094 /* 33222222222211111111110000000000
5095 10987654321098765432109876543210
5096 xxxxxxxxxx000110xxxxx1xx0111x01x
5097 subhn2. */
5098 return 55;
5101 else
5103 if (((word >> 30) & 0x1) == 0)
5105 /* 33222222222211111111110000000000
5106 10987654321098765432109876543210
5107 xxxxxxxxxx000110xxxxx1xx0111x10x
5108 rsubhn. */
5109 return 86;
5111 else
5113 /* 33222222222211111111110000000000
5114 10987654321098765432109876543210
5115 xxxxxxxxxx000110xxxxx1xx0111x11x
5116 rsubhn2. */
5117 return 87;
5121 else
5123 if (((word >> 22) & 0x1) == 0)
5125 if (((word >> 30) & 0x1) == 0)
5127 /* 33222222222211111111110000000000
5128 10987654321098765432109876543210
5129 xxxxxxxxxx000111xxxxx10x0111xx0x
5130 pmull. */
5131 return 70;
5133 else
5135 /* 33222222222211111111110000000000
5136 10987654321098765432109876543210
5137 xxxxxxxxxx000111xxxxx10x0111xx1x
5138 pmull2. */
5139 return 72;
5142 else
5144 if (((word >> 30) & 0x1) == 0)
5146 /* 33222222222211111111110000000000
5147 10987654321098765432109876543210
5148 xxxxxxxxxx000111xxxxx11x0111xx0x
5149 pmull. */
5150 return 71;
5152 else
5154 /* 33222222222211111111110000000000
5155 10987654321098765432109876543210
5156 xxxxxxxxxx000111xxxxx11x0111xx1x
5157 pmull2. */
5158 return 73;
5165 else
5167 if (((word >> 28) & 0x1) == 0)
5169 if (((word >> 13) & 0x1) == 0)
5171 if (((word >> 14) & 0x1) == 0)
5173 if (((word >> 15) & 0x1) == 0)
5175 if (((word >> 29) & 0x1) == 0)
5177 if (((word >> 30) & 0x1) == 0)
5179 /* 33222222222211111111110000000000
5180 10987654321098765432109876543210
5181 xxxxxxxxxx001000xxxxx1xx0111000x
5182 saddw. */
5183 return 44;
5185 else
5187 /* 33222222222211111111110000000000
5188 10987654321098765432109876543210
5189 xxxxxxxxxx001000xxxxx1xx0111001x
5190 saddw2. */
5191 return 45;
5194 else
5196 if (((word >> 30) & 0x1) == 0)
5198 /* 33222222222211111111110000000000
5199 10987654321098765432109876543210
5200 xxxxxxxxxx001000xxxxx1xx0111010x
5201 uaddw. */
5202 return 76;
5204 else
5206 /* 33222222222211111111110000000000
5207 10987654321098765432109876543210
5208 xxxxxxxxxx001000xxxxx1xx0111011x
5209 uaddw2. */
5210 return 77;
5214 else
5216 if (((word >> 30) & 0x1) == 0)
5218 /* 33222222222211111111110000000000
5219 10987654321098765432109876543210
5220 xxxxxxxxxx001001xxxxx1xx01110x0x
5221 sqdmlal. */
5222 return 60;
5224 else
5226 /* 33222222222211111111110000000000
5227 10987654321098765432109876543210
5228 xxxxxxxxxx001001xxxxx1xx01110x1x
5229 sqdmlal2. */
5230 return 61;
5234 else
5236 if (((word >> 15) & 0x1) == 0)
5238 if (((word >> 29) & 0x1) == 0)
5240 if (((word >> 30) & 0x1) == 0)
5242 /* 33222222222211111111110000000000
5243 10987654321098765432109876543210
5244 xxxxxxxxxx001010xxxxx1xx0111000x
5245 sabal. */
5246 return 52;
5248 else
5250 /* 33222222222211111111110000000000
5251 10987654321098765432109876543210
5252 xxxxxxxxxx001010xxxxx1xx0111001x
5253 sabal2. */
5254 return 53;
5257 else
5259 if (((word >> 30) & 0x1) == 0)
5261 /* 33222222222211111111110000000000
5262 10987654321098765432109876543210
5263 xxxxxxxxxx001010xxxxx1xx0111010x
5264 uabal. */
5265 return 84;
5267 else
5269 /* 33222222222211111111110000000000
5270 10987654321098765432109876543210
5271 xxxxxxxxxx001010xxxxx1xx0111011x
5272 uabal2. */
5273 return 85;
5277 else
5279 if (((word >> 30) & 0x1) == 0)
5281 /* 33222222222211111111110000000000
5282 10987654321098765432109876543210
5283 xxxxxxxxxx001011xxxxx1xx01110x0x
5284 sqdmull. */
5285 return 68;
5287 else
5289 /* 33222222222211111111110000000000
5290 10987654321098765432109876543210
5291 xxxxxxxxxx001011xxxxx1xx01110x1x
5292 sqdmull2. */
5293 return 69;
5298 else
5300 if (((word >> 14) & 0x1) == 0)
5302 if (((word >> 15) & 0x1) == 0)
5304 if (((word >> 29) & 0x1) == 0)
5306 if (((word >> 30) & 0x1) == 0)
5308 /* 33222222222211111111110000000000
5309 10987654321098765432109876543210
5310 xxxxxxxxxx001100xxxxx1xx0111000x
5311 ssubw. */
5312 return 48;
5314 else
5316 /* 33222222222211111111110000000000
5317 10987654321098765432109876543210
5318 xxxxxxxxxx001100xxxxx1xx0111001x
5319 ssubw2. */
5320 return 49;
5323 else
5325 if (((word >> 30) & 0x1) == 0)
5327 /* 33222222222211111111110000000000
5328 10987654321098765432109876543210
5329 xxxxxxxxxx001100xxxxx1xx0111010x
5330 usubw. */
5331 return 80;
5333 else
5335 /* 33222222222211111111110000000000
5336 10987654321098765432109876543210
5337 xxxxxxxxxx001100xxxxx1xx0111011x
5338 usubw2. */
5339 return 81;
5343 else
5345 if (((word >> 30) & 0x1) == 0)
5347 /* 33222222222211111111110000000000
5348 10987654321098765432109876543210
5349 xxxxxxxxxx001101xxxxx1xx01110x0x
5350 sqdmlsl. */
5351 return 64;
5353 else
5355 /* 33222222222211111111110000000000
5356 10987654321098765432109876543210
5357 xxxxxxxxxx001101xxxxx1xx01110x1x
5358 sqdmlsl2. */
5359 return 65;
5363 else
5365 if (((word >> 29) & 0x1) == 0)
5367 if (((word >> 30) & 0x1) == 0)
5369 /* 33222222222211111111110000000000
5370 10987654321098765432109876543210
5371 xxxxxxxxxx00111xxxxxx1xx0111000x
5372 sabdl. */
5373 return 56;
5375 else
5377 /* 33222222222211111111110000000000
5378 10987654321098765432109876543210
5379 xxxxxxxxxx00111xxxxxx1xx0111001x
5380 sabdl2. */
5381 return 57;
5384 else
5386 if (((word >> 30) & 0x1) == 0)
5388 /* 33222222222211111111110000000000
5389 10987654321098765432109876543210
5390 xxxxxxxxxx00111xxxxxx1xx0111010x
5391 uabdl. */
5392 return 88;
5394 else
5396 /* 33222222222211111111110000000000
5397 10987654321098765432109876543210
5398 xxxxxxxxxx00111xxxxxx1xx0111011x
5399 uabdl2. */
5400 return 89;
5406 else
5408 if (((word >> 30) & 0x1) == 0)
5410 /* 33222222222211111111110000000000
5411 10987654321098765432109876543210
5412 xxxxxxxxxx001xxxxxxxx1xx01111x0x
5413 fmov. */
5414 return 813;
5416 else
5418 if (((word >> 13) & 0x1) == 0)
5420 if (((word >> 14) & 0x1) == 0)
5422 /* 33222222222211111111110000000000
5423 10987654321098765432109876543210
5424 xxxxxxxxxx00100xxxxxx1xx01111x1x
5425 sqdmlal. */
5426 return 413;
5428 else
5430 /* 33222222222211111111110000000000
5431 10987654321098765432109876543210
5432 xxxxxxxxxx00101xxxxxx1xx01111x1x
5433 sqdmull. */
5434 return 415;
5437 else
5439 /* 33222222222211111111110000000000
5440 10987654321098765432109876543210
5441 xxxxxxxxxx0011xxxxxxx1xx01111x1x
5442 sqdmlsl. */
5443 return 414;
5449 else
5451 if (((word >> 12) & 0x1) == 0)
5453 if (((word >> 13) & 0x1) == 0)
5455 if (((word >> 14) & 0x1) == 0)
5457 if (((word >> 15) & 0x1) == 0)
5459 if (((word >> 28) & 0x1) == 0)
5461 if (((word >> 29) & 0x1) == 0)
5463 /* 33222222222211111111110000000000
5464 10987654321098765432109876543210
5465 xxxxxxxxxx010000xxxxx1xx011100xx
5466 rev64. */
5467 return 155;
5469 else
5471 /* 33222222222211111111110000000000
5472 10987654321098765432109876543210
5473 xxxxxxxxxx010000xxxxx1xx011101xx
5474 rev32. */
5475 return 206;
5478 else
5480 if (((word >> 30) & 0x1) == 0)
5482 /* 33222222222211111111110000000000
5483 10987654321098765432109876543210
5484 xxxxxxxxxx010000xxxxx1xx01111x0x
5485 fmul. */
5486 return 787;
5488 else
5490 /* 33222222222211111111110000000000
5491 10987654321098765432109876543210
5492 xxxxxxxxxx010000xxxxx1xx01111x1x
5493 sha1h. */
5494 return 654;
5498 else
5500 if (((word >> 28) & 0x1) == 0)
5502 if (((word >> 16) & 0x1) == 0)
5504 if (((word >> 29) & 0x1) == 0)
5506 /* 33222222222211111111110000000000
5507 10987654321098765432109876543210
5508 xxxxxxxxxx0100010xxxx1xx011100xx
5509 cmgt. */
5510 return 163;
5512 else
5514 /* 33222222222211111111110000000000
5515 10987654321098765432109876543210
5516 xxxxxxxxxx0100010xxxx1xx011101xx
5517 cmge. */
5518 return 212;
5521 else
5523 if (((word >> 19) & 0x1) == 0)
5525 if (((word >> 23) & 0x1) == 0)
5527 if (((word >> 29) & 0x1) == 0)
5529 /* 33222222222211111111110000000000
5530 10987654321098765432109876543210
5531 xxxxxxxxxx0100011xx0x1x0011100xx
5532 frintn. */
5533 return 175;
5535 else
5537 /* 33222222222211111111110000000000
5538 10987654321098765432109876543210
5539 xxxxxxxxxx0100011xx0x1x0011101xx
5540 frinta. */
5541 return 223;
5544 else
5546 /* 33222222222211111111110000000000
5547 10987654321098765432109876543210
5548 xxxxxxxxxx0100011xx0x1x101110xxx
5549 frintp. */
5550 return 195;
5553 else
5555 if (((word >> 23) & 0x1) == 0)
5557 if (((word >> 29) & 0x1) == 0)
5559 /* 33222222222211111111110000000000
5560 10987654321098765432109876543210
5561 xxxxxxxxxx0100011xx1x1x0011100xx
5562 frintn. */
5563 return 176;
5565 else
5567 /* 33222222222211111111110000000000
5568 10987654321098765432109876543210
5569 xxxxxxxxxx0100011xx1x1x0011101xx
5570 frinta. */
5571 return 224;
5574 else
5576 /* 33222222222211111111110000000000
5577 10987654321098765432109876543210
5578 xxxxxxxxxx0100011xx1x1x101110xxx
5579 frintp. */
5580 return 196;
5585 else
5587 if (((word >> 29) & 0x1) == 0)
5589 if (((word >> 30) & 0x1) == 0)
5591 /* 33222222222211111111110000000000
5592 10987654321098765432109876543210
5593 xxxxxxxxxx010001xxxxx1xx0111100x
5594 fnmul. */
5595 return 803;
5597 else
5599 /* 33222222222211111111110000000000
5600 10987654321098765432109876543210
5601 xxxxxxxxxx010001xxxxx1xx0111101x
5602 cmgt. */
5603 return 473;
5606 else
5608 /* 33222222222211111111110000000000
5609 10987654321098765432109876543210
5610 xxxxxxxxxx010001xxxxx1xx011111xx
5611 cmge. */
5612 return 502;
5617 else
5619 if (((word >> 15) & 0x1) == 0)
5621 if (((word >> 28) & 0x1) == 0)
5623 if (((word >> 16) & 0x1) == 0)
5625 if (((word >> 19) & 0x1) == 0)
5627 if (((word >> 29) & 0x1) == 0)
5629 /* 33222222222211111111110000000000
5630 10987654321098765432109876543210
5631 xxxxxxxxxx0100100xx0x1xx011100xx
5632 cls. */
5633 return 159;
5635 else
5637 /* 33222222222211111111110000000000
5638 10987654321098765432109876543210
5639 xxxxxxxxxx0100100xx0x1xx011101xx
5640 clz. */
5641 return 209;
5644 else
5646 /* 33222222222211111111110000000000
5647 10987654321098765432109876543210
5648 xxxxxxxxxx0100100xx1x1xx01110xxx
5649 aese. */
5650 return 650;
5653 else
5655 if (((word >> 29) & 0x1) == 0)
5657 if (((word >> 30) & 0x1) == 0)
5659 /* 33222222222211111111110000000000
5660 10987654321098765432109876543210
5661 xxxxxxxxxx0100101xxxx1xx0111000x
5662 sqxtn. */
5663 return 169;
5665 else
5667 /* 33222222222211111111110000000000
5668 10987654321098765432109876543210
5669 xxxxxxxxxx0100101xxxx1xx0111001x
5670 sqxtn2. */
5671 return 170;
5674 else
5676 if (((word >> 30) & 0x1) == 0)
5678 /* 33222222222211111111110000000000
5679 10987654321098765432109876543210
5680 xxxxxxxxxx0100101xxxx1xx0111010x
5681 uqxtn. */
5682 return 219;
5684 else
5686 /* 33222222222211111111110000000000
5687 10987654321098765432109876543210
5688 xxxxxxxxxx0100101xxxx1xx0111011x
5689 uqxtn2. */
5690 return 220;
5695 else
5697 if (((word >> 29) & 0x1) == 0)
5699 if (((word >> 30) & 0x1) == 0)
5701 /* 33222222222211111111110000000000
5702 10987654321098765432109876543210
5703 xxxxxxxxxx010010xxxxx1xx0111100x
5704 fmax. */
5705 return 795;
5707 else
5709 /* 33222222222211111111110000000000
5710 10987654321098765432109876543210
5711 xxxxxxxxxx010010xxxxx1xx0111101x
5712 sqxtn. */
5713 return 477;
5716 else
5718 /* 33222222222211111111110000000000
5719 10987654321098765432109876543210
5720 xxxxxxxxxx010010xxxxx1xx011111xx
5721 uqxtn. */
5722 return 506;
5726 else
5728 if (((word >> 16) & 0x1) == 0)
5730 if (((word >> 19) & 0x1) == 0)
5732 if (((word >> 20) & 0x1) == 0)
5734 if (((word >> 28) & 0x1) == 0)
5736 if (((word >> 29) & 0x1) == 0)
5738 /* 33222222222211111111110000000000
5739 10987654321098765432109876543210
5740 xxxxxxxxxx0100110xx001xx011100xx
5741 fcmgt. */
5742 return 187;
5744 else
5746 /* 33222222222211111111110000000000
5747 10987654321098765432109876543210
5748 xxxxxxxxxx0100110xx001xx011101xx
5749 fcmge. */
5750 return 238;
5753 else
5755 if (((word >> 29) & 0x1) == 0)
5757 /* 33222222222211111111110000000000
5758 10987654321098765432109876543210
5759 xxxxxxxxxx0100110xx001xx011110xx
5760 fcmgt. */
5761 return 486;
5763 else
5765 /* 33222222222211111111110000000000
5766 10987654321098765432109876543210
5767 xxxxxxxxxx0100110xx001xx011111xx
5768 fcmge. */
5769 return 516;
5773 else
5775 if (((word >> 23) & 0x1) == 0)
5777 if (((word >> 28) & 0x1) == 0)
5779 if (((word >> 29) & 0x1) == 0)
5781 /* 33222222222211111111110000000000
5782 10987654321098765432109876543210
5783 xxxxxxxxxx0100110xx011x0011100xx
5784 fmaxnmv. */
5785 return 35;
5787 else
5789 /* 33222222222211111111110000000000
5790 10987654321098765432109876543210
5791 xxxxxxxxxx0100110xx011x0011101xx
5792 fmaxnmv. */
5793 return 34;
5796 else
5798 if (((word >> 29) & 0x1) == 0)
5800 /* 33222222222211111111110000000000
5801 10987654321098765432109876543210
5802 xxxxxxxxxx0100110xx011x0011110xx
5803 fmaxnmp. */
5804 return 530;
5806 else
5808 /* 33222222222211111111110000000000
5809 10987654321098765432109876543210
5810 xxxxxxxxxx0100110xx011x0011111xx
5811 fmaxnmp. */
5812 return 529;
5816 else
5818 if (((word >> 28) & 0x1) == 0)
5820 if (((word >> 29) & 0x1) == 0)
5822 /* 33222222222211111111110000000000
5823 10987654321098765432109876543210
5824 xxxxxxxxxx0100110xx011x1011100xx
5825 fminnmv. */
5826 return 39;
5828 else
5830 /* 33222222222211111111110000000000
5831 10987654321098765432109876543210
5832 xxxxxxxxxx0100110xx011x1011101xx
5833 fminnmv. */
5834 return 38;
5837 else
5839 if (((word >> 29) & 0x1) == 0)
5841 /* 33222222222211111111110000000000
5842 10987654321098765432109876543210
5843 xxxxxxxxxx0100110xx011x1011110xx
5844 fminnmp. */
5845 return 536;
5847 else
5849 /* 33222222222211111111110000000000
5850 10987654321098765432109876543210
5851 xxxxxxxxxx0100110xx011x1011111xx
5852 fminnmp. */
5853 return 535;
5859 else
5861 if (((word >> 28) & 0x1) == 0)
5863 if (((word >> 29) & 0x1) == 0)
5865 /* 33222222222211111111110000000000
5866 10987654321098765432109876543210
5867 xxxxxxxxxx0100110xx1x1xx011100xx
5868 fcmgt. */
5869 return 188;
5871 else
5873 /* 33222222222211111111110000000000
5874 10987654321098765432109876543210
5875 xxxxxxxxxx0100110xx1x1xx011101xx
5876 fcmge. */
5877 return 239;
5880 else
5882 if (((word >> 29) & 0x1) == 0)
5884 /* 33222222222211111111110000000000
5885 10987654321098765432109876543210
5886 xxxxxxxxxx0100110xx1x1xx011110xx
5887 fcmgt. */
5888 return 487;
5890 else
5892 /* 33222222222211111111110000000000
5893 10987654321098765432109876543210
5894 xxxxxxxxxx0100110xx1x1xx011111xx
5895 fcmge. */
5896 return 517;
5901 else
5903 if (((word >> 19) & 0x1) == 0)
5905 if (((word >> 23) & 0x1) == 0)
5907 if (((word >> 28) & 0x1) == 0)
5909 if (((word >> 29) & 0x1) == 0)
5911 /* 33222222222211111111110000000000
5912 10987654321098765432109876543210
5913 xxxxxxxxxx0100111xx0x1x0011100xx
5914 fcvtas. */
5915 return 183;
5917 else
5919 /* 33222222222211111111110000000000
5920 10987654321098765432109876543210
5921 xxxxxxxxxx0100111xx0x1x0011101xx
5922 fcvtau. */
5923 return 231;
5926 else
5928 if (((word >> 29) & 0x1) == 0)
5930 /* 33222222222211111111110000000000
5931 10987654321098765432109876543210
5932 xxxxxxxxxx0100111xx0x1x0011110xx
5933 fcvtas. */
5934 return 482;
5936 else
5938 /* 33222222222211111111110000000000
5939 10987654321098765432109876543210
5940 xxxxxxxxxx0100111xx0x1x0011111xx
5941 fcvtau. */
5942 return 512;
5946 else
5948 if (((word >> 29) & 0x1) == 0)
5950 /* 33222222222211111111110000000000
5951 10987654321098765432109876543210
5952 xxxxxxxxxx0100111xx0x1x10111x0xx
5953 urecpe. */
5954 return 203;
5956 else
5958 /* 33222222222211111111110000000000
5959 10987654321098765432109876543210
5960 xxxxxxxxxx0100111xx0x1x10111x1xx
5961 ursqrte. */
5962 return 250;
5966 else
5968 if (((word >> 28) & 0x1) == 0)
5970 if (((word >> 29) & 0x1) == 0)
5972 /* 33222222222211111111110000000000
5973 10987654321098765432109876543210
5974 xxxxxxxxxx0100111xx1x1xx011100xx
5975 fcvtas. */
5976 return 184;
5978 else
5980 /* 33222222222211111111110000000000
5981 10987654321098765432109876543210
5982 xxxxxxxxxx0100111xx1x1xx011101xx
5983 fcvtau. */
5984 return 232;
5987 else
5989 if (((word >> 29) & 0x1) == 0)
5991 /* 33222222222211111111110000000000
5992 10987654321098765432109876543210
5993 xxxxxxxxxx0100111xx1x1xx011110xx
5994 fcvtas. */
5995 return 483;
5997 else
5999 /* 33222222222211111111110000000000
6000 10987654321098765432109876543210
6001 xxxxxxxxxx0100111xx1x1xx011111xx
6002 fcvtau. */
6003 return 513;
6011 else
6013 if (((word >> 14) & 0x1) == 0)
6015 if (((word >> 15) & 0x1) == 0)
6017 if (((word >> 28) & 0x1) == 0)
6019 if (((word >> 16) & 0x1) == 0)
6021 if (((word >> 29) & 0x1) == 0)
6023 /* 33222222222211111111110000000000
6024 10987654321098765432109876543210
6025 xxxxxxxxxx0101000xxxx1xx011100xx
6026 saddlp. */
6027 return 157;
6029 else
6031 /* 33222222222211111111110000000000
6032 10987654321098765432109876543210
6033 xxxxxxxxxx0101000xxxx1xx011101xx
6034 uaddlp. */
6035 return 207;
6038 else
6040 if (((word >> 29) & 0x1) == 0)
6042 if (((word >> 30) & 0x1) == 0)
6044 /* 33222222222211111111110000000000
6045 10987654321098765432109876543210
6046 xxxxxxxxxx0101001xxxx1xx0111000x
6047 xtn. */
6048 return 167;
6050 else
6052 /* 33222222222211111111110000000000
6053 10987654321098765432109876543210
6054 xxxxxxxxxx0101001xxxx1xx0111001x
6055 xtn2. */
6056 return 168;
6059 else
6061 if (((word >> 30) & 0x1) == 0)
6063 /* 33222222222211111111110000000000
6064 10987654321098765432109876543210
6065 xxxxxxxxxx0101001xxxx1xx0111010x
6066 sqxtun. */
6067 return 215;
6069 else
6071 /* 33222222222211111111110000000000
6072 10987654321098765432109876543210
6073 xxxxxxxxxx0101001xxxx1xx0111011x
6074 sqxtun2. */
6075 return 216;
6080 else
6082 if (((word >> 29) & 0x1) == 0)
6084 if (((word >> 30) & 0x1) == 0)
6086 /* 33222222222211111111110000000000
6087 10987654321098765432109876543210
6088 xxxxxxxxxx010100xxxxx1xx0111100x
6089 fadd. */
6090 return 791;
6092 else
6094 /* 33222222222211111111110000000000
6095 10987654321098765432109876543210
6096 xxxxxxxxxx010100xxxxx1xx0111101x
6097 sha256su0. */
6098 return 656;
6101 else
6103 /* 33222222222211111111110000000000
6104 10987654321098765432109876543210
6105 xxxxxxxxxx010100xxxxx1xx011111xx
6106 sqxtun. */
6107 return 505;
6111 else
6113 if (((word >> 16) & 0x1) == 0)
6115 if (((word >> 20) & 0x1) == 0)
6117 if (((word >> 28) & 0x1) == 0)
6119 /* 33222222222211111111110000000000
6120 10987654321098765432109876543210
6121 xxxxxxxxxx0101010xxx01xx01110xxx
6122 cmlt. */
6123 return 165;
6125 else
6127 /* 33222222222211111111110000000000
6128 10987654321098765432109876543210
6129 xxxxxxxxxx0101010xxx01xx01111xxx
6130 cmlt. */
6131 return 475;
6134 else
6136 if (((word >> 29) & 0x1) == 0)
6138 /* 33222222222211111111110000000000
6139 10987654321098765432109876543210
6140 xxxxxxxxxx0101010xxx11xx0111x0xx
6141 smaxv. */
6142 return 28;
6144 else
6146 /* 33222222222211111111110000000000
6147 10987654321098765432109876543210
6148 xxxxxxxxxx0101010xxx11xx0111x1xx
6149 umaxv. */
6150 return 32;
6154 else
6156 if (((word >> 19) & 0x1) == 0)
6158 if (((word >> 20) & 0x1) == 0)
6160 if (((word >> 23) & 0x1) == 0)
6162 if (((word >> 28) & 0x1) == 0)
6164 if (((word >> 29) & 0x1) == 0)
6166 /* 33222222222211111111110000000000
6167 10987654321098765432109876543210
6168 xxxxxxxxxx0101011xx001x0011100xx
6169 fcvtns. */
6170 return 179;
6172 else
6174 /* 33222222222211111111110000000000
6175 10987654321098765432109876543210
6176 xxxxxxxxxx0101011xx001x0011101xx
6177 fcvtnu. */
6178 return 227;
6181 else
6183 if (((word >> 29) & 0x1) == 0)
6185 /* 33222222222211111111110000000000
6186 10987654321098765432109876543210
6187 xxxxxxxxxx0101011xx001x0011110xx
6188 fcvtns. */
6189 return 478;
6191 else
6193 /* 33222222222211111111110000000000
6194 10987654321098765432109876543210
6195 xxxxxxxxxx0101011xx001x0011111xx
6196 fcvtnu. */
6197 return 508;
6201 else
6203 if (((word >> 28) & 0x1) == 0)
6205 if (((word >> 29) & 0x1) == 0)
6207 /* 33222222222211111111110000000000
6208 10987654321098765432109876543210
6209 xxxxxxxxxx0101011xx001x1011100xx
6210 fcvtps. */
6211 return 199;
6213 else
6215 /* 33222222222211111111110000000000
6216 10987654321098765432109876543210
6217 xxxxxxxxxx0101011xx001x1011101xx
6218 fcvtpu. */
6219 return 246;
6222 else
6224 if (((word >> 29) & 0x1) == 0)
6226 /* 33222222222211111111110000000000
6227 10987654321098765432109876543210
6228 xxxxxxxxxx0101011xx001x1011110xx
6229 fcvtps. */
6230 return 492;
6232 else
6234 /* 33222222222211111111110000000000
6235 10987654321098765432109876543210
6236 xxxxxxxxxx0101011xx001x1011111xx
6237 fcvtpu. */
6238 return 520;
6243 else
6245 if (((word >> 29) & 0x1) == 0)
6247 /* 33222222222211111111110000000000
6248 10987654321098765432109876543210
6249 xxxxxxxxxx0101011xx011xx0111x0xx
6250 sminv. */
6251 return 29;
6253 else
6255 /* 33222222222211111111110000000000
6256 10987654321098765432109876543210
6257 xxxxxxxxxx0101011xx011xx0111x1xx
6258 uminv. */
6259 return 33;
6263 else
6265 if (((word >> 23) & 0x1) == 0)
6267 if (((word >> 28) & 0x1) == 0)
6269 if (((word >> 29) & 0x1) == 0)
6271 /* 33222222222211111111110000000000
6272 10987654321098765432109876543210
6273 xxxxxxxxxx0101011xx1x1x0011100xx
6274 fcvtns. */
6275 return 180;
6277 else
6279 /* 33222222222211111111110000000000
6280 10987654321098765432109876543210
6281 xxxxxxxxxx0101011xx1x1x0011101xx
6282 fcvtnu. */
6283 return 228;
6286 else
6288 if (((word >> 29) & 0x1) == 0)
6290 /* 33222222222211111111110000000000
6291 10987654321098765432109876543210
6292 xxxxxxxxxx0101011xx1x1x0011110xx
6293 fcvtns. */
6294 return 479;
6296 else
6298 /* 33222222222211111111110000000000
6299 10987654321098765432109876543210
6300 xxxxxxxxxx0101011xx1x1x0011111xx
6301 fcvtnu. */
6302 return 509;
6306 else
6308 if (((word >> 28) & 0x1) == 0)
6310 if (((word >> 29) & 0x1) == 0)
6312 /* 33222222222211111111110000000000
6313 10987654321098765432109876543210
6314 xxxxxxxxxx0101011xx1x1x1011100xx
6315 fcvtps. */
6316 return 200;
6318 else
6320 /* 33222222222211111111110000000000
6321 10987654321098765432109876543210
6322 xxxxxxxxxx0101011xx1x1x1011101xx
6323 fcvtpu. */
6324 return 247;
6327 else
6329 if (((word >> 29) & 0x1) == 0)
6331 /* 33222222222211111111110000000000
6332 10987654321098765432109876543210
6333 xxxxxxxxxx0101011xx1x1x1011110xx
6334 fcvtps. */
6335 return 493;
6337 else
6339 /* 33222222222211111111110000000000
6340 10987654321098765432109876543210
6341 xxxxxxxxxx0101011xx1x1x1011111xx
6342 fcvtpu. */
6343 return 521;
6351 else
6353 if (((word >> 15) & 0x1) == 0)
6355 if (((word >> 28) & 0x1) == 0)
6357 if (((word >> 16) & 0x1) == 0)
6359 if (((word >> 19) & 0x1) == 0)
6361 if (((word >> 29) & 0x1) == 0)
6363 /* 33222222222211111111110000000000
6364 10987654321098765432109876543210
6365 xxxxxxxxxx0101100xx0x1xx011100xx
6366 sadalp. */
6367 return 161;
6369 else
6371 /* 33222222222211111111110000000000
6372 10987654321098765432109876543210
6373 xxxxxxxxxx0101100xx0x1xx011101xx
6374 uadalp. */
6375 return 210;
6378 else
6380 /* 33222222222211111111110000000000
6381 10987654321098765432109876543210
6382 xxxxxxxxxx0101100xx1x1xx01110xxx
6383 aesmc. */
6384 return 652;
6387 else
6389 if (((word >> 29) & 0x1) == 0)
6391 if (((word >> 30) & 0x1) == 0)
6393 /* 33222222222211111111110000000000
6394 10987654321098765432109876543210
6395 xxxxxxxxxx0101101xxxx1xx0111000x
6396 fcvtn. */
6397 return 171;
6399 else
6401 /* 33222222222211111111110000000000
6402 10987654321098765432109876543210
6403 xxxxxxxxxx0101101xxxx1xx0111001x
6404 fcvtn2. */
6405 return 172;
6408 else
6410 if (((word >> 30) & 0x1) == 0)
6412 /* 33222222222211111111110000000000
6413 10987654321098765432109876543210
6414 xxxxxxxxxx0101101xxxx1xx0111010x
6415 fcvtxn. */
6416 return 221;
6418 else
6420 /* 33222222222211111111110000000000
6421 10987654321098765432109876543210
6422 xxxxxxxxxx0101101xxxx1xx0111011x
6423 fcvtxn2. */
6424 return 222;
6429 else
6431 if (((word >> 29) & 0x1) == 0)
6433 /* 33222222222211111111110000000000
6434 10987654321098765432109876543210
6435 xxxxxxxxxx010110xxxxx1xx011110xx
6436 fmaxnm. */
6437 return 799;
6439 else
6441 /* 33222222222211111111110000000000
6442 10987654321098765432109876543210
6443 xxxxxxxxxx010110xxxxx1xx011111xx
6444 fcvtxn. */
6445 return 507;
6449 else
6451 if (((word >> 19) & 0x1) == 0)
6453 if (((word >> 28) & 0x1) == 0)
6455 /* 33222222222211111111110000000000
6456 10987654321098765432109876543210
6457 xxxxxxxxxx010111xxx0x1xx01110xxx
6458 fcmlt. */
6459 return 191;
6461 else
6463 /* 33222222222211111111110000000000
6464 10987654321098765432109876543210
6465 xxxxxxxxxx010111xxx0x1xx01111xxx
6466 fcmlt. */
6467 return 490;
6470 else
6472 if (((word >> 28) & 0x1) == 0)
6474 /* 33222222222211111111110000000000
6475 10987654321098765432109876543210
6476 xxxxxxxxxx010111xxx1x1xx01110xxx
6477 fcmlt. */
6478 return 192;
6480 else
6482 /* 33222222222211111111110000000000
6483 10987654321098765432109876543210
6484 xxxxxxxxxx010111xxx1x1xx01111xxx
6485 fcmlt. */
6486 return 491;
6493 else
6495 if (((word >> 13) & 0x1) == 0)
6497 if (((word >> 14) & 0x1) == 0)
6499 if (((word >> 15) & 0x1) == 0)
6501 if (((word >> 28) & 0x1) == 0)
6503 /* 33222222222211111111110000000000
6504 10987654321098765432109876543210
6505 xxxxxxxxxx011000xxxxx1xx01110xxx
6506 rev16. */
6507 return 156;
6509 else
6511 if (((word >> 30) & 0x1) == 0)
6513 /* 33222222222211111111110000000000
6514 10987654321098765432109876543210
6515 xxxxxxxxxx011000xxxxx1xx01111x0x
6516 fdiv. */
6517 return 789;
6519 else
6521 /* 33222222222211111111110000000000
6522 10987654321098765432109876543210
6523 xxxxxxxxxx011000xxxxx1xx01111x1x
6524 sha1su1. */
6525 return 655;
6529 else
6531 if (((word >> 16) & 0x1) == 0)
6533 if (((word >> 28) & 0x1) == 0)
6535 if (((word >> 29) & 0x1) == 0)
6537 /* 33222222222211111111110000000000
6538 10987654321098765432109876543210
6539 xxxxxxxxxx0110010xxxx1xx011100xx
6540 cmeq. */
6541 return 164;
6543 else
6545 /* 33222222222211111111110000000000
6546 10987654321098765432109876543210
6547 xxxxxxxxxx0110010xxxx1xx011101xx
6548 cmle. */
6549 return 213;
6552 else
6554 if (((word >> 29) & 0x1) == 0)
6556 /* 33222222222211111111110000000000
6557 10987654321098765432109876543210
6558 xxxxxxxxxx0110010xxxx1xx011110xx
6559 cmeq. */
6560 return 474;
6562 else
6564 /* 33222222222211111111110000000000
6565 10987654321098765432109876543210
6566 xxxxxxxxxx0110010xxxx1xx011111xx
6567 cmle. */
6568 return 503;
6572 else
6574 if (((word >> 19) & 0x1) == 0)
6576 if (((word >> 23) & 0x1) == 0)
6578 if (((word >> 29) & 0x1) == 0)
6580 /* 33222222222211111111110000000000
6581 10987654321098765432109876543210
6582 xxxxxxxxxx0110011xx0x1x00111x0xx
6583 frintm. */
6584 return 177;
6586 else
6588 /* 33222222222211111111110000000000
6589 10987654321098765432109876543210
6590 xxxxxxxxxx0110011xx0x1x00111x1xx
6591 frintx. */
6592 return 225;
6595 else
6597 if (((word >> 29) & 0x1) == 0)
6599 /* 33222222222211111111110000000000
6600 10987654321098765432109876543210
6601 xxxxxxxxxx0110011xx0x1x10111x0xx
6602 frintz. */
6603 return 197;
6605 else
6607 /* 33222222222211111111110000000000
6608 10987654321098765432109876543210
6609 xxxxxxxxxx0110011xx0x1x10111x1xx
6610 frinti. */
6611 return 244;
6615 else
6617 if (((word >> 23) & 0x1) == 0)
6619 if (((word >> 29) & 0x1) == 0)
6621 /* 33222222222211111111110000000000
6622 10987654321098765432109876543210
6623 xxxxxxxxxx0110011xx1x1x00111x0xx
6624 frintm. */
6625 return 178;
6627 else
6629 /* 33222222222211111111110000000000
6630 10987654321098765432109876543210
6631 xxxxxxxxxx0110011xx1x1x00111x1xx
6632 frintx. */
6633 return 226;
6636 else
6638 if (((word >> 29) & 0x1) == 0)
6640 /* 33222222222211111111110000000000
6641 10987654321098765432109876543210
6642 xxxxxxxxxx0110011xx1x1x10111x0xx
6643 frintz. */
6644 return 198;
6646 else
6648 /* 33222222222211111111110000000000
6649 10987654321098765432109876543210
6650 xxxxxxxxxx0110011xx1x1x10111x1xx
6651 frinti. */
6652 return 245;
6659 else
6661 if (((word >> 15) & 0x1) == 0)
6663 if (((word >> 28) & 0x1) == 0)
6665 if (((word >> 19) & 0x1) == 0)
6667 if (((word >> 29) & 0x1) == 0)
6669 /* 33222222222211111111110000000000
6670 10987654321098765432109876543210
6671 xxxxxxxxxx011010xxx0x1xx011100xx
6672 cnt. */
6673 return 160;
6675 else
6677 if (((word >> 22) & 0x1) == 0)
6679 /* 33222222222211111111110000000000
6680 10987654321098765432109876543210
6681 xxxxxxxxxx011010xxx0x10x011101xx
6682 not. */
6683 return 235;
6685 else
6687 /* 33222222222211111111110000000000
6688 10987654321098765432109876543210
6689 xxxxxxxxxx011010xxx0x11x011101xx
6690 rbit. */
6691 return 237;
6695 else
6697 /* 33222222222211111111110000000000
6698 10987654321098765432109876543210
6699 xxxxxxxxxx011010xxx1x1xx01110xxx
6700 aesd. */
6701 return 651;
6704 else
6706 /* 33222222222211111111110000000000
6707 10987654321098765432109876543210
6708 xxxxxxxxxx011010xxxxx1xx01111xxx
6709 fmin. */
6710 return 797;
6713 else
6715 if (((word >> 16) & 0x1) == 0)
6717 if (((word >> 19) & 0x1) == 0)
6719 if (((word >> 20) & 0x1) == 0)
6721 if (((word >> 28) & 0x1) == 0)
6723 if (((word >> 29) & 0x1) == 0)
6725 /* 33222222222211111111110000000000
6726 10987654321098765432109876543210
6727 xxxxxxxxxx0110110xx001xx011100xx
6728 fcmeq. */
6729 return 189;
6731 else
6733 /* 33222222222211111111110000000000
6734 10987654321098765432109876543210
6735 xxxxxxxxxx0110110xx001xx011101xx
6736 fcmle. */
6737 return 240;
6740 else
6742 if (((word >> 29) & 0x1) == 0)
6744 /* 33222222222211111111110000000000
6745 10987654321098765432109876543210
6746 xxxxxxxxxx0110110xx001xx011110xx
6747 fcmeq. */
6748 return 488;
6750 else
6752 /* 33222222222211111111110000000000
6753 10987654321098765432109876543210
6754 xxxxxxxxxx0110110xx001xx011111xx
6755 fcmle. */
6756 return 518;
6760 else
6762 if (((word >> 29) & 0x1) == 0)
6764 /* 33222222222211111111110000000000
6765 10987654321098765432109876543210
6766 xxxxxxxxxx0110110xx011xx0111x0xx
6767 faddp. */
6768 return 532;
6770 else
6772 /* 33222222222211111111110000000000
6773 10987654321098765432109876543210
6774 xxxxxxxxxx0110110xx011xx0111x1xx
6775 faddp. */
6776 return 531;
6780 else
6782 if (((word >> 28) & 0x1) == 0)
6784 if (((word >> 29) & 0x1) == 0)
6786 /* 33222222222211111111110000000000
6787 10987654321098765432109876543210
6788 xxxxxxxxxx0110110xx1x1xx011100xx
6789 fcmeq. */
6790 return 190;
6792 else
6794 /* 33222222222211111111110000000000
6795 10987654321098765432109876543210
6796 xxxxxxxxxx0110110xx1x1xx011101xx
6797 fcmle. */
6798 return 241;
6801 else
6803 if (((word >> 29) & 0x1) == 0)
6805 /* 33222222222211111111110000000000
6806 10987654321098765432109876543210
6807 xxxxxxxxxx0110110xx1x1xx011110xx
6808 fcmeq. */
6809 return 489;
6811 else
6813 /* 33222222222211111111110000000000
6814 10987654321098765432109876543210
6815 xxxxxxxxxx0110110xx1x1xx011111xx
6816 fcmle. */
6817 return 519;
6822 else
6824 if (((word >> 19) & 0x1) == 0)
6826 if (((word >> 23) & 0x1) == 0)
6828 if (((word >> 28) & 0x1) == 0)
6830 if (((word >> 29) & 0x1) == 0)
6832 /* 33222222222211111111110000000000
6833 10987654321098765432109876543210
6834 xxxxxxxxxx0110111xx0x1x0011100xx
6835 scvtf. */
6836 return 185;
6838 else
6840 /* 33222222222211111111110000000000
6841 10987654321098765432109876543210
6842 xxxxxxxxxx0110111xx0x1x0011101xx
6843 ucvtf. */
6844 return 233;
6847 else
6849 if (((word >> 29) & 0x1) == 0)
6851 /* 33222222222211111111110000000000
6852 10987654321098765432109876543210
6853 xxxxxxxxxx0110111xx0x1x0011110xx
6854 scvtf. */
6855 return 484;
6857 else
6859 /* 33222222222211111111110000000000
6860 10987654321098765432109876543210
6861 xxxxxxxxxx0110111xx0x1x0011111xx
6862 ucvtf. */
6863 return 514;
6867 else
6869 if (((word >> 28) & 0x1) == 0)
6871 if (((word >> 29) & 0x1) == 0)
6873 /* 33222222222211111111110000000000
6874 10987654321098765432109876543210
6875 xxxxxxxxxx0110111xx0x1x1011100xx
6876 frecpe. */
6877 return 204;
6879 else
6881 /* 33222222222211111111110000000000
6882 10987654321098765432109876543210
6883 xxxxxxxxxx0110111xx0x1x1011101xx
6884 frsqrte. */
6885 return 251;
6888 else
6890 if (((word >> 29) & 0x1) == 0)
6892 /* 33222222222211111111110000000000
6893 10987654321098765432109876543210
6894 xxxxxxxxxx0110111xx0x1x1011110xx
6895 frecpe. */
6896 return 496;
6898 else
6900 /* 33222222222211111111110000000000
6901 10987654321098765432109876543210
6902 xxxxxxxxxx0110111xx0x1x1011111xx
6903 frsqrte. */
6904 return 524;
6909 else
6911 if (((word >> 23) & 0x1) == 0)
6913 if (((word >> 28) & 0x1) == 0)
6915 if (((word >> 29) & 0x1) == 0)
6917 /* 33222222222211111111110000000000
6918 10987654321098765432109876543210
6919 xxxxxxxxxx0110111xx1x1x0011100xx
6920 scvtf. */
6921 return 186;
6923 else
6925 /* 33222222222211111111110000000000
6926 10987654321098765432109876543210
6927 xxxxxxxxxx0110111xx1x1x0011101xx
6928 ucvtf. */
6929 return 234;
6932 else
6934 if (((word >> 29) & 0x1) == 0)
6936 /* 33222222222211111111110000000000
6937 10987654321098765432109876543210
6938 xxxxxxxxxx0110111xx1x1x0011110xx
6939 scvtf. */
6940 return 485;
6942 else
6944 /* 33222222222211111111110000000000
6945 10987654321098765432109876543210
6946 xxxxxxxxxx0110111xx1x1x0011111xx
6947 ucvtf. */
6948 return 515;
6952 else
6954 if (((word >> 28) & 0x1) == 0)
6956 if (((word >> 29) & 0x1) == 0)
6958 /* 33222222222211111111110000000000
6959 10987654321098765432109876543210
6960 xxxxxxxxxx0110111xx1x1x1011100xx
6961 frecpe. */
6962 return 205;
6964 else
6966 /* 33222222222211111111110000000000
6967 10987654321098765432109876543210
6968 xxxxxxxxxx0110111xx1x1x1011101xx
6969 frsqrte. */
6970 return 252;
6973 else
6975 if (((word >> 29) & 0x1) == 0)
6977 /* 33222222222211111111110000000000
6978 10987654321098765432109876543210
6979 xxxxxxxxxx0110111xx1x1x1011110xx
6980 frecpe. */
6981 return 497;
6983 else
6985 /* 33222222222211111111110000000000
6986 10987654321098765432109876543210
6987 xxxxxxxxxx0110111xx1x1x1011111xx
6988 frsqrte. */
6989 return 525;
6998 else
7000 if (((word >> 14) & 0x1) == 0)
7002 if (((word >> 15) & 0x1) == 0)
7004 if (((word >> 28) & 0x1) == 0)
7006 if (((word >> 16) & 0x1) == 0)
7008 if (((word >> 20) & 0x1) == 0)
7010 if (((word >> 29) & 0x1) == 0)
7012 /* 33222222222211111111110000000000
7013 10987654321098765432109876543210
7014 xxxxxxxxxx0111000xxx01xx011100xx
7015 suqadd. */
7016 return 158;
7018 else
7020 /* 33222222222211111111110000000000
7021 10987654321098765432109876543210
7022 xxxxxxxxxx0111000xxx01xx011101xx
7023 usqadd. */
7024 return 208;
7027 else
7029 if (((word >> 29) & 0x1) == 0)
7031 /* 33222222222211111111110000000000
7032 10987654321098765432109876543210
7033 xxxxxxxxxx0111000xxx11xx011100xx
7034 saddlv. */
7035 return 27;
7037 else
7039 /* 33222222222211111111110000000000
7040 10987654321098765432109876543210
7041 xxxxxxxxxx0111000xxx11xx011101xx
7042 uaddlv. */
7043 return 31;
7047 else
7049 if (((word >> 30) & 0x1) == 0)
7051 /* 33222222222211111111110000000000
7052 10987654321098765432109876543210
7053 xxxxxxxxxx0111001xxxx1xx01110x0x
7054 shll. */
7055 return 217;
7057 else
7059 /* 33222222222211111111110000000000
7060 10987654321098765432109876543210
7061 xxxxxxxxxx0111001xxxx1xx01110x1x
7062 shll2. */
7063 return 218;
7067 else
7069 if (((word >> 29) & 0x1) == 0)
7071 if (((word >> 30) & 0x1) == 0)
7073 /* 33222222222211111111110000000000
7074 10987654321098765432109876543210
7075 xxxxxxxxxx011100xxxxx1xx0111100x
7076 fsub. */
7077 return 793;
7079 else
7081 /* 33222222222211111111110000000000
7082 10987654321098765432109876543210
7083 xxxxxxxxxx011100xxxxx1xx0111101x
7084 suqadd. */
7085 return 471;
7088 else
7090 /* 33222222222211111111110000000000
7091 10987654321098765432109876543210
7092 xxxxxxxxxx011100xxxxx1xx011111xx
7093 usqadd. */
7094 return 500;
7098 else
7100 if (((word >> 16) & 0x1) == 0)
7102 if (((word >> 28) & 0x1) == 0)
7104 if (((word >> 29) & 0x1) == 0)
7106 /* 33222222222211111111110000000000
7107 10987654321098765432109876543210
7108 xxxxxxxxxx0111010xxxx1xx011100xx
7109 abs. */
7110 return 166;
7112 else
7114 /* 33222222222211111111110000000000
7115 10987654321098765432109876543210
7116 xxxxxxxxxx0111010xxxx1xx011101xx
7117 neg. */
7118 return 214;
7121 else
7123 if (((word >> 29) & 0x1) == 0)
7125 /* 33222222222211111111110000000000
7126 10987654321098765432109876543210
7127 xxxxxxxxxx0111010xxxx1xx011110xx
7128 abs. */
7129 return 476;
7131 else
7133 /* 33222222222211111111110000000000
7134 10987654321098765432109876543210
7135 xxxxxxxxxx0111010xxxx1xx011111xx
7136 neg. */
7137 return 504;
7141 else
7143 if (((word >> 19) & 0x1) == 0)
7145 if (((word >> 20) & 0x1) == 0)
7147 if (((word >> 23) & 0x1) == 0)
7149 if (((word >> 28) & 0x1) == 0)
7151 if (((word >> 29) & 0x1) == 0)
7153 /* 33222222222211111111110000000000
7154 10987654321098765432109876543210
7155 xxxxxxxxxx0111011xx001x0011100xx
7156 fcvtms. */
7157 return 181;
7159 else
7161 /* 33222222222211111111110000000000
7162 10987654321098765432109876543210
7163 xxxxxxxxxx0111011xx001x0011101xx
7164 fcvtmu. */
7165 return 229;
7168 else
7170 if (((word >> 29) & 0x1) == 0)
7172 /* 33222222222211111111110000000000
7173 10987654321098765432109876543210
7174 xxxxxxxxxx0111011xx001x0011110xx
7175 fcvtms. */
7176 return 480;
7178 else
7180 /* 33222222222211111111110000000000
7181 10987654321098765432109876543210
7182 xxxxxxxxxx0111011xx001x0011111xx
7183 fcvtmu. */
7184 return 510;
7188 else
7190 if (((word >> 28) & 0x1) == 0)
7192 if (((word >> 29) & 0x1) == 0)
7194 /* 33222222222211111111110000000000
7195 10987654321098765432109876543210
7196 xxxxxxxxxx0111011xx001x1011100xx
7197 fcvtzs. */
7198 return 201;
7200 else
7202 /* 33222222222211111111110000000000
7203 10987654321098765432109876543210
7204 xxxxxxxxxx0111011xx001x1011101xx
7205 fcvtzu. */
7206 return 248;
7209 else
7211 if (((word >> 29) & 0x1) == 0)
7213 /* 33222222222211111111110000000000
7214 10987654321098765432109876543210
7215 xxxxxxxxxx0111011xx001x1011110xx
7216 fcvtzs. */
7217 return 494;
7219 else
7221 /* 33222222222211111111110000000000
7222 10987654321098765432109876543210
7223 xxxxxxxxxx0111011xx001x1011111xx
7224 fcvtzu. */
7225 return 522;
7230 else
7232 if (((word >> 28) & 0x1) == 0)
7234 /* 33222222222211111111110000000000
7235 10987654321098765432109876543210
7236 xxxxxxxxxx0111011xx011xx01110xxx
7237 addv. */
7238 return 30;
7240 else
7242 /* 33222222222211111111110000000000
7243 10987654321098765432109876543210
7244 xxxxxxxxxx0111011xx011xx01111xxx
7245 addp. */
7246 return 528;
7250 else
7252 if (((word >> 23) & 0x1) == 0)
7254 if (((word >> 28) & 0x1) == 0)
7256 if (((word >> 29) & 0x1) == 0)
7258 /* 33222222222211111111110000000000
7259 10987654321098765432109876543210
7260 xxxxxxxxxx0111011xx1x1x0011100xx
7261 fcvtms. */
7262 return 182;
7264 else
7266 /* 33222222222211111111110000000000
7267 10987654321098765432109876543210
7268 xxxxxxxxxx0111011xx1x1x0011101xx
7269 fcvtmu. */
7270 return 230;
7273 else
7275 if (((word >> 29) & 0x1) == 0)
7277 /* 33222222222211111111110000000000
7278 10987654321098765432109876543210
7279 xxxxxxxxxx0111011xx1x1x0011110xx
7280 fcvtms. */
7281 return 481;
7283 else
7285 /* 33222222222211111111110000000000
7286 10987654321098765432109876543210
7287 xxxxxxxxxx0111011xx1x1x0011111xx
7288 fcvtmu. */
7289 return 511;
7293 else
7295 if (((word >> 28) & 0x1) == 0)
7297 if (((word >> 29) & 0x1) == 0)
7299 /* 33222222222211111111110000000000
7300 10987654321098765432109876543210
7301 xxxxxxxxxx0111011xx1x1x1011100xx
7302 fcvtzs. */
7303 return 202;
7305 else
7307 /* 33222222222211111111110000000000
7308 10987654321098765432109876543210
7309 xxxxxxxxxx0111011xx1x1x1011101xx
7310 fcvtzu. */
7311 return 249;
7314 else
7316 if (((word >> 29) & 0x1) == 0)
7318 /* 33222222222211111111110000000000
7319 10987654321098765432109876543210
7320 xxxxxxxxxx0111011xx1x1x1011110xx
7321 fcvtzs. */
7322 return 495;
7324 else
7326 /* 33222222222211111111110000000000
7327 10987654321098765432109876543210
7328 xxxxxxxxxx0111011xx1x1x1011111xx
7329 fcvtzu. */
7330 return 523;
7338 else
7340 if (((word >> 15) & 0x1) == 0)
7342 if (((word >> 28) & 0x1) == 0)
7344 if (((word >> 16) & 0x1) == 0)
7346 if (((word >> 19) & 0x1) == 0)
7348 if (((word >> 29) & 0x1) == 0)
7350 /* 33222222222211111111110000000000
7351 10987654321098765432109876543210
7352 xxxxxxxxxx0111100xx0x1xx011100xx
7353 sqabs. */
7354 return 162;
7356 else
7358 /* 33222222222211111111110000000000
7359 10987654321098765432109876543210
7360 xxxxxxxxxx0111100xx0x1xx011101xx
7361 sqneg. */
7362 return 211;
7365 else
7367 /* 33222222222211111111110000000000
7368 10987654321098765432109876543210
7369 xxxxxxxxxx0111100xx1x1xx01110xxx
7370 aesimc. */
7371 return 653;
7374 else
7376 if (((word >> 30) & 0x1) == 0)
7378 /* 33222222222211111111110000000000
7379 10987654321098765432109876543210
7380 xxxxxxxxxx0111101xxxx1xx01110x0x
7381 fcvtl. */
7382 return 173;
7384 else
7386 /* 33222222222211111111110000000000
7387 10987654321098765432109876543210
7388 xxxxxxxxxx0111101xxxx1xx01110x1x
7389 fcvtl2. */
7390 return 174;
7394 else
7396 if (((word >> 29) & 0x1) == 0)
7398 if (((word >> 30) & 0x1) == 0)
7400 /* 33222222222211111111110000000000
7401 10987654321098765432109876543210
7402 xxxxxxxxxx011110xxxxx1xx0111100x
7403 fminnm. */
7404 return 801;
7406 else
7408 /* 33222222222211111111110000000000
7409 10987654321098765432109876543210
7410 xxxxxxxxxx011110xxxxx1xx0111101x
7411 sqabs. */
7412 return 472;
7415 else
7417 /* 33222222222211111111110000000000
7418 10987654321098765432109876543210
7419 xxxxxxxxxx011110xxxxx1xx011111xx
7420 sqneg. */
7421 return 501;
7425 else
7427 if (((word >> 16) & 0x1) == 0)
7429 if (((word >> 19) & 0x1) == 0)
7431 if (((word >> 20) & 0x1) == 0)
7433 if (((word >> 29) & 0x1) == 0)
7435 /* 33222222222211111111110000000000
7436 10987654321098765432109876543210
7437 xxxxxxxxxx0111110xx001xx0111x0xx
7438 fabs. */
7439 return 193;
7441 else
7443 /* 33222222222211111111110000000000
7444 10987654321098765432109876543210
7445 xxxxxxxxxx0111110xx001xx0111x1xx
7446 fneg. */
7447 return 242;
7450 else
7452 if (((word >> 23) & 0x1) == 0)
7454 if (((word >> 28) & 0x1) == 0)
7456 if (((word >> 29) & 0x1) == 0)
7458 /* 33222222222211111111110000000000
7459 10987654321098765432109876543210
7460 xxxxxxxxxx0111110xx011x0011100xx
7461 fmaxv. */
7462 return 37;
7464 else
7466 /* 33222222222211111111110000000000
7467 10987654321098765432109876543210
7468 xxxxxxxxxx0111110xx011x0011101xx
7469 fmaxv. */
7470 return 36;
7473 else
7475 if (((word >> 29) & 0x1) == 0)
7477 /* 33222222222211111111110000000000
7478 10987654321098765432109876543210
7479 xxxxxxxxxx0111110xx011x0011110xx
7480 fmaxp. */
7481 return 534;
7483 else
7485 /* 33222222222211111111110000000000
7486 10987654321098765432109876543210
7487 xxxxxxxxxx0111110xx011x0011111xx
7488 fmaxp. */
7489 return 533;
7493 else
7495 if (((word >> 28) & 0x1) == 0)
7497 if (((word >> 29) & 0x1) == 0)
7499 /* 33222222222211111111110000000000
7500 10987654321098765432109876543210
7501 xxxxxxxxxx0111110xx011x1011100xx
7502 fminv. */
7503 return 41;
7505 else
7507 /* 33222222222211111111110000000000
7508 10987654321098765432109876543210
7509 xxxxxxxxxx0111110xx011x1011101xx
7510 fminv. */
7511 return 40;
7514 else
7516 if (((word >> 29) & 0x1) == 0)
7518 /* 33222222222211111111110000000000
7519 10987654321098765432109876543210
7520 xxxxxxxxxx0111110xx011x1011110xx
7521 fminp. */
7522 return 538;
7524 else
7526 /* 33222222222211111111110000000000
7527 10987654321098765432109876543210
7528 xxxxxxxxxx0111110xx011x1011111xx
7529 fminp. */
7530 return 537;
7536 else
7538 if (((word >> 29) & 0x1) == 0)
7540 /* 33222222222211111111110000000000
7541 10987654321098765432109876543210
7542 xxxxxxxxxx0111110xx1x1xx0111x0xx
7543 fabs. */
7544 return 194;
7546 else
7548 /* 33222222222211111111110000000000
7549 10987654321098765432109876543210
7550 xxxxxxxxxx0111110xx1x1xx0111x1xx
7551 fneg. */
7552 return 243;
7556 else
7558 if (((word >> 19) & 0x1) == 0)
7560 if (((word >> 28) & 0x1) == 0)
7562 /* 33222222222211111111110000000000
7563 10987654321098765432109876543210
7564 xxxxxxxxxx0111111xx0x1xx01110xxx
7565 fsqrt. */
7566 return 253;
7568 else
7570 /* 33222222222211111111110000000000
7571 10987654321098765432109876543210
7572 xxxxxxxxxx0111111xx0x1xx01111xxx
7573 frecpx. */
7574 return 498;
7577 else
7579 if (((word >> 28) & 0x1) == 0)
7581 /* 33222222222211111111110000000000
7582 10987654321098765432109876543210
7583 xxxxxxxxxx0111111xx1x1xx01110xxx
7584 fsqrt. */
7585 return 254;
7587 else
7589 /* 33222222222211111111110000000000
7590 10987654321098765432109876543210
7591 xxxxxxxxxx0111111xx1x1xx01111xxx
7592 frecpx. */
7593 return 499;
7603 else
7605 if (((word >> 11) & 0x1) == 0)
7607 if (((word >> 28) & 0x1) == 0)
7609 if (((word >> 12) & 0x1) == 0)
7611 if (((word >> 13) & 0x1) == 0)
7613 if (((word >> 14) & 0x1) == 0)
7615 if (((word >> 15) & 0x1) == 0)
7617 if (((word >> 29) & 0x1) == 0)
7619 /* 33222222222211111111110000000000
7620 10987654321098765432109876543210
7621 xxxxxxxxxx100000xxxxx1xx011100xx
7622 shadd. */
7623 return 261;
7625 else
7627 /* 33222222222211111111110000000000
7628 10987654321098765432109876543210
7629 xxxxxxxxxx100000xxxxx1xx011101xx
7630 uhadd. */
7631 return 313;
7634 else
7636 if (((word >> 29) & 0x1) == 0)
7638 /* 33222222222211111111110000000000
7639 10987654321098765432109876543210
7640 xxxxxxxxxx100001xxxxx1xx011100xx
7641 add. */
7642 return 276;
7644 else
7646 /* 33222222222211111111110000000000
7647 10987654321098765432109876543210
7648 xxxxxxxxxx100001xxxxx1xx011101xx
7649 sub. */
7650 return 328;
7654 else
7656 if (((word >> 15) & 0x1) == 0)
7658 if (((word >> 29) & 0x1) == 0)
7660 /* 33222222222211111111110000000000
7661 10987654321098765432109876543210
7662 xxxxxxxxxx100010xxxxx1xx011100xx
7663 sshl. */
7664 return 268;
7666 else
7668 /* 33222222222211111111110000000000
7669 10987654321098765432109876543210
7670 xxxxxxxxxx100010xxxxx1xx011101xx
7671 ushl. */
7672 return 320;
7675 else
7677 if (((word >> 23) & 0x1) == 0)
7679 if (((word >> 29) & 0x1) == 0)
7681 /* 33222222222211111111110000000000
7682 10987654321098765432109876543210
7683 xxxxxxxxxx100011xxxxx1x0011100xx
7684 fmaxnm. */
7685 return 284;
7687 else
7689 /* 33222222222211111111110000000000
7690 10987654321098765432109876543210
7691 xxxxxxxxxx100011xxxxx1x0011101xx
7692 fmaxnmp. */
7693 return 335;
7696 else
7698 if (((word >> 29) & 0x1) == 0)
7700 /* 33222222222211111111110000000000
7701 10987654321098765432109876543210
7702 xxxxxxxxxx100011xxxxx1x1011100xx
7703 fminnm. */
7704 return 300;
7706 else
7708 /* 33222222222211111111110000000000
7709 10987654321098765432109876543210
7710 xxxxxxxxxx100011xxxxx1x1011101xx
7711 fminnmp. */
7712 return 351;
7718 else
7720 if (((word >> 14) & 0x1) == 0)
7722 if (((word >> 15) & 0x1) == 0)
7724 if (((word >> 29) & 0x1) == 0)
7726 /* 33222222222211111111110000000000
7727 10987654321098765432109876543210
7728 xxxxxxxxxx100100xxxxx1xx011100xx
7729 shsub. */
7730 return 264;
7732 else
7734 /* 33222222222211111111110000000000
7735 10987654321098765432109876543210
7736 xxxxxxxxxx100100xxxxx1xx011101xx
7737 uhsub. */
7738 return 316;
7741 else
7743 if (((word >> 29) & 0x1) == 0)
7745 /* 33222222222211111111110000000000
7746 10987654321098765432109876543210
7747 xxxxxxxxxx100101xxxxx1xx011100xx
7748 smaxp. */
7749 return 280;
7751 else
7753 /* 33222222222211111111110000000000
7754 10987654321098765432109876543210
7755 xxxxxxxxxx100101xxxxx1xx011101xx
7756 umaxp. */
7757 return 332;
7761 else
7763 if (((word >> 15) & 0x1) == 0)
7765 if (((word >> 29) & 0x1) == 0)
7767 /* 33222222222211111111110000000000
7768 10987654321098765432109876543210
7769 xxxxxxxxxx100110xxxxx1xx011100xx
7770 smax. */
7771 return 272;
7773 else
7775 /* 33222222222211111111110000000000
7776 10987654321098765432109876543210
7777 xxxxxxxxxx100110xxxxx1xx011101xx
7778 umax. */
7779 return 324;
7782 else
7784 if (((word >> 23) & 0x1) == 0)
7786 if (((word >> 29) & 0x1) == 0)
7788 /* 33222222222211111111110000000000
7789 10987654321098765432109876543210
7790 xxxxxxxxxx100111xxxxx1x0011100xx
7791 fcmeq. */
7792 return 292;
7794 else
7796 /* 33222222222211111111110000000000
7797 10987654321098765432109876543210
7798 xxxxxxxxxx100111xxxxx1x0011101xx
7799 fcmge. */
7800 return 341;
7803 else
7805 /* 33222222222211111111110000000000
7806 10987654321098765432109876543210
7807 xxxxxxxxxx100111xxxxx1x101110xxx
7808 fcmgt. */
7809 return 355;
7815 else
7817 if (((word >> 13) & 0x1) == 0)
7819 if (((word >> 14) & 0x1) == 0)
7821 if (((word >> 15) & 0x1) == 0)
7823 if (((word >> 29) & 0x1) == 0)
7825 /* 33222222222211111111110000000000
7826 10987654321098765432109876543210
7827 xxxxxxxxxx101000xxxxx1xx011100xx
7828 srhadd. */
7829 return 263;
7831 else
7833 /* 33222222222211111111110000000000
7834 10987654321098765432109876543210
7835 xxxxxxxxxx101000xxxxx1xx011101xx
7836 urhadd. */
7837 return 315;
7840 else
7842 if (((word >> 29) & 0x1) == 0)
7844 /* 33222222222211111111110000000000
7845 10987654321098765432109876543210
7846 xxxxxxxxxx101001xxxxx1xx011100xx
7847 mla. */
7848 return 278;
7850 else
7852 /* 33222222222211111111110000000000
7853 10987654321098765432109876543210
7854 xxxxxxxxxx101001xxxxx1xx011101xx
7855 mls. */
7856 return 330;
7860 else
7862 if (((word >> 15) & 0x1) == 0)
7864 if (((word >> 29) & 0x1) == 0)
7866 /* 33222222222211111111110000000000
7867 10987654321098765432109876543210
7868 xxxxxxxxxx101010xxxxx1xx011100xx
7869 srshl. */
7870 return 270;
7872 else
7874 /* 33222222222211111111110000000000
7875 10987654321098765432109876543210
7876 xxxxxxxxxx101010xxxxx1xx011101xx
7877 urshl. */
7878 return 322;
7881 else
7883 if (((word >> 23) & 0x1) == 0)
7885 if (((word >> 29) & 0x1) == 0)
7887 /* 33222222222211111111110000000000
7888 10987654321098765432109876543210
7889 xxxxxxxxxx101011xxxxx1x0011100xx
7890 fadd. */
7891 return 288;
7893 else
7895 /* 33222222222211111111110000000000
7896 10987654321098765432109876543210
7897 xxxxxxxxxx101011xxxxx1x0011101xx
7898 faddp. */
7899 return 337;
7902 else
7904 if (((word >> 29) & 0x1) == 0)
7906 /* 33222222222211111111110000000000
7907 10987654321098765432109876543210
7908 xxxxxxxxxx101011xxxxx1x1011100xx
7909 fsub. */
7910 return 304;
7912 else
7914 /* 33222222222211111111110000000000
7915 10987654321098765432109876543210
7916 xxxxxxxxxx101011xxxxx1x1011101xx
7917 fabd. */
7918 return 353;
7924 else
7926 if (((word >> 14) & 0x1) == 0)
7928 if (((word >> 15) & 0x1) == 0)
7930 if (((word >> 29) & 0x1) == 0)
7932 /* 33222222222211111111110000000000
7933 10987654321098765432109876543210
7934 xxxxxxxxxx101100xxxxx1xx011100xx
7935 cmgt. */
7936 return 266;
7938 else
7940 /* 33222222222211111111110000000000
7941 10987654321098765432109876543210
7942 xxxxxxxxxx101100xxxxx1xx011101xx
7943 cmhi. */
7944 return 318;
7947 else
7949 if (((word >> 29) & 0x1) == 0)
7951 /* 33222222222211111111110000000000
7952 10987654321098765432109876543210
7953 xxxxxxxxxx101101xxxxx1xx011100xx
7954 sqdmulh. */
7955 return 282;
7957 else
7959 /* 33222222222211111111110000000000
7960 10987654321098765432109876543210
7961 xxxxxxxxxx101101xxxxx1xx011101xx
7962 sqrdmulh. */
7963 return 334;
7967 else
7969 if (((word >> 15) & 0x1) == 0)
7971 if (((word >> 29) & 0x1) == 0)
7973 /* 33222222222211111111110000000000
7974 10987654321098765432109876543210
7975 xxxxxxxxxx101110xxxxx1xx011100xx
7976 sabd. */
7977 return 274;
7979 else
7981 /* 33222222222211111111110000000000
7982 10987654321098765432109876543210
7983 xxxxxxxxxx101110xxxxx1xx011101xx
7984 uabd. */
7985 return 326;
7988 else
7990 if (((word >> 23) & 0x1) == 0)
7992 if (((word >> 29) & 0x1) == 0)
7994 /* 33222222222211111111110000000000
7995 10987654321098765432109876543210
7996 xxxxxxxxxx101111xxxxx1x0011100xx
7997 fmax. */
7998 return 294;
8000 else
8002 /* 33222222222211111111110000000000
8003 10987654321098765432109876543210
8004 xxxxxxxxxx101111xxxxx1x0011101xx
8005 fmaxp. */
8006 return 345;
8009 else
8011 if (((word >> 29) & 0x1) == 0)
8013 /* 33222222222211111111110000000000
8014 10987654321098765432109876543210
8015 xxxxxxxxxx101111xxxxx1x1011100xx
8016 fmin. */
8017 return 306;
8019 else
8021 /* 33222222222211111111110000000000
8022 10987654321098765432109876543210
8023 xxxxxxxxxx101111xxxxx1x1011101xx
8024 fminp. */
8025 return 359;
8033 else
8035 if (((word >> 29) & 0x1) == 0)
8037 if (((word >> 30) & 0x1) == 0)
8039 if (((word >> 4) & 0x1) == 0)
8041 /* 33222222222211111111110000000000
8042 10987654321098765432109876543210
8043 xxxx0xxxxx10xxxxxxxxx1xx0111100x
8044 fccmp. */
8045 return 752;
8047 else
8049 /* 33222222222211111111110000000000
8050 10987654321098765432109876543210
8051 xxxx1xxxxx10xxxxxxxxx1xx0111100x
8052 fccmpe. */
8053 return 754;
8056 else
8058 if (((word >> 12) & 0x1) == 0)
8060 if (((word >> 13) & 0x1) == 0)
8062 if (((word >> 14) & 0x1) == 0)
8064 /* 33222222222211111111110000000000
8065 10987654321098765432109876543210
8066 xxxxxxxxxx10000xxxxxx1xx0111101x
8067 add. */
8068 return 556;
8070 else
8072 /* 33222222222211111111110000000000
8073 10987654321098765432109876543210
8074 xxxxxxxxxx10001xxxxxx1xx0111101x
8075 sshl. */
8076 return 554;
8079 else
8081 /* 33222222222211111111110000000000
8082 10987654321098765432109876543210
8083 xxxxxxxxxx1001xxxxxxx1xx0111101x
8084 fcmeq. */
8085 return 546;
8088 else
8090 if (((word >> 13) & 0x1) == 0)
8092 /* 33222222222211111111110000000000
8093 10987654321098765432109876543210
8094 xxxxxxxxxx1010xxxxxxx1xx0111101x
8095 srshl. */
8096 return 555;
8098 else
8100 if (((word >> 15) & 0x1) == 0)
8102 /* 33222222222211111111110000000000
8103 10987654321098765432109876543210
8104 xxxxxxxxxx1011x0xxxxx1xx0111101x
8105 cmgt. */
8106 return 552;
8108 else
8110 /* 33222222222211111111110000000000
8111 10987654321098765432109876543210
8112 xxxxxxxxxx1011x1xxxxx1xx0111101x
8113 sqdmulh. */
8114 return 543;
8120 else
8122 if (((word >> 12) & 0x1) == 0)
8124 if (((word >> 13) & 0x1) == 0)
8126 if (((word >> 14) & 0x1) == 0)
8128 /* 33222222222211111111110000000000
8129 10987654321098765432109876543210
8130 xxxxxxxxxx10000xxxxxx1xx011111xx
8131 sub. */
8132 return 577;
8134 else
8136 /* 33222222222211111111110000000000
8137 10987654321098765432109876543210
8138 xxxxxxxxxx10001xxxxxx1xx011111xx
8139 ushl. */
8140 return 575;
8143 else
8145 if (((word >> 23) & 0x1) == 0)
8147 /* 33222222222211111111110000000000
8148 10987654321098765432109876543210
8149 xxxxxxxxxx1001xxxxxxx1x0011111xx
8150 fcmge. */
8151 return 563;
8153 else
8155 /* 33222222222211111111110000000000
8156 10987654321098765432109876543210
8157 xxxxxxxxxx1001xxxxxxx1x1011111xx
8158 fcmgt. */
8159 return 569;
8163 else
8165 if (((word >> 13) & 0x1) == 0)
8167 if (((word >> 15) & 0x1) == 0)
8169 /* 33222222222211111111110000000000
8170 10987654321098765432109876543210
8171 xxxxxxxxxx1010x0xxxxx1xx011111xx
8172 urshl. */
8173 return 576;
8175 else
8177 /* 33222222222211111111110000000000
8178 10987654321098765432109876543210
8179 xxxxxxxxxx1010x1xxxxx1xx011111xx
8180 fabd. */
8181 return 567;
8184 else
8186 if (((word >> 15) & 0x1) == 0)
8188 /* 33222222222211111111110000000000
8189 10987654321098765432109876543210
8190 xxxxxxxxxx1011x0xxxxx1xx011111xx
8191 cmhi. */
8192 return 573;
8194 else
8196 /* 33222222222211111111110000000000
8197 10987654321098765432109876543210
8198 xxxxxxxxxx1011x1xxxxx1xx011111xx
8199 sqrdmulh. */
8200 return 562;
8207 else
8209 if (((word >> 28) & 0x1) == 0)
8211 if (((word >> 12) & 0x1) == 0)
8213 if (((word >> 13) & 0x1) == 0)
8215 if (((word >> 14) & 0x1) == 0)
8217 if (((word >> 15) & 0x1) == 0)
8219 if (((word >> 29) & 0x1) == 0)
8221 /* 33222222222211111111110000000000
8222 10987654321098765432109876543210
8223 xxxxxxxxxx110000xxxxx1xx011100xx
8224 sqadd. */
8225 return 262;
8227 else
8229 /* 33222222222211111111110000000000
8230 10987654321098765432109876543210
8231 xxxxxxxxxx110000xxxxx1xx011101xx
8232 uqadd. */
8233 return 314;
8236 else
8238 if (((word >> 29) & 0x1) == 0)
8240 /* 33222222222211111111110000000000
8241 10987654321098765432109876543210
8242 xxxxxxxxxx110001xxxxx1xx011100xx
8243 cmtst. */
8244 return 277;
8246 else
8248 /* 33222222222211111111110000000000
8249 10987654321098765432109876543210
8250 xxxxxxxxxx110001xxxxx1xx011101xx
8251 cmeq. */
8252 return 329;
8256 else
8258 if (((word >> 15) & 0x1) == 0)
8260 if (((word >> 29) & 0x1) == 0)
8262 /* 33222222222211111111110000000000
8263 10987654321098765432109876543210
8264 xxxxxxxxxx110010xxxxx1xx011100xx
8265 sqshl. */
8266 return 269;
8268 else
8270 /* 33222222222211111111110000000000
8271 10987654321098765432109876543210
8272 xxxxxxxxxx110010xxxxx1xx011101xx
8273 uqshl. */
8274 return 321;
8277 else
8279 if (((word >> 23) & 0x1) == 0)
8281 /* 33222222222211111111110000000000
8282 10987654321098765432109876543210
8283 xxxxxxxxxx110011xxxxx1x001110xxx
8284 fmla. */
8285 return 286;
8287 else
8289 /* 33222222222211111111110000000000
8290 10987654321098765432109876543210
8291 xxxxxxxxxx110011xxxxx1x101110xxx
8292 fmls. */
8293 return 302;
8298 else
8300 if (((word >> 14) & 0x1) == 0)
8302 if (((word >> 15) & 0x1) == 0)
8304 if (((word >> 29) & 0x1) == 0)
8306 /* 33222222222211111111110000000000
8307 10987654321098765432109876543210
8308 xxxxxxxxxx110100xxxxx1xx011100xx
8309 sqsub. */
8310 return 265;
8312 else
8314 /* 33222222222211111111110000000000
8315 10987654321098765432109876543210
8316 xxxxxxxxxx110100xxxxx1xx011101xx
8317 uqsub. */
8318 return 317;
8321 else
8323 if (((word >> 29) & 0x1) == 0)
8325 /* 33222222222211111111110000000000
8326 10987654321098765432109876543210
8327 xxxxxxxxxx110101xxxxx1xx011100xx
8328 sminp. */
8329 return 281;
8331 else
8333 /* 33222222222211111111110000000000
8334 10987654321098765432109876543210
8335 xxxxxxxxxx110101xxxxx1xx011101xx
8336 uminp. */
8337 return 333;
8341 else
8343 if (((word >> 15) & 0x1) == 0)
8345 if (((word >> 29) & 0x1) == 0)
8347 /* 33222222222211111111110000000000
8348 10987654321098765432109876543210
8349 xxxxxxxxxx110110xxxxx1xx011100xx
8350 smin. */
8351 return 273;
8353 else
8355 /* 33222222222211111111110000000000
8356 10987654321098765432109876543210
8357 xxxxxxxxxx110110xxxxx1xx011101xx
8358 umin. */
8359 return 325;
8362 else
8364 if (((word >> 23) & 0x1) == 0)
8366 /* 33222222222211111111110000000000
8367 10987654321098765432109876543210
8368 xxxxxxxxxx110111xxxxx1x001110xxx
8369 facge. */
8370 return 343;
8372 else
8374 /* 33222222222211111111110000000000
8375 10987654321098765432109876543210
8376 xxxxxxxxxx110111xxxxx1x101110xxx
8377 facgt. */
8378 return 357;
8384 else
8386 if (((word >> 13) & 0x1) == 0)
8388 if (((word >> 14) & 0x1) == 0)
8390 if (((word >> 15) & 0x1) == 0)
8392 if (((word >> 22) & 0x1) == 0)
8394 if (((word >> 23) & 0x1) == 0)
8396 if (((word >> 29) & 0x1) == 0)
8398 /* 33222222222211111111110000000000
8399 10987654321098765432109876543210
8400 xxxxxxxxxx111000xxxxx100011100xx
8401 and. */
8402 return 298;
8404 else
8406 /* 33222222222211111111110000000000
8407 10987654321098765432109876543210
8408 xxxxxxxxxx111000xxxxx100011101xx
8409 eor. */
8410 return 349;
8413 else
8415 if (((word >> 29) & 0x1) == 0)
8417 /* 33222222222211111111110000000000
8418 10987654321098765432109876543210
8419 xxxxxxxxxx111000xxxxx101011100xx
8420 orr. */
8421 return 310;
8423 else
8425 /* 33222222222211111111110000000000
8426 10987654321098765432109876543210
8427 xxxxxxxxxx111000xxxxx101011101xx
8428 bit. */
8429 return 361;
8433 else
8435 if (((word >> 23) & 0x1) == 0)
8437 if (((word >> 29) & 0x1) == 0)
8439 /* 33222222222211111111110000000000
8440 10987654321098765432109876543210
8441 xxxxxxxxxx111000xxxxx110011100xx
8442 bic. */
8443 return 299;
8445 else
8447 /* 33222222222211111111110000000000
8448 10987654321098765432109876543210
8449 xxxxxxxxxx111000xxxxx110011101xx
8450 bsl. */
8451 return 350;
8454 else
8456 if (((word >> 29) & 0x1) == 0)
8458 /* 33222222222211111111110000000000
8459 10987654321098765432109876543210
8460 xxxxxxxxxx111000xxxxx111011100xx
8461 orn. */
8462 return 312;
8464 else
8466 /* 33222222222211111111110000000000
8467 10987654321098765432109876543210
8468 xxxxxxxxxx111000xxxxx111011101xx
8469 bif. */
8470 return 362;
8475 else
8477 if (((word >> 29) & 0x1) == 0)
8479 /* 33222222222211111111110000000000
8480 10987654321098765432109876543210
8481 xxxxxxxxxx111001xxxxx1xx011100xx
8482 mul. */
8483 return 279;
8485 else
8487 /* 33222222222211111111110000000000
8488 10987654321098765432109876543210
8489 xxxxxxxxxx111001xxxxx1xx011101xx
8490 pmul. */
8491 return 331;
8495 else
8497 if (((word >> 15) & 0x1) == 0)
8499 if (((word >> 29) & 0x1) == 0)
8501 /* 33222222222211111111110000000000
8502 10987654321098765432109876543210
8503 xxxxxxxxxx111010xxxxx1xx011100xx
8504 sqrshl. */
8505 return 271;
8507 else
8509 /* 33222222222211111111110000000000
8510 10987654321098765432109876543210
8511 xxxxxxxxxx111010xxxxx1xx011101xx
8512 uqrshl. */
8513 return 323;
8516 else
8518 if (((word >> 29) & 0x1) == 0)
8520 /* 33222222222211111111110000000000
8521 10987654321098765432109876543210
8522 xxxxxxxxxx111011xxxxx1xx011100xx
8523 fmulx. */
8524 return 290;
8526 else
8528 /* 33222222222211111111110000000000
8529 10987654321098765432109876543210
8530 xxxxxxxxxx111011xxxxx1xx011101xx
8531 fmul. */
8532 return 339;
8537 else
8539 if (((word >> 14) & 0x1) == 0)
8541 if (((word >> 15) & 0x1) == 0)
8543 if (((word >> 29) & 0x1) == 0)
8545 /* 33222222222211111111110000000000
8546 10987654321098765432109876543210
8547 xxxxxxxxxx111100xxxxx1xx011100xx
8548 cmge. */
8549 return 267;
8551 else
8553 /* 33222222222211111111110000000000
8554 10987654321098765432109876543210
8555 xxxxxxxxxx111100xxxxx1xx011101xx
8556 cmhs. */
8557 return 319;
8560 else
8562 /* 33222222222211111111110000000000
8563 10987654321098765432109876543210
8564 xxxxxxxxxx111101xxxxx1xx01110xxx
8565 addp. */
8566 return 283;
8569 else
8571 if (((word >> 15) & 0x1) == 0)
8573 if (((word >> 29) & 0x1) == 0)
8575 /* 33222222222211111111110000000000
8576 10987654321098765432109876543210
8577 xxxxxxxxxx111110xxxxx1xx011100xx
8578 saba. */
8579 return 275;
8581 else
8583 /* 33222222222211111111110000000000
8584 10987654321098765432109876543210
8585 xxxxxxxxxx111110xxxxx1xx011101xx
8586 uaba. */
8587 return 327;
8590 else
8592 if (((word >> 23) & 0x1) == 0)
8594 if (((word >> 29) & 0x1) == 0)
8596 /* 33222222222211111111110000000000
8597 10987654321098765432109876543210
8598 xxxxxxxxxx111111xxxxx1x0011100xx
8599 frecps. */
8600 return 296;
8602 else
8604 /* 33222222222211111111110000000000
8605 10987654321098765432109876543210
8606 xxxxxxxxxx111111xxxxx1x0011101xx
8607 fdiv. */
8608 return 347;
8611 else
8613 /* 33222222222211111111110000000000
8614 10987654321098765432109876543210
8615 xxxxxxxxxx111111xxxxx1x101110xxx
8616 frsqrts. */
8617 return 308;
8624 else
8626 if (((word >> 29) & 0x1) == 0)
8628 if (((word >> 30) & 0x1) == 0)
8630 /* 33222222222211111111110000000000
8631 10987654321098765432109876543210
8632 xxxxxxxxxx11xxxxxxxxx1xx0111100x
8633 fcsel. */
8634 return 815;
8636 else
8638 if (((word >> 12) & 0x1) == 0)
8640 if (((word >> 13) & 0x1) == 0)
8642 if (((word >> 14) & 0x1) == 0)
8644 if (((word >> 15) & 0x1) == 0)
8646 /* 33222222222211111111110000000000
8647 10987654321098765432109876543210
8648 xxxxxxxxxx110000xxxxx1xx0111101x
8649 sqadd. */
8650 return 539;
8652 else
8654 /* 33222222222211111111110000000000
8655 10987654321098765432109876543210
8656 xxxxxxxxxx110001xxxxx1xx0111101x
8657 cmtst. */
8658 return 557;
8661 else
8663 /* 33222222222211111111110000000000
8664 10987654321098765432109876543210
8665 xxxxxxxxxx11001xxxxxx1xx0111101x
8666 sqshl. */
8667 return 541;
8670 else
8672 /* 33222222222211111111110000000000
8673 10987654321098765432109876543210
8674 xxxxxxxxxx1101xxxxxxx1xx0111101x
8675 sqsub. */
8676 return 540;
8679 else
8681 if (((word >> 13) & 0x1) == 0)
8683 if (((word >> 15) & 0x1) == 0)
8685 /* 33222222222211111111110000000000
8686 10987654321098765432109876543210
8687 xxxxxxxxxx1110x0xxxxx1xx0111101x
8688 sqrshl. */
8689 return 542;
8691 else
8693 /* 33222222222211111111110000000000
8694 10987654321098765432109876543210
8695 xxxxxxxxxx1110x1xxxxx1xx0111101x
8696 fmulx. */
8697 return 544;
8700 else
8702 if (((word >> 14) & 0x1) == 0)
8704 /* 33222222222211111111110000000000
8705 10987654321098765432109876543210
8706 xxxxxxxxxx11110xxxxxx1xx0111101x
8707 cmge. */
8708 return 553;
8710 else
8712 if (((word >> 23) & 0x1) == 0)
8714 /* 33222222222211111111110000000000
8715 10987654321098765432109876543210
8716 xxxxxxxxxx11111xxxxxx1x00111101x
8717 frecps. */
8718 return 548;
8720 else
8722 /* 33222222222211111111110000000000
8723 10987654321098765432109876543210
8724 xxxxxxxxxx11111xxxxxx1x10111101x
8725 frsqrts. */
8726 return 550;
8733 else
8735 if (((word >> 12) & 0x1) == 0)
8737 if (((word >> 13) & 0x1) == 0)
8739 if (((word >> 14) & 0x1) == 0)
8741 if (((word >> 15) & 0x1) == 0)
8743 /* 33222222222211111111110000000000
8744 10987654321098765432109876543210
8745 xxxxxxxxxx110000xxxxx1xx011111xx
8746 uqadd. */
8747 return 558;
8749 else
8751 /* 33222222222211111111110000000000
8752 10987654321098765432109876543210
8753 xxxxxxxxxx110001xxxxx1xx011111xx
8754 cmeq. */
8755 return 578;
8758 else
8760 /* 33222222222211111111110000000000
8761 10987654321098765432109876543210
8762 xxxxxxxxxx11001xxxxxx1xx011111xx
8763 uqshl. */
8764 return 560;
8767 else
8769 if (((word >> 14) & 0x1) == 0)
8771 /* 33222222222211111111110000000000
8772 10987654321098765432109876543210
8773 xxxxxxxxxx11010xxxxxx1xx011111xx
8774 uqsub. */
8775 return 559;
8777 else
8779 if (((word >> 23) & 0x1) == 0)
8781 /* 33222222222211111111110000000000
8782 10987654321098765432109876543210
8783 xxxxxxxxxx11011xxxxxx1x0011111xx
8784 facge. */
8785 return 565;
8787 else
8789 /* 33222222222211111111110000000000
8790 10987654321098765432109876543210
8791 xxxxxxxxxx11011xxxxxx1x1011111xx
8792 facgt. */
8793 return 571;
8798 else
8800 if (((word >> 13) & 0x1) == 0)
8802 /* 33222222222211111111110000000000
8803 10987654321098765432109876543210
8804 xxxxxxxxxx1110xxxxxxx1xx011111xx
8805 uqrshl. */
8806 return 561;
8808 else
8810 /* 33222222222211111111110000000000
8811 10987654321098765432109876543210
8812 xxxxxxxxxx1111xxxxxxx1xx011111xx
8813 cmhs. */
8814 return 574;
8823 else
8825 if (((word >> 15) & 0x1) == 0)
8827 if (((word >> 28) & 0x1) == 0)
8829 if (((word >> 10) & 0x1) == 0)
8831 if (((word >> 12) & 0x1) == 0)
8833 if (((word >> 13) & 0x1) == 0)
8835 if (((word >> 14) & 0x1) == 0)
8837 /* 33222222222211111111110000000000
8838 10987654321098765432109876543210
8839 xxxxxxxxxx0x0000xxxxxxxx11110xxx
8840 mla. */
8841 return 117;
8843 else
8845 /* 33222222222211111111110000000000
8846 10987654321098765432109876543210
8847 xxxxxxxxxx0x0010xxxxxxxx11110xxx
8848 mls. */
8849 return 120;
8852 else
8854 if (((word >> 14) & 0x1) == 0)
8856 if (((word >> 29) & 0x1) == 0)
8858 if (((word >> 30) & 0x1) == 0)
8860 /* 33222222222211111111110000000000
8861 10987654321098765432109876543210
8862 xxxxxxxxxx0x0100xxxxxxxx1111000x
8863 smlal. */
8864 return 96;
8866 else
8868 /* 33222222222211111111110000000000
8869 10987654321098765432109876543210
8870 xxxxxxxxxx0x0100xxxxxxxx1111001x
8871 smlal2. */
8872 return 97;
8875 else
8877 if (((word >> 30) & 0x1) == 0)
8879 /* 33222222222211111111110000000000
8880 10987654321098765432109876543210
8881 xxxxxxxxxx0x0100xxxxxxxx1111010x
8882 umlal. */
8883 return 118;
8885 else
8887 /* 33222222222211111111110000000000
8888 10987654321098765432109876543210
8889 xxxxxxxxxx0x0100xxxxxxxx1111011x
8890 umlal2. */
8891 return 119;
8895 else
8897 if (((word >> 29) & 0x1) == 0)
8899 if (((word >> 30) & 0x1) == 0)
8901 /* 33222222222211111111110000000000
8902 10987654321098765432109876543210
8903 xxxxxxxxxx0x0110xxxxxxxx1111000x
8904 smlsl. */
8905 return 100;
8907 else
8909 /* 33222222222211111111110000000000
8910 10987654321098765432109876543210
8911 xxxxxxxxxx0x0110xxxxxxxx1111001x
8912 smlsl2. */
8913 return 101;
8916 else
8918 if (((word >> 30) & 0x1) == 0)
8920 /* 33222222222211111111110000000000
8921 10987654321098765432109876543210
8922 xxxxxxxxxx0x0110xxxxxxxx1111010x
8923 umlsl. */
8924 return 121;
8926 else
8928 /* 33222222222211111111110000000000
8929 10987654321098765432109876543210
8930 xxxxxxxxxx0x0110xxxxxxxx1111011x
8931 umlsl2. */
8932 return 122;
8938 else
8940 if (((word >> 13) & 0x1) == 0)
8942 if (((word >> 14) & 0x1) == 0)
8944 if (((word >> 23) & 0x1) == 0)
8946 /* 33222222222211111111110000000000
8947 10987654321098765432109876543210
8948 xxxxxxxxxx0x1000xxxxxxx011110xxx
8949 fmla. */
8950 return 112;
8952 else
8954 /* 33222222222211111111110000000000
8955 10987654321098765432109876543210
8956 xxxxxxxxxx0x1000xxxxxxx111110xxx
8957 fmla. */
8958 return 111;
8961 else
8963 if (((word >> 23) & 0x1) == 0)
8965 /* 33222222222211111111110000000000
8966 10987654321098765432109876543210
8967 xxxxxxxxxx0x1010xxxxxxx011110xxx
8968 fmls. */
8969 return 114;
8971 else
8973 /* 33222222222211111111110000000000
8974 10987654321098765432109876543210
8975 xxxxxxxxxx0x1010xxxxxxx111110xxx
8976 fmls. */
8977 return 113;
8981 else
8983 if (((word >> 14) & 0x1) == 0)
8985 if (((word >> 30) & 0x1) == 0)
8987 /* 33222222222211111111110000000000
8988 10987654321098765432109876543210
8989 xxxxxxxxxx0x1100xxxxxxxx11110x0x
8990 sqdmlal. */
8991 return 98;
8993 else
8995 /* 33222222222211111111110000000000
8996 10987654321098765432109876543210
8997 xxxxxxxxxx0x1100xxxxxxxx11110x1x
8998 sqdmlal2. */
8999 return 99;
9002 else
9004 if (((word >> 30) & 0x1) == 0)
9006 /* 33222222222211111111110000000000
9007 10987654321098765432109876543210
9008 xxxxxxxxxx0x1110xxxxxxxx11110x0x
9009 sqdmlsl. */
9010 return 102;
9012 else
9014 /* 33222222222211111111110000000000
9015 10987654321098765432109876543210
9016 xxxxxxxxxx0x1110xxxxxxxx11110x1x
9017 sqdmlsl2. */
9018 return 103;
9024 else
9026 if (((word >> 12) & 0x1) == 0)
9028 if (((word >> 29) & 0x1) == 0)
9030 /* 33222222222211111111110000000000
9031 10987654321098765432109876543210
9032 xxxxxxxxxx1x0xx0xxxxxxxx111100xx
9033 movi. */
9034 return 130;
9036 else
9038 /* 33222222222211111111110000000000
9039 10987654321098765432109876543210
9040 xxxxxxxxxx1x0xx0xxxxxxxx111101xx
9041 mvni. */
9042 return 138;
9045 else
9047 if (((word >> 29) & 0x1) == 0)
9049 /* 33222222222211111111110000000000
9050 10987654321098765432109876543210
9051 xxxxxxxxxx1x1xx0xxxxxxxx111100xx
9052 orr. */
9053 return 131;
9055 else
9057 /* 33222222222211111111110000000000
9058 10987654321098765432109876543210
9059 xxxxxxxxxx1x1xx0xxxxxxxx111101xx
9060 bic. */
9061 return 139;
9066 else
9068 if (((word >> 29) & 0x1) == 0)
9070 if (((word >> 30) & 0x1) == 0)
9072 if (((word >> 21) & 0x1) == 0)
9074 /* 33222222222211111111110000000000
9075 10987654321098765432109876543210
9076 xxxxxxxxxxxxxxx0xxxxx0xx1111100x
9077 fmadd. */
9078 return 805;
9080 else
9082 /* 33222222222211111111110000000000
9083 10987654321098765432109876543210
9084 xxxxxxxxxxxxxxx0xxxxx1xx1111100x
9085 fnmadd. */
9086 return 809;
9089 else
9091 if (((word >> 10) & 0x1) == 0)
9093 if (((word >> 13) & 0x1) == 0)
9095 if (((word >> 14) & 0x1) == 0)
9097 if (((word >> 23) & 0x1) == 0)
9099 /* 33222222222211111111110000000000
9100 10987654321098765432109876543210
9101 xxxxxxxxxx0xx000xxxxxxx01111101x
9102 fmla. */
9103 return 422;
9105 else
9107 /* 33222222222211111111110000000000
9108 10987654321098765432109876543210
9109 xxxxxxxxxx0xx000xxxxxxx11111101x
9110 fmla. */
9111 return 421;
9114 else
9116 if (((word >> 23) & 0x1) == 0)
9118 /* 33222222222211111111110000000000
9119 10987654321098765432109876543210
9120 xxxxxxxxxx0xx010xxxxxxx01111101x
9121 fmls. */
9122 return 424;
9124 else
9126 /* 33222222222211111111110000000000
9127 10987654321098765432109876543210
9128 xxxxxxxxxx0xx010xxxxxxx11111101x
9129 fmls. */
9130 return 423;
9134 else
9136 if (((word >> 14) & 0x1) == 0)
9138 /* 33222222222211111111110000000000
9139 10987654321098765432109876543210
9140 xxxxxxxxxx0xx100xxxxxxxx1111101x
9141 sqdmlal. */
9142 return 416;
9144 else
9146 /* 33222222222211111111110000000000
9147 10987654321098765432109876543210
9148 xxxxxxxxxx0xx110xxxxxxxx1111101x
9149 sqdmlsl. */
9150 return 417;
9154 else
9156 if (((word >> 12) & 0x1) == 0)
9158 if (((word >> 13) & 0x1) == 0)
9160 /* 33222222222211111111110000000000
9161 10987654321098765432109876543210
9162 xxxxxxxxxx1x00x0xxxxxxxx1111101x
9163 sshr. */
9164 return 581;
9166 else
9168 /* 33222222222211111111110000000000
9169 10987654321098765432109876543210
9170 xxxxxxxxxx1x01x0xxxxxxxx1111101x
9171 srshr. */
9172 return 583;
9175 else
9177 if (((word >> 13) & 0x1) == 0)
9179 if (((word >> 14) & 0x1) == 0)
9181 /* 33222222222211111111110000000000
9182 10987654321098765432109876543210
9183 xxxxxxxxxx1x1000xxxxxxxx1111101x
9184 ssra. */
9185 return 582;
9187 else
9189 /* 33222222222211111111110000000000
9190 10987654321098765432109876543210
9191 xxxxxxxxxx1x1010xxxxxxxx1111101x
9192 shl. */
9193 return 585;
9196 else
9198 if (((word >> 14) & 0x1) == 0)
9200 /* 33222222222211111111110000000000
9201 10987654321098765432109876543210
9202 xxxxxxxxxx1x1100xxxxxxxx1111101x
9203 srsra. */
9204 return 584;
9206 else
9208 /* 33222222222211111111110000000000
9209 10987654321098765432109876543210
9210 xxxxxxxxxx1x1110xxxxxxxx1111101x
9211 sqshl. */
9212 return 586;
9219 else
9221 if (((word >> 12) & 0x1) == 0)
9223 if (((word >> 13) & 0x1) == 0)
9225 if (((word >> 14) & 0x1) == 0)
9227 /* 33222222222211111111110000000000
9228 10987654321098765432109876543210
9229 xxxxxxxxxxxx0000xxxxxxxx111111xx
9230 ushr. */
9231 return 593;
9233 else
9235 /* 33222222222211111111110000000000
9236 10987654321098765432109876543210
9237 xxxxxxxxxxxx0010xxxxxxxx111111xx
9238 sri. */
9239 return 597;
9242 else
9244 if (((word >> 14) & 0x1) == 0)
9246 /* 33222222222211111111110000000000
9247 10987654321098765432109876543210
9248 xxxxxxxxxxxx0100xxxxxxxx111111xx
9249 urshr. */
9250 return 595;
9252 else
9254 /* 33222222222211111111110000000000
9255 10987654321098765432109876543210
9256 xxxxxxxxxxxx0110xxxxxxxx111111xx
9257 sqshlu. */
9258 return 599;
9262 else
9264 if (((word >> 13) & 0x1) == 0)
9266 if (((word >> 14) & 0x1) == 0)
9268 /* 33222222222211111111110000000000
9269 10987654321098765432109876543210
9270 xxxxxxxxxxxx1000xxxxxxxx111111xx
9271 usra. */
9272 return 594;
9274 else
9276 /* 33222222222211111111110000000000
9277 10987654321098765432109876543210
9278 xxxxxxxxxxxx1010xxxxxxxx111111xx
9279 sli. */
9280 return 598;
9283 else
9285 if (((word >> 14) & 0x1) == 0)
9287 /* 33222222222211111111110000000000
9288 10987654321098765432109876543210
9289 xxxxxxxxxxxx1100xxxxxxxx111111xx
9290 ursra. */
9291 return 596;
9293 else
9295 /* 33222222222211111111110000000000
9296 10987654321098765432109876543210
9297 xxxxxxxxxxxx1110xxxxxxxx111111xx
9298 uqshl. */
9299 return 600;
9306 else
9308 if (((word >> 28) & 0x1) == 0)
9310 if (((word >> 10) & 0x1) == 0)
9312 if (((word >> 12) & 0x1) == 0)
9314 if (((word >> 13) & 0x1) == 0)
9316 if (((word >> 14) & 0x1) == 0)
9318 /* 33222222222211111111110000000000
9319 10987654321098765432109876543210
9320 xxxxxxxxxx0x0001xxxxxxxx11110xxx
9321 mul. */
9322 return 104;
9324 else
9326 /* 33222222222211111111110000000000
9327 10987654321098765432109876543210
9328 xxxxxxxxxx0x0011xxxxxxxx11110xxx
9329 sqdmulh. */
9330 return 109;
9333 else
9335 if (((word >> 29) & 0x1) == 0)
9337 if (((word >> 30) & 0x1) == 0)
9339 /* 33222222222211111111110000000000
9340 10987654321098765432109876543210
9341 xxxxxxxxxx0x01x1xxxxxxxx1111000x
9342 smull. */
9343 return 105;
9345 else
9347 /* 33222222222211111111110000000000
9348 10987654321098765432109876543210
9349 xxxxxxxxxx0x01x1xxxxxxxx1111001x
9350 smull2. */
9351 return 106;
9354 else
9356 if (((word >> 30) & 0x1) == 0)
9358 /* 33222222222211111111110000000000
9359 10987654321098765432109876543210
9360 xxxxxxxxxx0x01x1xxxxxxxx1111010x
9361 umull. */
9362 return 123;
9364 else
9366 /* 33222222222211111111110000000000
9367 10987654321098765432109876543210
9368 xxxxxxxxxx0x01x1xxxxxxxx1111011x
9369 umull2. */
9370 return 124;
9375 else
9377 if (((word >> 13) & 0x1) == 0)
9379 if (((word >> 14) & 0x1) == 0)
9381 if (((word >> 23) & 0x1) == 0)
9383 if (((word >> 29) & 0x1) == 0)
9385 /* 33222222222211111111110000000000
9386 10987654321098765432109876543210
9387 xxxxxxxxxx0x1001xxxxxxx0111100xx
9388 fmul. */
9389 return 116;
9391 else
9393 /* 33222222222211111111110000000000
9394 10987654321098765432109876543210
9395 xxxxxxxxxx0x1001xxxxxxx0111101xx
9396 fmulx. */
9397 return 126;
9400 else
9402 if (((word >> 29) & 0x1) == 0)
9404 /* 33222222222211111111110000000000
9405 10987654321098765432109876543210
9406 xxxxxxxxxx0x1001xxxxxxx1111100xx
9407 fmul. */
9408 return 115;
9410 else
9412 /* 33222222222211111111110000000000
9413 10987654321098765432109876543210
9414 xxxxxxxxxx0x1001xxxxxxx1111101xx
9415 fmulx. */
9416 return 125;
9420 else
9422 if (((word >> 29) & 0x1) == 0)
9424 /* 33222222222211111111110000000000
9425 10987654321098765432109876543210
9426 xxxxxxxxxx0x1011xxxxxxxx111100xx
9427 sqrdmulh. */
9428 return 110;
9430 else
9432 /* 33222222222211111111110000000000
9433 10987654321098765432109876543210
9434 xxxxxxxxxx0x1011xxxxxxxx111101xx
9435 sqrdmlah. */
9436 return 127;
9440 else
9442 if (((word >> 14) & 0x1) == 0)
9444 if (((word >> 30) & 0x1) == 0)
9446 /* 33222222222211111111110000000000
9447 10987654321098765432109876543210
9448 xxxxxxxxxx0x1101xxxxxxxx11110x0x
9449 sqdmull. */
9450 return 107;
9452 else
9454 /* 33222222222211111111110000000000
9455 10987654321098765432109876543210
9456 xxxxxxxxxx0x1101xxxxxxxx11110x1x
9457 sqdmull2. */
9458 return 108;
9461 else
9463 /* 33222222222211111111110000000000
9464 10987654321098765432109876543210
9465 xxxxxxxxxx0x1111xxxxxxxx11110xxx
9466 sqrdmlsh. */
9467 return 128;
9472 else
9474 if (((word >> 11) & 0x1) == 0)
9476 if (((word >> 14) & 0x1) == 0)
9478 if (((word >> 12) & 0x1) == 0)
9480 if (((word >> 29) & 0x1) == 0)
9482 /* 33222222222211111111110000000000
9483 10987654321098765432109876543210
9484 xxxxxxxxxx100x01xxxxxxxx111100xx
9485 movi. */
9486 return 132;
9488 else
9490 /* 33222222222211111111110000000000
9491 10987654321098765432109876543210
9492 xxxxxxxxxx100x01xxxxxxxx111101xx
9493 mvni. */
9494 return 140;
9497 else
9499 if (((word >> 29) & 0x1) == 0)
9501 /* 33222222222211111111110000000000
9502 10987654321098765432109876543210
9503 xxxxxxxxxx101x01xxxxxxxx111100xx
9504 orr. */
9505 return 133;
9507 else
9509 /* 33222222222211111111110000000000
9510 10987654321098765432109876543210
9511 xxxxxxxxxx101x01xxxxxxxx111101xx
9512 bic. */
9513 return 141;
9517 else
9519 if (((word >> 13) & 0x1) == 0)
9521 if (((word >> 29) & 0x1) == 0)
9523 /* 33222222222211111111110000000000
9524 10987654321098765432109876543210
9525 xxxxxxxxxx10x011xxxxxxxx111100xx
9526 movi. */
9527 return 134;
9529 else
9531 /* 33222222222211111111110000000000
9532 10987654321098765432109876543210
9533 xxxxxxxxxx10x011xxxxxxxx111101xx
9534 mvni. */
9535 return 142;
9538 else
9540 if (((word >> 12) & 0x1) == 0)
9542 if (((word >> 29) & 0x1) == 0)
9544 /* 33222222222211111111110000000000
9545 10987654321098765432109876543210
9546 xxxxxxxxxx100111xxxxxxxx111100xx
9547 movi. */
9548 return 135;
9550 else
9552 /* 33222222222211111111110000000000
9553 10987654321098765432109876543210
9554 xxxxxxxxxx100111xxxxxxxx111101xx
9555 movi. */
9556 return 143;
9559 else
9561 if (((word >> 29) & 0x1) == 0)
9563 /* 33222222222211111111110000000000
9564 10987654321098765432109876543210
9565 xxxxxxxxxx101111xxxxxxxx111100xx
9566 fmov. */
9567 return 136;
9569 else
9571 /* 33222222222211111111110000000000
9572 10987654321098765432109876543210
9573 xxxxxxxxxx101111xxxxxxxx111101xx
9574 fmov. */
9575 return 145;
9581 else
9583 if (((word >> 12) & 0x1) == 0)
9585 if (((word >> 29) & 0x1) == 0)
9587 if (((word >> 30) & 0x1) == 0)
9589 /* 33222222222211111111110000000000
9590 10987654321098765432109876543210
9591 xxxxxxxxxx110xx1xxxxxxxx1111000x
9592 rshrn. */
9593 return 373;
9595 else
9597 /* 33222222222211111111110000000000
9598 10987654321098765432109876543210
9599 xxxxxxxxxx110xx1xxxxxxxx1111001x
9600 rshrn2. */
9601 return 374;
9604 else
9606 if (((word >> 30) & 0x1) == 0)
9608 /* 33222222222211111111110000000000
9609 10987654321098765432109876543210
9610 xxxxxxxxxx110xx1xxxxxxxx1111010x
9611 sqrshrun. */
9612 return 397;
9614 else
9616 /* 33222222222211111111110000000000
9617 10987654321098765432109876543210
9618 xxxxxxxxxx110xx1xxxxxxxx1111011x
9619 sqrshrun2. */
9620 return 398;
9624 else
9626 if (((word >> 13) & 0x1) == 0)
9628 if (((word >> 29) & 0x1) == 0)
9630 if (((word >> 30) & 0x1) == 0)
9632 /* 33222222222211111111110000000000
9633 10987654321098765432109876543210
9634 xxxxxxxxxx1110x1xxxxxxxx1111000x
9635 sqrshrn. */
9636 return 377;
9638 else
9640 /* 33222222222211111111110000000000
9641 10987654321098765432109876543210
9642 xxxxxxxxxx1110x1xxxxxxxx1111001x
9643 sqrshrn2. */
9644 return 378;
9647 else
9649 if (((word >> 30) & 0x1) == 0)
9651 /* 33222222222211111111110000000000
9652 10987654321098765432109876543210
9653 xxxxxxxxxx1110x1xxxxxxxx1111010x
9654 uqrshrn. */
9655 return 401;
9657 else
9659 /* 33222222222211111111110000000000
9660 10987654321098765432109876543210
9661 xxxxxxxxxx1110x1xxxxxxxx1111011x
9662 uqrshrn2. */
9663 return 402;
9667 else
9669 if (((word >> 29) & 0x1) == 0)
9671 /* 33222222222211111111110000000000
9672 10987654321098765432109876543210
9673 xxxxxxxxxx1111x1xxxxxxxx111100xx
9674 fmov. */
9675 return 137;
9677 else
9679 /* 33222222222211111111110000000000
9680 10987654321098765432109876543210
9681 xxxxxxxxxx1111x1xxxxxxxx111101xx
9682 fcvtzu. */
9683 return 409;
9690 else
9692 if (((word >> 29) & 0x1) == 0)
9694 if (((word >> 30) & 0x1) == 0)
9696 if (((word >> 21) & 0x1) == 0)
9698 /* 33222222222211111111110000000000
9699 10987654321098765432109876543210
9700 xxxxxxxxxxxxxxx1xxxxx0xx1111100x
9701 fmsub. */
9702 return 807;
9704 else
9706 /* 33222222222211111111110000000000
9707 10987654321098765432109876543210
9708 xxxxxxxxxxxxxxx1xxxxx1xx1111100x
9709 fnmsub. */
9710 return 811;
9713 else
9715 if (((word >> 10) & 0x1) == 0)
9717 if (((word >> 12) & 0x1) == 0)
9719 /* 33222222222211111111110000000000
9720 10987654321098765432109876543210
9721 xxxxxxxxxx0x0xx1xxxxxxxx1111101x
9722 sqdmulh. */
9723 return 419;
9725 else
9727 if (((word >> 13) & 0x1) == 0)
9729 if (((word >> 14) & 0x1) == 0)
9731 if (((word >> 23) & 0x1) == 0)
9733 /* 33222222222211111111110000000000
9734 10987654321098765432109876543210
9735 xxxxxxxxxx0x1001xxxxxxx01111101x
9736 fmul. */
9737 return 426;
9739 else
9741 /* 33222222222211111111110000000000
9742 10987654321098765432109876543210
9743 xxxxxxxxxx0x1001xxxxxxx11111101x
9744 fmul. */
9745 return 425;
9748 else
9750 /* 33222222222211111111110000000000
9751 10987654321098765432109876543210
9752 xxxxxxxxxx0x1011xxxxxxxx1111101x
9753 sqrdmulh. */
9754 return 420;
9757 else
9759 /* 33222222222211111111110000000000
9760 10987654321098765432109876543210
9761 xxxxxxxxxx0x11x1xxxxxxxx1111101x
9762 sqdmull. */
9763 return 418;
9767 else
9769 if (((word >> 11) & 0x1) == 0)
9771 if (((word >> 12) & 0x1) == 0)
9773 /* 33222222222211111111110000000000
9774 10987654321098765432109876543210
9775 xxxxxxxxxx100xx1xxxxxxxx1111101x
9776 scvtf. */
9777 return 589;
9779 else
9781 /* 33222222222211111111110000000000
9782 10987654321098765432109876543210
9783 xxxxxxxxxx101xx1xxxxxxxx1111101x
9784 sqshrn. */
9785 return 587;
9788 else
9790 if (((word >> 13) & 0x1) == 0)
9792 /* 33222222222211111111110000000000
9793 10987654321098765432109876543210
9794 xxxxxxxxxx11x0x1xxxxxxxx1111101x
9795 sqrshrn. */
9796 return 588;
9798 else
9800 /* 33222222222211111111110000000000
9801 10987654321098765432109876543210
9802 xxxxxxxxxx11x1x1xxxxxxxx1111101x
9803 fcvtzs. */
9804 return 591;
9810 else
9812 if (((word >> 10) & 0x1) == 0)
9814 if (((word >> 13) & 0x1) == 0)
9816 if (((word >> 14) & 0x1) == 0)
9818 if (((word >> 23) & 0x1) == 0)
9820 /* 33222222222211111111110000000000
9821 10987654321098765432109876543210
9822 xxxxxxxxxx0xx001xxxxxxx0111111xx
9823 fmulx. */
9824 return 428;
9826 else
9828 /* 33222222222211111111110000000000
9829 10987654321098765432109876543210
9830 xxxxxxxxxx0xx001xxxxxxx1111111xx
9831 fmulx. */
9832 return 427;
9835 else
9837 /* 33222222222211111111110000000000
9838 10987654321098765432109876543210
9839 xxxxxxxxxx0xx011xxxxxxxx111111xx
9840 sqrdmlah. */
9841 return 429;
9844 else
9846 /* 33222222222211111111110000000000
9847 10987654321098765432109876543210
9848 xxxxxxxxxx0xx1x1xxxxxxxx111111xx
9849 sqrdmlsh. */
9850 return 430;
9853 else
9855 if (((word >> 11) & 0x1) == 0)
9857 if (((word >> 12) & 0x1) == 0)
9859 if (((word >> 13) & 0x1) == 0)
9861 /* 33222222222211111111110000000000
9862 10987654321098765432109876543210
9863 xxxxxxxxxx1000x1xxxxxxxx111111xx
9864 sqshrun. */
9865 return 601;
9867 else
9869 /* 33222222222211111111110000000000
9870 10987654321098765432109876543210
9871 xxxxxxxxxx1001x1xxxxxxxx111111xx
9872 ucvtf. */
9873 return 605;
9876 else
9878 /* 33222222222211111111110000000000
9879 10987654321098765432109876543210
9880 xxxxxxxxxx101xx1xxxxxxxx111111xx
9881 uqshrn. */
9882 return 603;
9885 else
9887 if (((word >> 12) & 0x1) == 0)
9889 /* 33222222222211111111110000000000
9890 10987654321098765432109876543210
9891 xxxxxxxxxx110xx1xxxxxxxx111111xx
9892 sqrshrun. */
9893 return 602;
9895 else
9897 if (((word >> 13) & 0x1) == 0)
9899 /* 33222222222211111111110000000000
9900 10987654321098765432109876543210
9901 xxxxxxxxxx1110x1xxxxxxxx111111xx
9902 uqrshrn. */
9903 return 604;
9905 else
9907 /* 33222222222211111111110000000000
9908 10987654321098765432109876543210
9909 xxxxxxxxxx1111x1xxxxxxxx111111xx
9910 fcvtzu. */
9911 return 607;
9925 /* Lookup opcode WORD in the opcode table. N.B. all alias
9926 opcodes are ignored here. */
9928 const aarch64_opcode *
9929 aarch64_opcode_lookup (uint32_t word)
9931 return aarch64_opcode_table + aarch64_opcode_lookup_1 (word);
9934 const aarch64_opcode *
9935 aarch64_find_next_opcode (const aarch64_opcode *opcode)
9937 /* Use the index as the key to locate the next opcode. */
9938 int key = opcode - aarch64_opcode_table;
9939 int value;
9940 switch (key)
9942 case 901: value = 905; break; /* stnp --> stp. */
9943 case 905: return NULL; /* stp --> NULL. */
9944 case 899: value = 900; break; /* stllrb --> stllrh. */
9945 case 900: return NULL; /* stllrh --> NULL. */
9946 case 902: value = 906; break; /* ldnp --> ldp. */
9947 case 906: return NULL; /* ldp --> NULL. */
9948 case 1117: value = 1118; break; /* msr --> hint. */
9949 case 1118: value = 1127; break; /* hint --> clrex. */
9950 case 1127: value = 1128; break; /* clrex --> dsb. */
9951 case 1128: value = 1129; break; /* dsb --> dmb. */
9952 case 1129: value = 1130; break; /* dmb --> isb. */
9953 case 1130: value = 1131; break; /* isb --> sys. */
9954 case 1131: value = 1136; break; /* sys --> msr. */
9955 case 1136: return NULL; /* msr --> NULL. */
9956 case 1137: value = 1138; break; /* sysl --> mrs. */
9957 case 1138: return NULL; /* mrs --> NULL. */
9958 case 431: value = 432; break; /* st4 --> st1. */
9959 case 432: value = 433; break; /* st1 --> st2. */
9960 case 433: value = 434; break; /* st2 --> st3. */
9961 case 434: return NULL; /* st3 --> NULL. */
9962 case 439: value = 440; break; /* st4 --> st1. */
9963 case 440: value = 441; break; /* st1 --> st2. */
9964 case 441: value = 442; break; /* st2 --> st3. */
9965 case 442: return NULL; /* st3 --> NULL. */
9966 case 435: value = 436; break; /* ld4 --> ld1. */
9967 case 436: value = 437; break; /* ld1 --> ld2. */
9968 case 437: value = 438; break; /* ld2 --> ld3. */
9969 case 438: return NULL; /* ld3 --> NULL. */
9970 case 451: value = 453; break; /* ld1 --> ld1r. */
9971 case 453: return NULL; /* ld1r --> NULL. */
9972 case 455: value = 457; break; /* ld2 --> ld2r. */
9973 case 457: return NULL; /* ld2r --> NULL. */
9974 case 452: value = 454; break; /* ld3 --> ld3r. */
9975 case 454: return NULL; /* ld3r --> NULL. */
9976 case 456: value = 458; break; /* ld4 --> ld4r. */
9977 case 458: return NULL; /* ld4r --> NULL. */
9978 case 443: value = 444; break; /* ld4 --> ld1. */
9979 case 444: value = 445; break; /* ld1 --> ld2. */
9980 case 445: value = 446; break; /* ld2 --> ld3. */
9981 case 446: return NULL; /* ld3 --> NULL. */
9982 case 463: value = 465; break; /* ld1 --> ld1r. */
9983 case 465: return NULL; /* ld1r --> NULL. */
9984 case 464: value = 466; break; /* ld3 --> ld3r. */
9985 case 466: return NULL; /* ld3r --> NULL. */
9986 case 467: value = 469; break; /* ld2 --> ld2r. */
9987 case 469: return NULL; /* ld2r --> NULL. */
9988 case 468: value = 470; break; /* ld4 --> ld4r. */
9989 case 470: return NULL; /* ld4r --> NULL. */
9990 case 718: value = 719; break; /* fcvtzs --> fcvtzs. */
9991 case 719: return NULL; /* fcvtzs --> NULL. */
9992 case 714: value = 715; break; /* scvtf --> scvtf. */
9993 case 715: return NULL; /* scvtf --> NULL. */
9994 case 720: value = 721; break; /* fcvtzu --> fcvtzu. */
9995 case 721: return NULL; /* fcvtzu --> NULL. */
9996 case 716: value = 717; break; /* ucvtf --> ucvtf. */
9997 case 717: return NULL; /* ucvtf --> NULL. */
9998 case 722: value = 723; break; /* fcvtns --> fcvtns. */
9999 case 723: return NULL; /* fcvtns --> NULL. */
10000 case 742: value = 743; break; /* fcvtms --> fcvtms. */
10001 case 743: return NULL; /* fcvtms --> NULL. */
10002 case 738: value = 739; break; /* fcvtps --> fcvtps. */
10003 case 739: return NULL; /* fcvtps --> NULL. */
10004 case 746: value = 747; break; /* fcvtzs --> fcvtzs. */
10005 case 747: return NULL; /* fcvtzs --> NULL. */
10006 case 730: value = 731; break; /* fcvtas --> fcvtas. */
10007 case 731: return NULL; /* fcvtas --> NULL. */
10008 case 726: value = 727; break; /* scvtf --> scvtf. */
10009 case 727: return NULL; /* scvtf --> NULL. */
10010 case 734: value = 735; break; /* fmov --> fmov. */
10011 case 735: return NULL; /* fmov --> NULL. */
10012 case 724: value = 725; break; /* fcvtnu --> fcvtnu. */
10013 case 725: return NULL; /* fcvtnu --> NULL. */
10014 case 744: value = 745; break; /* fcvtmu --> fcvtmu. */
10015 case 745: return NULL; /* fcvtmu --> NULL. */
10016 case 740: value = 741; break; /* fcvtpu --> fcvtpu. */
10017 case 741: return NULL; /* fcvtpu --> NULL. */
10018 case 748: value = 749; break; /* fcvtzu --> fcvtzu. */
10019 case 749: return NULL; /* fcvtzu --> NULL. */
10020 case 732: value = 733; break; /* fcvtau --> fcvtau. */
10021 case 733: return NULL; /* fcvtau --> NULL. */
10022 case 728: value = 729; break; /* ucvtf --> ucvtf. */
10023 case 729: return NULL; /* ucvtf --> NULL. */
10024 case 736: value = 737; break; /* fmov --> fmov. */
10025 case 737: return NULL; /* fmov --> NULL. */
10026 case 764: value = 765; break; /* fmov --> fmov. */
10027 case 765: return NULL; /* fmov --> NULL. */
10028 case 773: value = 774; break; /* frintn --> frintn. */
10029 case 774: return NULL; /* frintn --> NULL. */
10030 case 768: value = 769; break; /* fneg --> fneg. */
10031 case 769: return NULL; /* fneg --> NULL. */
10032 case 777: value = 778; break; /* frintm --> frintm. */
10033 case 778: return NULL; /* frintm --> NULL. */
10034 case 766: value = 767; break; /* fabs --> fabs. */
10035 case 767: return NULL; /* fabs --> NULL. */
10036 case 775: value = 776; break; /* frintp --> frintp. */
10037 case 776: return NULL; /* frintp --> NULL. */
10038 case 770: value = 771; break; /* fsqrt --> fsqrt. */
10039 case 771: return NULL; /* fsqrt --> NULL. */
10040 case 779: value = 780; break; /* frintz --> frintz. */
10041 case 780: return NULL; /* frintz --> NULL. */
10042 case 781: value = 782; break; /* frinta --> frinta. */
10043 case 782: return NULL; /* frinta --> NULL. */
10044 case 783: value = 784; break; /* frintx --> frintx. */
10045 case 784: return NULL; /* frintx --> NULL. */
10046 case 785: value = 786; break; /* frinti --> frinti. */
10047 case 786: return NULL; /* frinti --> NULL. */
10048 case 756: value = 757; break; /* fcmp --> fcmp. */
10049 case 757: return NULL; /* fcmp --> NULL. */
10050 case 758: value = 759; break; /* fcmpe --> fcmpe. */
10051 case 759: return NULL; /* fcmpe --> NULL. */
10052 case 760: value = 761; break; /* fcmp --> fcmp. */
10053 case 761: return NULL; /* fcmp --> NULL. */
10054 case 762: value = 763; break; /* fcmpe --> fcmpe. */
10055 case 763: return NULL; /* fcmpe --> NULL. */
10056 case 813: value = 814; break; /* fmov --> fmov. */
10057 case 814: return NULL; /* fmov --> NULL. */
10058 case 787: value = 788; break; /* fmul --> fmul. */
10059 case 788: return NULL; /* fmul --> NULL. */
10060 case 803: value = 804; break; /* fnmul --> fnmul. */
10061 case 804: return NULL; /* fnmul --> NULL. */
10062 case 795: value = 796; break; /* fmax --> fmax. */
10063 case 796: return NULL; /* fmax --> NULL. */
10064 case 791: value = 792; break; /* fadd --> fadd. */
10065 case 792: return NULL; /* fadd --> NULL. */
10066 case 799: value = 800; break; /* fmaxnm --> fmaxnm. */
10067 case 800: return NULL; /* fmaxnm --> NULL. */
10068 case 789: value = 790; break; /* fdiv --> fdiv. */
10069 case 790: return NULL; /* fdiv --> NULL. */
10070 case 797: value = 798; break; /* fmin --> fmin. */
10071 case 798: return NULL; /* fmin --> NULL. */
10072 case 793: value = 794; break; /* fsub --> fsub. */
10073 case 794: return NULL; /* fsub --> NULL. */
10074 case 801: value = 802; break; /* fminnm --> fminnm. */
10075 case 802: return NULL; /* fminnm --> NULL. */
10076 case 752: value = 753; break; /* fccmp --> fccmp. */
10077 case 753: return NULL; /* fccmp --> NULL. */
10078 case 754: value = 755; break; /* fccmpe --> fccmpe. */
10079 case 755: return NULL; /* fccmpe --> NULL. */
10080 case 815: value = 816; break; /* fcsel --> fcsel. */
10081 case 816: return NULL; /* fcsel --> NULL. */
10082 case 130: value = 365; break; /* movi --> sshr. */
10083 case 365: value = 367; break; /* sshr --> srshr. */
10084 case 367: return NULL; /* srshr --> NULL. */
10085 case 138: value = 387; break; /* mvni --> ushr. */
10086 case 387: value = 389; break; /* ushr --> urshr. */
10087 case 389: value = 391; break; /* urshr --> sri. */
10088 case 391: value = 393; break; /* sri --> sqshlu. */
10089 case 393: return NULL; /* sqshlu --> NULL. */
10090 case 131: value = 366; break; /* orr --> ssra. */
10091 case 366: value = 368; break; /* ssra --> srsra. */
10092 case 368: value = 369; break; /* srsra --> shl. */
10093 case 369: value = 370; break; /* shl --> sqshl. */
10094 case 370: return NULL; /* sqshl --> NULL. */
10095 case 139: value = 388; break; /* bic --> usra. */
10096 case 388: value = 390; break; /* usra --> ursra. */
10097 case 390: value = 392; break; /* ursra --> sli. */
10098 case 392: value = 394; break; /* sli --> uqshl. */
10099 case 394: return NULL; /* uqshl --> NULL. */
10100 case 805: value = 806; break; /* fmadd --> fmadd. */
10101 case 806: return NULL; /* fmadd --> NULL. */
10102 case 809: value = 810; break; /* fnmadd --> fnmadd. */
10103 case 810: return NULL; /* fnmadd --> NULL. */
10104 case 132: value = 371; break; /* movi --> shrn. */
10105 case 371: value = 372; break; /* shrn --> shrn2. */
10106 case 372: value = 379; break; /* shrn2 --> sshll. */
10107 case 379: value = 381; break; /* sshll --> sshll2. */
10108 case 381: return NULL; /* sshll2 --> NULL. */
10109 case 140: value = 395; break; /* mvni --> sqshrun. */
10110 case 395: value = 396; break; /* sqshrun --> sqshrun2. */
10111 case 396: value = 403; break; /* sqshrun2 --> ushll. */
10112 case 403: value = 405; break; /* ushll --> ushll2. */
10113 case 405: return NULL; /* ushll2 --> NULL. */
10114 case 133: value = 375; break; /* orr --> sqshrn. */
10115 case 375: value = 376; break; /* sqshrn --> sqshrn2. */
10116 case 376: return NULL; /* sqshrn2 --> NULL. */
10117 case 141: value = 399; break; /* bic --> uqshrn. */
10118 case 399: value = 400; break; /* uqshrn --> uqshrn2. */
10119 case 400: return NULL; /* uqshrn2 --> NULL. */
10120 case 135: value = 383; break; /* movi --> scvtf. */
10121 case 383: value = 384; break; /* scvtf --> scvtf. */
10122 case 384: return NULL; /* scvtf --> NULL. */
10123 case 143: value = 144; break; /* movi --> movi. */
10124 case 144: value = 407; break; /* movi --> ucvtf. */
10125 case 407: value = 408; break; /* ucvtf --> ucvtf. */
10126 case 408: return NULL; /* ucvtf --> NULL. */
10127 case 137: value = 385; break; /* fmov --> fcvtzs. */
10128 case 385: value = 386; break; /* fcvtzs --> fcvtzs. */
10129 case 386: return NULL; /* fcvtzs --> NULL. */
10130 case 409: value = 410; break; /* fcvtzu --> fcvtzu. */
10131 case 410: return NULL; /* fcvtzu --> NULL. */
10132 case 807: value = 808; break; /* fmsub --> fmsub. */
10133 case 808: return NULL; /* fmsub --> NULL. */
10134 case 811: value = 812; break; /* fnmsub --> fnmsub. */
10135 case 812: return NULL; /* fnmsub --> NULL. */
10136 case 589: value = 590; break; /* scvtf --> scvtf. */
10137 case 590: return NULL; /* scvtf --> NULL. */
10138 case 591: value = 592; break; /* fcvtzs --> fcvtzs. */
10139 case 592: return NULL; /* fcvtzs --> NULL. */
10140 case 605: value = 606; break; /* ucvtf --> ucvtf. */
10141 case 606: return NULL; /* ucvtf --> NULL. */
10142 case 607: value = 608; break; /* fcvtzu --> fcvtzu. */
10143 case 608: return NULL; /* fcvtzu --> NULL. */
10144 default: return NULL;
10147 return aarch64_opcode_table + value;
10150 const aarch64_opcode *
10151 aarch64_find_alias_opcode (const aarch64_opcode *opcode)
10153 /* Use the index as the key to locate the alias opcode. */
10154 int key = opcode - aarch64_opcode_table;
10155 int value;
10156 switch (key)
10158 case 2: value = 3; break; /* sbc --> ngc. */
10159 case 4: value = 5; break; /* sbcs --> ngcs. */
10160 case 7: value = 8; break; /* adds --> cmn. */
10161 case 10: value = 11; break; /* subs --> cmp. */
10162 case 12: value = 13; break; /* add --> mov. */
10163 case 14: value = 15; break; /* adds --> cmn. */
10164 case 17: value = 18; break; /* subs --> cmp. */
10165 case 20: value = 21; break; /* adds --> cmn. */
10166 case 22: value = 23; break; /* sub --> neg. */
10167 case 24: value = 26; break; /* subs --> negs. */
10168 case 149: value = 150; break; /* umov --> mov. */
10169 case 151: value = 152; break; /* ins --> mov. */
10170 case 153: value = 154; break; /* ins --> mov. */
10171 case 235: value = 236; break; /* not --> mvn. */
10172 case 310: value = 311; break; /* orr --> mov. */
10173 case 379: value = 380; break; /* sshll --> sxtl. */
10174 case 381: value = 382; break; /* sshll2 --> sxtl2. */
10175 case 403: value = 404; break; /* ushll --> uxtl. */
10176 case 405: value = 406; break; /* ushll2 --> uxtl2. */
10177 case 526: value = 527; break; /* dup --> mov. */
10178 case 609: value = 614; break; /* sbfm --> sxtw. */
10179 case 616: value = 618; break; /* bfm --> bfc. */
10180 case 620: value = 624; break; /* ubfm --> uxth. */
10181 case 642: value = 644; break; /* csinc --> cset. */
10182 case 645: value = 647; break; /* csinv --> csetm. */
10183 case 648: value = 649; break; /* csneg --> cneg. */
10184 case 667: value = 667; break; /* rev --> rev. */
10185 case 674: value = 675; break; /* lslv --> lsl. */
10186 case 676: value = 677; break; /* lsrv --> lsr. */
10187 case 678: value = 679; break; /* asrv --> asr. */
10188 case 680: value = 681; break; /* rorv --> ror. */
10189 case 690: value = 691; break; /* madd --> mul. */
10190 case 692: value = 693; break; /* msub --> mneg. */
10191 case 694: value = 695; break; /* smaddl --> smull. */
10192 case 696: value = 697; break; /* smsubl --> smnegl. */
10193 case 699: value = 700; break; /* umaddl --> umull. */
10194 case 701: value = 702; break; /* umsubl --> umnegl. */
10195 case 712: value = 713; break; /* extr --> ror. */
10196 case 919: value = 920; break; /* and --> bic. */
10197 case 921: value = 922; break; /* orr --> mov. */
10198 case 924: value = 925; break; /* ands --> tst. */
10199 case 928: value = 930; break; /* orr --> uxtw. */
10200 case 931: value = 932; break; /* orn --> mvn. */
10201 case 935: value = 936; break; /* ands --> tst. */
10202 case 966: value = 1062; break; /* ldaddb --> staddb. */
10203 case 967: value = 1063; break; /* ldaddh --> staddh. */
10204 case 968: value = 1064; break; /* ldadd --> stadd. */
10205 case 970: value = 1065; break; /* ldaddlb --> staddlb. */
10206 case 973: value = 1066; break; /* ldaddlh --> staddlh. */
10207 case 976: value = 1067; break; /* ldaddl --> staddl. */
10208 case 978: value = 1068; break; /* ldclrb --> stclrb. */
10209 case 979: value = 1069; break; /* ldclrh --> stclrh. */
10210 case 980: value = 1070; break; /* ldclr --> stclr. */
10211 case 982: value = 1071; break; /* ldclrlb --> stclrlb. */
10212 case 985: value = 1072; break; /* ldclrlh --> stclrlh. */
10213 case 988: value = 1073; break; /* ldclrl --> stclrl. */
10214 case 990: value = 1074; break; /* ldeorb --> steorb. */
10215 case 991: value = 1075; break; /* ldeorh --> steorh. */
10216 case 992: value = 1076; break; /* ldeor --> steor. */
10217 case 994: value = 1077; break; /* ldeorlb --> steorlb. */
10218 case 997: value = 1078; break; /* ldeorlh --> steorlh. */
10219 case 1000: value = 1079; break; /* ldeorl --> steorl. */
10220 case 1002: value = 1080; break; /* ldsetb --> stsetb. */
10221 case 1003: value = 1081; break; /* ldseth --> stseth. */
10222 case 1004: value = 1082; break; /* ldset --> stset. */
10223 case 1006: value = 1083; break; /* ldsetlb --> stsetlb. */
10224 case 1009: value = 1084; break; /* ldsetlh --> stsetlh. */
10225 case 1012: value = 1085; break; /* ldsetl --> stsetl. */
10226 case 1014: value = 1086; break; /* ldsmaxb --> stsmaxb. */
10227 case 1015: value = 1087; break; /* ldsmaxh --> stsmaxh. */
10228 case 1016: value = 1088; break; /* ldsmax --> stsmax. */
10229 case 1018: value = 1089; break; /* ldsmaxlb --> stsmaxlb. */
10230 case 1021: value = 1090; break; /* ldsmaxlh --> stsmaxlh. */
10231 case 1024: value = 1091; break; /* ldsmaxl --> stsmaxl. */
10232 case 1026: value = 1092; break; /* ldsminb --> stsminb. */
10233 case 1027: value = 1093; break; /* ldsminh --> stsminh. */
10234 case 1028: value = 1094; break; /* ldsmin --> stsmin. */
10235 case 1030: value = 1095; break; /* ldsminlb --> stsminlb. */
10236 case 1033: value = 1096; break; /* ldsminlh --> stsminlh. */
10237 case 1036: value = 1097; break; /* ldsminl --> stsminl. */
10238 case 1038: value = 1098; break; /* ldumaxb --> stumaxb. */
10239 case 1039: value = 1099; break; /* ldumaxh --> stumaxh. */
10240 case 1040: value = 1100; break; /* ldumax --> stumax. */
10241 case 1042: value = 1101; break; /* ldumaxlb --> stumaxlb. */
10242 case 1045: value = 1102; break; /* ldumaxlh --> stumaxlh. */
10243 case 1048: value = 1103; break; /* ldumaxl --> stumaxl. */
10244 case 1050: value = 1104; break; /* lduminb --> stuminb. */
10245 case 1051: value = 1105; break; /* lduminh --> stuminh. */
10246 case 1052: value = 1106; break; /* ldumin --> stumin. */
10247 case 1054: value = 1107; break; /* lduminlb --> stuminlb. */
10248 case 1057: value = 1108; break; /* lduminlh --> stuminlh. */
10249 case 1060: value = 1109; break; /* lduminl --> stuminl. */
10250 case 1110: value = 1111; break; /* movn --> mov. */
10251 case 1112: value = 1113; break; /* movz --> mov. */
10252 case 1118: value = 1126; break; /* hint --> psb. */
10253 case 1131: value = 1135; break; /* sys --> tlbi. */
10254 default: return NULL;
10257 return aarch64_opcode_table + value;
10260 const aarch64_opcode *
10261 aarch64_find_next_alias_opcode (const aarch64_opcode *opcode)
10263 /* Use the index as the key to locate the next opcode. */
10264 int key = opcode - aarch64_opcode_table;
10265 int value;
10266 switch (key)
10268 case 3: value = 2; break; /* ngc --> sbc. */
10269 case 5: value = 4; break; /* ngcs --> sbcs. */
10270 case 8: value = 7; break; /* cmn --> adds. */
10271 case 11: value = 10; break; /* cmp --> subs. */
10272 case 13: value = 12; break; /* mov --> add. */
10273 case 15: value = 14; break; /* cmn --> adds. */
10274 case 18: value = 17; break; /* cmp --> subs. */
10275 case 21: value = 20; break; /* cmn --> adds. */
10276 case 23: value = 22; break; /* neg --> sub. */
10277 case 26: value = 25; break; /* negs --> cmp. */
10278 case 25: value = 24; break; /* cmp --> subs. */
10279 case 150: value = 149; break; /* mov --> umov. */
10280 case 152: value = 151; break; /* mov --> ins. */
10281 case 154: value = 153; break; /* mov --> ins. */
10282 case 236: value = 235; break; /* mvn --> not. */
10283 case 311: value = 310; break; /* mov --> orr. */
10284 case 380: value = 379; break; /* sxtl --> sshll. */
10285 case 382: value = 381; break; /* sxtl2 --> sshll2. */
10286 case 404: value = 403; break; /* uxtl --> ushll. */
10287 case 406: value = 405; break; /* uxtl2 --> ushll2. */
10288 case 527: value = 526; break; /* mov --> dup. */
10289 case 614: value = 613; break; /* sxtw --> sxth. */
10290 case 613: value = 612; break; /* sxth --> sxtb. */
10291 case 612: value = 615; break; /* sxtb --> asr. */
10292 case 615: value = 611; break; /* asr --> sbfx. */
10293 case 611: value = 610; break; /* sbfx --> sbfiz. */
10294 case 610: value = 609; break; /* sbfiz --> sbfm. */
10295 case 618: value = 619; break; /* bfc --> bfxil. */
10296 case 619: value = 617; break; /* bfxil --> bfi. */
10297 case 617: value = 616; break; /* bfi --> bfm. */
10298 case 624: value = 623; break; /* uxth --> uxtb. */
10299 case 623: value = 626; break; /* uxtb --> lsr. */
10300 case 626: value = 625; break; /* lsr --> lsl. */
10301 case 625: value = 622; break; /* lsl --> ubfx. */
10302 case 622: value = 621; break; /* ubfx --> ubfiz. */
10303 case 621: value = 620; break; /* ubfiz --> ubfm. */
10304 case 644: value = 643; break; /* cset --> cinc. */
10305 case 643: value = 642; break; /* cinc --> csinc. */
10306 case 647: value = 646; break; /* csetm --> cinv. */
10307 case 646: value = 645; break; /* cinv --> csinv. */
10308 case 649: value = 648; break; /* cneg --> csneg. */
10309 case 667: value = 668; break; /* rev --> rev64. */
10310 case 675: value = 674; break; /* lsl --> lslv. */
10311 case 677: value = 676; break; /* lsr --> lsrv. */
10312 case 679: value = 678; break; /* asr --> asrv. */
10313 case 681: value = 680; break; /* ror --> rorv. */
10314 case 691: value = 690; break; /* mul --> madd. */
10315 case 693: value = 692; break; /* mneg --> msub. */
10316 case 695: value = 694; break; /* smull --> smaddl. */
10317 case 697: value = 696; break; /* smnegl --> smsubl. */
10318 case 700: value = 699; break; /* umull --> umaddl. */
10319 case 702: value = 701; break; /* umnegl --> umsubl. */
10320 case 713: value = 712; break; /* ror --> extr. */
10321 case 920: value = 919; break; /* bic --> and. */
10322 case 922: value = 921; break; /* mov --> orr. */
10323 case 925: value = 924; break; /* tst --> ands. */
10324 case 930: value = 929; break; /* uxtw --> mov. */
10325 case 929: value = 928; break; /* mov --> orr. */
10326 case 932: value = 931; break; /* mvn --> orn. */
10327 case 936: value = 935; break; /* tst --> ands. */
10328 case 1062: value = 966; break; /* staddb --> ldaddb. */
10329 case 1063: value = 967; break; /* staddh --> ldaddh. */
10330 case 1064: value = 968; break; /* stadd --> ldadd. */
10331 case 1065: value = 970; break; /* staddlb --> ldaddlb. */
10332 case 1066: value = 973; break; /* staddlh --> ldaddlh. */
10333 case 1067: value = 976; break; /* staddl --> ldaddl. */
10334 case 1068: value = 978; break; /* stclrb --> ldclrb. */
10335 case 1069: value = 979; break; /* stclrh --> ldclrh. */
10336 case 1070: value = 980; break; /* stclr --> ldclr. */
10337 case 1071: value = 982; break; /* stclrlb --> ldclrlb. */
10338 case 1072: value = 985; break; /* stclrlh --> ldclrlh. */
10339 case 1073: value = 988; break; /* stclrl --> ldclrl. */
10340 case 1074: value = 990; break; /* steorb --> ldeorb. */
10341 case 1075: value = 991; break; /* steorh --> ldeorh. */
10342 case 1076: value = 992; break; /* steor --> ldeor. */
10343 case 1077: value = 994; break; /* steorlb --> ldeorlb. */
10344 case 1078: value = 997; break; /* steorlh --> ldeorlh. */
10345 case 1079: value = 1000; break; /* steorl --> ldeorl. */
10346 case 1080: value = 1002; break; /* stsetb --> ldsetb. */
10347 case 1081: value = 1003; break; /* stseth --> ldseth. */
10348 case 1082: value = 1004; break; /* stset --> ldset. */
10349 case 1083: value = 1006; break; /* stsetlb --> ldsetlb. */
10350 case 1084: value = 1009; break; /* stsetlh --> ldsetlh. */
10351 case 1085: value = 1012; break; /* stsetl --> ldsetl. */
10352 case 1086: value = 1014; break; /* stsmaxb --> ldsmaxb. */
10353 case 1087: value = 1015; break; /* stsmaxh --> ldsmaxh. */
10354 case 1088: value = 1016; break; /* stsmax --> ldsmax. */
10355 case 1089: value = 1018; break; /* stsmaxlb --> ldsmaxlb. */
10356 case 1090: value = 1021; break; /* stsmaxlh --> ldsmaxlh. */
10357 case 1091: value = 1024; break; /* stsmaxl --> ldsmaxl. */
10358 case 1092: value = 1026; break; /* stsminb --> ldsminb. */
10359 case 1093: value = 1027; break; /* stsminh --> ldsminh. */
10360 case 1094: value = 1028; break; /* stsmin --> ldsmin. */
10361 case 1095: value = 1030; break; /* stsminlb --> ldsminlb. */
10362 case 1096: value = 1033; break; /* stsminlh --> ldsminlh. */
10363 case 1097: value = 1036; break; /* stsminl --> ldsminl. */
10364 case 1098: value = 1038; break; /* stumaxb --> ldumaxb. */
10365 case 1099: value = 1039; break; /* stumaxh --> ldumaxh. */
10366 case 1100: value = 1040; break; /* stumax --> ldumax. */
10367 case 1101: value = 1042; break; /* stumaxlb --> ldumaxlb. */
10368 case 1102: value = 1045; break; /* stumaxlh --> ldumaxlh. */
10369 case 1103: value = 1048; break; /* stumaxl --> ldumaxl. */
10370 case 1104: value = 1050; break; /* stuminb --> lduminb. */
10371 case 1105: value = 1051; break; /* stuminh --> lduminh. */
10372 case 1106: value = 1052; break; /* stumin --> ldumin. */
10373 case 1107: value = 1054; break; /* stuminlb --> lduminlb. */
10374 case 1108: value = 1057; break; /* stuminlh --> lduminlh. */
10375 case 1109: value = 1060; break; /* stuminl --> lduminl. */
10376 case 1111: value = 1110; break; /* mov --> movn. */
10377 case 1113: value = 1112; break; /* mov --> movz. */
10378 case 1126: value = 1125; break; /* psb --> esb. */
10379 case 1125: value = 1124; break; /* esb --> sevl. */
10380 case 1124: value = 1123; break; /* sevl --> sev. */
10381 case 1123: value = 1122; break; /* sev --> wfi. */
10382 case 1122: value = 1121; break; /* wfi --> wfe. */
10383 case 1121: value = 1120; break; /* wfe --> yield. */
10384 case 1120: value = 1119; break; /* yield --> nop. */
10385 case 1119: value = 1118; break; /* nop --> hint. */
10386 case 1135: value = 1134; break; /* tlbi --> ic. */
10387 case 1134: value = 1133; break; /* ic --> dc. */
10388 case 1133: value = 1132; break; /* dc --> at. */
10389 case 1132: value = 1131; break; /* at --> sys. */
10390 default: return NULL;
10393 return aarch64_opcode_table + value;
10397 aarch64_extract_operand (const aarch64_operand *self,
10398 aarch64_opnd_info *info,
10399 aarch64_insn code, const aarch64_inst *inst)
10401 /* Use the index as the key. */
10402 int key = self - aarch64_operands;
10403 switch (key)
10405 case 1:
10406 case 2:
10407 case 3:
10408 case 4:
10409 case 5:
10410 case 6:
10411 case 7:
10412 case 9:
10413 case 10:
10414 case 14:
10415 case 15:
10416 case 16:
10417 case 17:
10418 case 19:
10419 case 20:
10420 case 21:
10421 case 22:
10422 case 23:
10423 case 24:
10424 case 25:
10425 case 26:
10426 case 27:
10427 case 35:
10428 case 36:
10429 return aarch64_ext_regno (self, info, code, inst);
10430 case 8:
10431 return aarch64_ext_regrt_sysins (self, info, code, inst);
10432 case 11:
10433 return aarch64_ext_regno_pair (self, info, code, inst);
10434 case 12:
10435 return aarch64_ext_reg_extended (self, info, code, inst);
10436 case 13:
10437 return aarch64_ext_reg_shifted (self, info, code, inst);
10438 case 18:
10439 return aarch64_ext_ft (self, info, code, inst);
10440 case 28:
10441 case 29:
10442 case 30:
10443 return aarch64_ext_reglane (self, info, code, inst);
10444 case 31:
10445 return aarch64_ext_reglist (self, info, code, inst);
10446 case 32:
10447 return aarch64_ext_ldst_reglist (self, info, code, inst);
10448 case 33:
10449 return aarch64_ext_ldst_reglist_r (self, info, code, inst);
10450 case 34:
10451 return aarch64_ext_ldst_elemlist (self, info, code, inst);
10452 case 37:
10453 case 46:
10454 case 47:
10455 case 48:
10456 case 49:
10457 case 50:
10458 case 51:
10459 case 52:
10460 case 53:
10461 case 54:
10462 case 55:
10463 case 56:
10464 case 57:
10465 case 58:
10466 case 66:
10467 case 67:
10468 case 68:
10469 case 69:
10470 case 70:
10471 return aarch64_ext_imm (self, info, code, inst);
10472 case 38:
10473 case 39:
10474 return aarch64_ext_advsimd_imm_shift (self, info, code, inst);
10475 case 40:
10476 case 41:
10477 case 42:
10478 return aarch64_ext_advsimd_imm_modified (self, info, code, inst);
10479 case 43:
10480 return aarch64_ext_shll_imm (self, info, code, inst);
10481 case 59:
10482 return aarch64_ext_limm (self, info, code, inst);
10483 case 60:
10484 return aarch64_ext_aimm (self, info, code, inst);
10485 case 61:
10486 return aarch64_ext_imm_half (self, info, code, inst);
10487 case 62:
10488 return aarch64_ext_fbits (self, info, code, inst);
10489 case 64:
10490 case 65:
10491 return aarch64_ext_cond (self, info, code, inst);
10492 case 71:
10493 case 77:
10494 return aarch64_ext_addr_simple (self, info, code, inst);
10495 case 72:
10496 return aarch64_ext_addr_regoff (self, info, code, inst);
10497 case 73:
10498 case 74:
10499 case 75:
10500 return aarch64_ext_addr_simm (self, info, code, inst);
10501 case 76:
10502 return aarch64_ext_addr_uimm12 (self, info, code, inst);
10503 case 78:
10504 return aarch64_ext_simd_addr_post (self, info, code, inst);
10505 case 79:
10506 return aarch64_ext_sysreg (self, info, code, inst);
10507 case 80:
10508 return aarch64_ext_pstatefield (self, info, code, inst);
10509 case 81:
10510 case 82:
10511 case 83:
10512 case 84:
10513 return aarch64_ext_sysins_op (self, info, code, inst);
10514 case 85:
10515 case 86:
10516 return aarch64_ext_barrier (self, info, code, inst);
10517 case 87:
10518 return aarch64_ext_prfop (self, info, code, inst);
10519 case 88:
10520 return aarch64_ext_hint (self, info, code, inst);
10521 default: assert (0); abort ();