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