X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=opcodes%2Faarch64-dis-2.c;h=8e85dbf2e27c66831dab69f940c8bbd1ca4d9dd5;hb=b5464a6825e40e6d8ab2dd86c7ff5d65bedd64d4;hp=40ccc084fbbd32b6a1394e29c26c96683b64d1f4;hpb=290806fd94099361f28e012cebca058c8c4f0e45;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/aarch64-dis-2.c b/opcodes/aarch64-dis-2.c index 40ccc084fb..8e85dbf2e2 100644 --- a/opcodes/aarch64-dis-2.c +++ b/opcodes/aarch64-dis-2.c @@ -1,5 +1,5 @@ /* This file is automatically generated by aarch64-gen. Do not edit! */ -/* Copyright (C) 2012-2015 Free Software Foundation, Inc. +/* Copyright (C) 2012-2016 Free Software Foundation, Inc. Contributed by ARM Ltd. This file is part of the GNU opcodes library. @@ -40,7 +40,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx0000xxx0 adr. */ - return 947; + return 1115; } else { @@ -48,7 +48,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx0000xxx1 adrp. */ - return 948; + return 1116; } } else @@ -115,7 +115,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx000x0010000 stxrb. */ - return 705; + return 873; } else { @@ -123,7 +123,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx000x0010010 stxrh. */ - return 711; + return 879; } } else @@ -132,7 +132,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx000x00100x1 stxr. */ - return 717; + return 885; } } else @@ -143,7 +143,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx100x00100x0 casp. */ - return 782; + return 950; } else { @@ -151,7 +151,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx100x00100x1 stxp. */ - return 719; + return 887; } } } @@ -167,7 +167,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx000x0010000 stlxrb. */ - return 706; + return 874; } else { @@ -175,7 +175,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx000x0010010 stlxrh. */ - return 712; + return 880; } } else @@ -184,7 +184,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx000x00100x1 stlxr. */ - return 718; + return 886; } } else @@ -195,7 +195,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx100x00100x0 caspl. */ - return 784; + return 952; } else { @@ -203,7 +203,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx100x00100x1 stlxp. */ - return 720; + return 888; } } } @@ -214,7 +214,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx00x00101xx stnp. */ - return 733; + return 901; } } else @@ -231,7 +231,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx001x00100x0 stllrb. */ - return 731; + return 899; } else { @@ -239,7 +239,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx001x00100x1 stllr. */ - return 730; + return 898; } } else @@ -252,7 +252,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx101x0010000 casb. */ - return 770; + return 938; } else { @@ -260,7 +260,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx101x0010010 cash. */ - return 771; + return 939; } } else @@ -269,7 +269,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx101x00100x1 cas. */ - return 772; + return 940; } } } @@ -285,7 +285,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx001x0010000 stlrb. */ - return 709; + return 877; } else { @@ -293,7 +293,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx001x0010010 stlrh. */ - return 715; + return 883; } } else @@ -302,7 +302,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx001x00100x1 stlr. */ - return 725; + return 893; } } else @@ -315,7 +315,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx101x0010000 caslb. */ - return 774; + return 942; } else { @@ -323,7 +323,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx101x0010010 caslh. */ - return 777; + return 945; } } else @@ -332,7 +332,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx101x00100x1 casl. */ - return 780; + return 948; } } } @@ -343,7 +343,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx01x00101xx stp. */ - return 742; + return 910; } } } @@ -365,7 +365,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx010x0010000 ldxrb. */ - return 707; + return 875; } else { @@ -373,7 +373,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx010x0010010 ldxrh. */ - return 713; + return 881; } } else @@ -382,7 +382,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx010x00100x1 ldxr. */ - return 721; + return 889; } } else @@ -393,7 +393,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx110x00100x0 caspa. */ - return 783; + return 951; } else { @@ -401,7 +401,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx110x00100x1 ldxp. */ - return 723; + return 891; } } } @@ -417,7 +417,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx010x0010000 ldaxrb. */ - return 708; + return 876; } else { @@ -425,7 +425,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx010x0010010 ldaxrh. */ - return 714; + return 882; } } else @@ -434,7 +434,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx010x00100x1 ldaxr. */ - return 722; + return 890; } } else @@ -445,7 +445,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx110x00100x0 caspal. */ - return 785; + return 953; } else { @@ -453,7 +453,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx110x00100x1 ldaxp. */ - return 724; + return 892; } } } @@ -466,7 +466,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx10x001010x ldnp. */ - return 734; + return 902; } else { @@ -474,7 +474,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx10x001011x ldpsw. */ - return 741; + return 909; } } } @@ -494,7 +494,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx011x0010000 ldlarb. */ - return 728; + return 896; } else { @@ -502,7 +502,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx011x0010010 ldlarh. */ - return 729; + return 897; } } else @@ -511,7 +511,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx011x00100x1 ldlar. */ - return 727; + return 895; } } else @@ -524,7 +524,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx111x0010000 casab. */ - return 773; + return 941; } else { @@ -532,7 +532,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx111x0010010 casah. */ - return 776; + return 944; } } else @@ -541,7 +541,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx111x00100x1 casa. */ - return 779; + return 947; } } } @@ -557,7 +557,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx011x0010000 ldarb. */ - return 710; + return 878; } else { @@ -565,7 +565,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx011x0010010 ldarh. */ - return 716; + return 884; } } else @@ -574,7 +574,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx011x00100x1 ldar. */ - return 726; + return 894; } } else @@ -587,7 +587,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx111x0010000 casalb. */ - return 775; + return 943; } else { @@ -595,7 +595,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx111x0010010 casalh. */ - return 778; + return 946; } } else @@ -604,7 +604,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx111x00100x1 casal. */ - return 781; + return 949; } } } @@ -617,7 +617,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx11x001010x ldp. */ - return 743; + return 911; } else { @@ -625,7 +625,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx11x001011x ldpsw. */ - return 746; + return 914; } } } @@ -643,7 +643,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx000110x0 ldr. */ - return 747; + return 915; } else { @@ -653,7 +653,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx00011001 ldrsw. */ - return 749; + return 917; } else { @@ -661,7 +661,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx00011011 prfm. */ - return 750; + return 918; } } } @@ -685,7 +685,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx00000011100 sturb. */ - return 693; + return 861; } else { @@ -693,7 +693,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx00000011110 sturh. */ - return 698; + return 866; } } else @@ -702,7 +702,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx000000111x1 stur. */ - return 701; + return 869; } } else @@ -715,7 +715,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx01000011100 ldurb. */ - return 694; + return 862; } else { @@ -723,7 +723,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx01000011110 ldurh. */ - return 699; + return 867; } } else @@ -732,7 +732,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx010000111x1 ldur. */ - return 702; + return 870; } } } @@ -746,7 +746,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx0x100011100 ldursb. */ - return 695; + return 863; } else { @@ -754,7 +754,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx0x100011101 ldursw. */ - return 703; + return 871; } } else @@ -765,7 +765,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx0x100011110 ldursh. */ - return 700; + return 868; } else { @@ -773,7 +773,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx0x100011111 prfum. */ - return 704; + return 872; } } } @@ -800,7 +800,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx10000011100 ldaddb. */ - return 798; + return 966; } else { @@ -808,7 +808,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx10000011110 ldaddh. */ - return 799; + return 967; } } else @@ -817,7 +817,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx100000111x1 ldadd. */ - return 800; + return 968; } } else @@ -830,7 +830,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx10100011100 ldaddab. */ - return 801; + return 969; } else { @@ -838,7 +838,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx10100011110 ldaddah. */ - return 804; + return 972; } } else @@ -847,7 +847,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx101000111x1 ldadda. */ - return 807; + return 975; } } } @@ -863,7 +863,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx11000011100 ldaddlb. */ - return 802; + return 970; } else { @@ -871,7 +871,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx11000011110 ldaddlh. */ - return 805; + return 973; } } else @@ -880,7 +880,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx110000111x1 ldaddl. */ - return 808; + return 976; } } else @@ -893,7 +893,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx11100011100 ldaddalb. */ - return 803; + return 971; } else { @@ -901,7 +901,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx11100011110 ldaddalh. */ - return 806; + return 974; } } else @@ -910,7 +910,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000xxxxx111000111x1 ldaddal. */ - return 809; + return 977; } } } @@ -929,7 +929,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx10000011100 swpb. */ - return 786; + return 954; } else { @@ -937,7 +937,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx10000011110 swph. */ - return 787; + return 955; } } else @@ -946,7 +946,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx100000111x1 swp. */ - return 788; + return 956; } } else @@ -959,7 +959,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx10100011100 swpab. */ - return 789; + return 957; } else { @@ -967,7 +967,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx10100011110 swpah. */ - return 792; + return 960; } } else @@ -976,7 +976,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx101000111x1 swpa. */ - return 795; + return 963; } } } @@ -992,7 +992,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx11000011100 swplb. */ - return 790; + return 958; } else { @@ -1000,7 +1000,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx11000011110 swplh. */ - return 793; + return 961; } } else @@ -1009,7 +1009,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx110000111x1 swpl. */ - return 796; + return 964; } } else @@ -1022,7 +1022,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx11100011100 swpalb. */ - return 791; + return 959; } else { @@ -1030,7 +1030,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx11100011110 swpalh. */ - return 794; + return 962; } } else @@ -1039,7 +1039,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx111000111x1 swpal. */ - return 797; + return 965; } } } @@ -1059,7 +1059,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx10000011100 ldsmaxb. */ - return 846; + return 1014; } else { @@ -1067,7 +1067,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx10000011110 ldsmaxh. */ - return 847; + return 1015; } } else @@ -1076,7 +1076,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx100000111x1 ldsmax. */ - return 848; + return 1016; } } else @@ -1089,7 +1089,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx10100011100 ldsmaxab. */ - return 849; + return 1017; } else { @@ -1097,7 +1097,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx10100011110 ldsmaxah. */ - return 852; + return 1020; } } else @@ -1106,7 +1106,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx101000111x1 ldsmaxa. */ - return 855; + return 1023; } } } @@ -1122,7 +1122,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx11000011100 ldsmaxlb. */ - return 850; + return 1018; } else { @@ -1130,7 +1130,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx11000011110 ldsmaxlh. */ - return 853; + return 1021; } } else @@ -1139,7 +1139,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx110000111x1 ldsmaxl. */ - return 856; + return 1024; } } else @@ -1152,7 +1152,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx11100011100 ldsmaxalb. */ - return 851; + return 1019; } else { @@ -1160,7 +1160,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx11100011110 ldsmaxalh. */ - return 854; + return 1022; } } else @@ -1169,7 +1169,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx111000111x1 ldsmaxal. */ - return 857; + return 1025; } } } @@ -1191,7 +1191,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx10000011100 ldeorb. */ - return 822; + return 990; } else { @@ -1199,7 +1199,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx10000011110 ldeorh. */ - return 823; + return 991; } } else @@ -1208,7 +1208,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx100000111x1 ldeor. */ - return 824; + return 992; } } else @@ -1221,7 +1221,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx10100011100 ldeorab. */ - return 825; + return 993; } else { @@ -1229,7 +1229,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx10100011110 ldeorah. */ - return 828; + return 996; } } else @@ -1238,7 +1238,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx101000111x1 ldeora. */ - return 831; + return 999; } } } @@ -1254,7 +1254,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx11000011100 ldeorlb. */ - return 826; + return 994; } else { @@ -1262,7 +1262,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx11000011110 ldeorlh. */ - return 829; + return 997; } } else @@ -1271,7 +1271,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx110000111x1 ldeorl. */ - return 832; + return 1000; } } else @@ -1284,7 +1284,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx11100011100 ldeoralb. */ - return 827; + return 995; } else { @@ -1292,7 +1292,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx11100011110 ldeoralh. */ - return 830; + return 998; } } else @@ -1301,7 +1301,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00010xxxxxx111000111x1 ldeoral. */ - return 833; + return 1001; } } } @@ -1320,7 +1320,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx10000011100 ldumaxb. */ - return 870; + return 1038; } else { @@ -1328,7 +1328,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx10000011110 ldumaxh. */ - return 871; + return 1039; } } else @@ -1337,7 +1337,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx100000111x1 ldumax. */ - return 872; + return 1040; } } else @@ -1350,7 +1350,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx10100011100 ldumaxab. */ - return 873; + return 1041; } else { @@ -1358,7 +1358,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx10100011110 ldumaxah. */ - return 876; + return 1044; } } else @@ -1367,7 +1367,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx101000111x1 ldumaxa. */ - return 879; + return 1047; } } } @@ -1383,7 +1383,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx11000011100 ldumaxlb. */ - return 874; + return 1042; } else { @@ -1391,7 +1391,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx11000011110 ldumaxlh. */ - return 877; + return 1045; } } else @@ -1400,7 +1400,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx110000111x1 ldumaxl. */ - return 880; + return 1048; } } else @@ -1413,7 +1413,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx11100011100 ldumaxalb. */ - return 875; + return 1043; } else { @@ -1421,7 +1421,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx11100011110 ldumaxalh. */ - return 878; + return 1046; } } else @@ -1430,7 +1430,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00011xxxxxx111000111x1 ldumaxal. */ - return 881; + return 1049; } } } @@ -1455,7 +1455,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx10000011100 ldclrb. */ - return 810; + return 978; } else { @@ -1463,7 +1463,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx10000011110 ldclrh. */ - return 811; + return 979; } } else @@ -1472,7 +1472,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx100000111x1 ldclr. */ - return 812; + return 980; } } else @@ -1485,7 +1485,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx10100011100 ldclrab. */ - return 813; + return 981; } else { @@ -1493,7 +1493,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx10100011110 ldclrah. */ - return 816; + return 984; } } else @@ -1502,7 +1502,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx101000111x1 ldclra. */ - return 819; + return 987; } } } @@ -1518,7 +1518,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx11000011100 ldclrlb. */ - return 814; + return 982; } else { @@ -1526,7 +1526,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx11000011110 ldclrlh. */ - return 817; + return 985; } } else @@ -1535,7 +1535,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx110000111x1 ldclrl. */ - return 820; + return 988; } } else @@ -1548,7 +1548,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx11100011100 ldclralb. */ - return 815; + return 983; } else { @@ -1556,7 +1556,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx11100011110 ldclralh. */ - return 818; + return 986; } } else @@ -1565,7 +1565,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx111000111x1 ldclral. */ - return 821; + return 989; } } } @@ -1584,7 +1584,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx10000011100 ldsminb. */ - return 858; + return 1026; } else { @@ -1592,7 +1592,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx10000011110 ldsminh. */ - return 859; + return 1027; } } else @@ -1601,7 +1601,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx100000111x1 ldsmin. */ - return 860; + return 1028; } } else @@ -1614,7 +1614,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx10100011100 ldsminab. */ - return 861; + return 1029; } else { @@ -1622,7 +1622,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx10100011110 ldsminah. */ - return 864; + return 1032; } } else @@ -1631,7 +1631,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx101000111x1 ldsmina. */ - return 867; + return 1035; } } } @@ -1647,7 +1647,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx11000011100 ldsminlb. */ - return 862; + return 1030; } else { @@ -1655,7 +1655,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx11000011110 ldsminlh. */ - return 865; + return 1033; } } else @@ -1664,7 +1664,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx110000111x1 ldsminl. */ - return 868; + return 1036; } } else @@ -1677,7 +1677,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx11100011100 ldsminalb. */ - return 863; + return 1031; } else { @@ -1685,7 +1685,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx11100011110 ldsminalh. */ - return 866; + return 1034; } } else @@ -1694,7 +1694,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx111000111x1 ldsminal. */ - return 869; + return 1037; } } } @@ -1716,7 +1716,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx10000011100 ldsetb. */ - return 834; + return 1002; } else { @@ -1724,7 +1724,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx10000011110 ldseth. */ - return 835; + return 1003; } } else @@ -1733,7 +1733,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx100000111x1 ldset. */ - return 836; + return 1004; } } else @@ -1746,7 +1746,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx10100011100 ldsetab. */ - return 837; + return 1005; } else { @@ -1754,7 +1754,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx10100011110 ldsetah. */ - return 840; + return 1008; } } else @@ -1763,7 +1763,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx101000111x1 ldseta. */ - return 843; + return 1011; } } } @@ -1779,7 +1779,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx11000011100 ldsetlb. */ - return 838; + return 1006; } else { @@ -1787,7 +1787,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx11000011110 ldsetlh. */ - return 841; + return 1009; } } else @@ -1796,7 +1796,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx110000111x1 ldsetl. */ - return 844; + return 1012; } } else @@ -1809,7 +1809,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx11100011100 ldsetalb. */ - return 839; + return 1007; } else { @@ -1817,7 +1817,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx11100011110 ldsetalh. */ - return 842; + return 1010; } } else @@ -1826,7 +1826,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00110xxxxxx111000111x1 ldsetal. */ - return 845; + return 1013; } } } @@ -1845,7 +1845,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx10000011100 lduminb. */ - return 882; + return 1050; } else { @@ -1853,7 +1853,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx10000011110 lduminh. */ - return 883; + return 1051; } } else @@ -1862,7 +1862,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx100000111x1 ldumin. */ - return 884; + return 1052; } } else @@ -1875,7 +1875,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx10100011100 lduminab. */ - return 885; + return 1053; } else { @@ -1883,7 +1883,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx10100011110 lduminah. */ - return 888; + return 1056; } } else @@ -1892,7 +1892,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx101000111x1 ldumina. */ - return 891; + return 1059; } } } @@ -1908,7 +1908,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx11000011100 lduminlb. */ - return 886; + return 1054; } else { @@ -1916,7 +1916,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx11000011110 lduminlh. */ - return 889; + return 1057; } } else @@ -1925,7 +1925,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx110000111x1 lduminl. */ - return 892; + return 1060; } } else @@ -1938,7 +1938,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx11100011100 lduminalb. */ - return 887; + return 1055; } else { @@ -1946,7 +1946,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx11100011110 lduminalh. */ - return 890; + return 1058; } } else @@ -1955,7 +1955,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx111000111x1 lduminal. */ - return 893; + return 1061; } } } @@ -1980,7 +1980,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx00000011100 sttrb. */ - return 684; + return 852; } else { @@ -1988,7 +1988,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx00000011110 sttrh. */ - return 687; + return 855; } } else @@ -1997,7 +1997,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx000000111x1 sttr. */ - return 690; + return 858; } } else @@ -2010,7 +2010,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx01000011100 ldtrb. */ - return 685; + return 853; } else { @@ -2018,7 +2018,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx01000011110 ldtrh. */ - return 688; + return 856; } } else @@ -2027,7 +2027,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx010000111x1 ldtr. */ - return 691; + return 859; } } } @@ -2041,7 +2041,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx0x100011100 ldtrsb. */ - return 686; + return 854; } else { @@ -2049,7 +2049,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx0x100011101 ldtrsw. */ - return 692; + return 860; } } else @@ -2058,7 +2058,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx0x10001111x ldtrsh. */ - return 689; + return 857; } } } @@ -2076,7 +2076,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx10000011100 strb. */ - return 672; + return 840; } else { @@ -2084,7 +2084,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx10000011110 strh. */ - return 677; + return 845; } } else @@ -2093,7 +2093,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx100000111x1 str. */ - return 680; + return 848; } } else @@ -2106,7 +2106,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx11000011100 ldrb. */ - return 673; + return 841; } else { @@ -2114,7 +2114,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx11000011110 ldrh. */ - return 678; + return 846; } } else @@ -2123,7 +2123,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx110000111x1 ldr. */ - return 681; + return 849; } } } @@ -2137,7 +2137,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx1x100011100 ldrsb. */ - return 674; + return 842; } else { @@ -2145,7 +2145,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx1x100011101 ldrsw. */ - return 682; + return 850; } } else @@ -2156,7 +2156,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx1x100011110 ldrsh. */ - return 679; + return 847; } else { @@ -2164,7 +2164,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx1x100011111 prfm. */ - return 683; + return 851; } } } @@ -2185,7 +2185,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx0000011100 strb. */ - return 649; + return 817; } else { @@ -2193,7 +2193,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx0000011110 strh. */ - return 654; + return 822; } } else @@ -2202,7 +2202,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx00000111x1 str. */ - return 657; + return 825; } } else @@ -2215,7 +2215,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx1000011100 ldrb. */ - return 650; + return 818; } else { @@ -2223,7 +2223,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx1000011110 ldrh. */ - return 655; + return 823; } } else @@ -2232,7 +2232,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx10000111x1 ldr. */ - return 658; + return 826; } } } @@ -2246,7 +2246,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxxx100011100 ldrsb. */ - return 651; + return 819; } else { @@ -2254,7 +2254,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxxx100011101 ldrsw. */ - return 659; + return 827; } } else @@ -2263,7 +2263,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxxx10001111x ldrsh. */ - return 656; + return 824; } } } @@ -2283,7 +2283,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx0010011x00 strb. */ - return 660; + return 828; } else { @@ -2291,7 +2291,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx0010011x10 strh. */ - return 665; + return 833; } } else @@ -2300,7 +2300,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx0010011xx1 str. */ - return 668; + return 836; } } else @@ -2313,7 +2313,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx1010011x00 ldrb. */ - return 661; + return 829; } else { @@ -2321,7 +2321,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx1010011x10 ldrh. */ - return 666; + return 834; } } else @@ -2330,7 +2330,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx1010011xx1 ldr. */ - return 669; + return 837; } } } @@ -2344,7 +2344,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx110011x00 ldrsb. */ - return 662; + return 830; } else { @@ -2352,7 +2352,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx110011x01 ldrsw. */ - return 670; + return 838; } } else @@ -2363,7 +2363,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx110011x10 ldrsh. */ - return 667; + return 835; } else { @@ -2371,7 +2371,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx110011x11 prfm. */ - return 671; + return 839; } } } @@ -2395,7 +2395,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx00100x00x and. */ - return 751; + return 919; } else { @@ -2403,7 +2403,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx00100x01x eor. */ - return 755; + return 923; } } else @@ -2414,7 +2414,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx00100x10x orr. */ - return 753; + return 921; } else { @@ -2422,7 +2422,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx00100x11x ands. */ - return 756; + return 924; } } } @@ -2436,7 +2436,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx10100x00x movn. */ - return 942; + return 1110; } else { @@ -2444,7 +2444,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx10100x01x movz. */ - return 944; + return 1112; } } else @@ -2453,7 +2453,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx10100x1xx movk. */ - return 946; + return 1114; } } } @@ -2471,7 +2471,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx0xx0101000x and. */ - return 758; + return 926; } else { @@ -2479,7 +2479,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx0xx0101001x eor. */ - return 765; + return 933; } } else @@ -2490,7 +2490,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx0xx0101010x orr. */ - return 760; + return 928; } else { @@ -2498,7 +2498,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx0xx0101011x ands. */ - return 767; + return 935; } } } @@ -2559,7 +2559,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx00101011x0x csel. */ - return 524; + return 641; } else { @@ -2567,7 +2567,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx00101011x1x csinv. */ - return 528; + return 645; } } } @@ -2581,7 +2581,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx01001011x0x ccmn. */ - return 522; + return 639; } else { @@ -2589,7 +2589,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxx01001011x1x ccmp. */ - return 523; + return 640; } } else @@ -2604,7 +2604,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00000xxxxxx01101011xxx rbit. */ - return 547; + return 664; } else { @@ -2612,7 +2612,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xxxxxx01101011xxx crc32b. */ - return 564; + return 682; } } else @@ -2621,7 +2621,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0001xxxxxxx01101011xxx lslv. */ - return 556; + return 674; } } else @@ -2632,7 +2632,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001x0xxxxxx01101011xxx clz. */ - return 551; + return 669; } else { @@ -2640,7 +2640,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001x1xxxxxx01101011xxx crc32cb. */ - return 568; + return 686; } } } @@ -2656,7 +2656,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx0x001011x0x ccmn. */ - return 520; + return 637; } else { @@ -2664,7 +2664,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxx0x001011x1x ccmp. */ - return 521; + return 638; } } else @@ -2681,7 +2681,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01000xxxxxx0x101011x0x udiv. */ - return 554; + return 672; } else { @@ -2691,7 +2691,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01000xxxxxx0x101011x10 rev. */ - return 549; + return 666; } else { @@ -2699,7 +2699,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01000xxxxxx0x101011x11 rev32. */ - return 553; + return 671; } } } @@ -2709,7 +2709,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01001xxxxxx0x101011xxx crc32w. */ - return 566; + return 684; } } else @@ -2718,7 +2718,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101xxxxxxx0x101011xxx asrv. */ - return 560; + return 678; } } else @@ -2727,7 +2727,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011xxxxxxxx0x101011xxx crc32cw. */ - return 570; + return 688; } } } @@ -2744,7 +2744,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10xxxxxxxxx00x01011x0x csinc. */ - return 525; + return 642; } else { @@ -2752,7 +2752,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10xxxxxxxxx00x01011x1x csneg. */ - return 531; + return 648; } } else @@ -2767,7 +2767,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10000xxxxxx01x01011xxx rev16. */ - return 548; + return 665; } else { @@ -2775,7 +2775,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10001xxxxxx01x01011xxx crc32h. */ - return 565; + return 683; } } else @@ -2784,7 +2784,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1001xxxxxxx01x01011xxx lsrv. */ - return 558; + return 676; } } else @@ -2795,7 +2795,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101x0xxxxxx01x01011xxx cls. */ - return 552; + return 670; } else { @@ -2803,7 +2803,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101x1xxxxxx01x01011xxx crc32ch. */ - return 569; + return 687; } } } @@ -2822,7 +2822,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11000xxxxxx0xx01011x0x sdiv. */ - return 555; + return 673; } else { @@ -2830,7 +2830,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11000xxxxxx0xx01011x1x rev. */ - return 550; + return 667; } } else @@ -2839,7 +2839,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11001xxxxxx0xx01011xxx crc32x. */ - return 567; + return 685; } } else @@ -2848,7 +2848,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1101xxxxxxx0xx01011xxx rorv. */ - return 562; + return 680; } } else @@ -2857,7 +2857,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111xxxxxxxx0xx01011xxx crc32cx. */ - return 571; + return 689; } } } @@ -2873,7 +2873,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx1xx0101x00x bic. */ - return 759; + return 927; } else { @@ -2881,7 +2881,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx1xx0101x01x eon. */ - return 766; + return 934; } } else @@ -2892,7 +2892,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx1xx0101x10x orn. */ - return 763; + return 931; } else { @@ -2900,7 +2900,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx1xx0101x11x bics. */ - return 769; + return 937; } } } @@ -2920,7 +2920,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx01100x00x sbfm. */ - return 493; + return 609; } else { @@ -2928,7 +2928,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx01100x01x ubfm. */ - return 503; + return 620; } } else @@ -2937,7 +2937,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx01100x1xx bfm. */ - return 500; + return 616; } } else @@ -2946,7 +2946,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxx11100xxxx extr. */ - return 594; + return 712; } } else @@ -3004,7 +3004,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx00x11011xxx madd. */ - return 572; + return 690; } else { @@ -3014,7 +3014,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx01011011xxx smulh. */ - return 580; + return 698; } else { @@ -3022,7 +3022,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx01111011xxx umulh. */ - return 585; + return 703; } } } @@ -3032,7 +3032,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx0xx11011xxx msub. */ - return 574; + return 692; } } } @@ -3089,7 +3089,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx1x011011xxx smaddl. */ - return 576; + return 694; } else { @@ -3097,7 +3097,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx1x011011xxx smsubl. */ - return 578; + return 696; } } } @@ -3109,7 +3109,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx1x11101xxxx umaddl. */ - return 581; + return 699; } else { @@ -3117,7 +3117,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx1x11101xxxx umsubl. */ - return 583; + return 701; } } } @@ -3139,7 +3139,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxxxx10x000 b. */ - return 510; + return 627; } else { @@ -3147,7 +3147,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxxxx10x001 bl. */ - return 511; + return 628; } } else @@ -3162,7 +3162,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx0010x010 b.c. */ - return 519; + return 636; } else { @@ -3176,7 +3176,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 00xxxxxxxxxxxxxxxxxxx0xx0010x011 hlt. */ - return 590; + return 708; } else { @@ -3184,7 +3184,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 00xxxxxxxxxxxxxxxxxxx1xx0010x011 brk. */ - return 589; + return 707; } } else @@ -3195,7 +3195,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 01xxxxxxxxxxxxxxxxxxx0xx0010x011 hvc. */ - return 587; + return 705; } else { @@ -3203,7 +3203,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 01xxxxxxxxxxxxxxxxxxx1xx0010x011 dcps2. */ - return 592; + return 710; } } } @@ -3217,7 +3217,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 10xxxxxxxxxxxxxxxxxxx0xx0010x011 svc. */ - return 586; + return 704; } else { @@ -3225,7 +3225,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 10xxxxxxxxxxxxxxxxxxx1xx0010x011 dcps1. */ - return 591; + return 709; } } else @@ -3236,7 +3236,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 11xxxxxxxxxxxxxxxxxxx0xx0010x011 smc. */ - return 588; + return 706; } else { @@ -3244,7 +3244,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 11xxxxxxxxxxxxxxxxxxx1xx0010x011 dcps3. */ - return 593; + return 711; } } } @@ -3262,7 +3262,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx0000110x01x br. */ - return 512; + return 629; } else { @@ -3270,7 +3270,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx0010110x01x eret. */ - return 515; + return 632; } } else @@ -3279,7 +3279,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx01x0110x01x ret. */ - return 514; + return 631; } } else @@ -3290,7 +3290,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx1x00110x01x blr. */ - return 513; + return 630; } else { @@ -3298,7 +3298,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx1x10110x01x drps. */ - return 516; + return 633; } } } @@ -3311,7 +3311,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx0xx1x10x01x msr. */ - return 949; + return 1117; } else { @@ -3319,7 +3319,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx1xx1x10x01x sysl. */ - return 967; + return 1137; } } } @@ -3334,7 +3334,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx0010x1xx cbz. */ - return 517; + return 634; } else { @@ -3342,7 +3342,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx0110x1xx tbz. */ - return 969; + return 1139; } } else @@ -3353,7 +3353,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx1010x1xx cbnz. */ - return 518; + return 635; } else { @@ -3361,7 +3361,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx1110x1xx tbnz. */ - return 970; + return 1140; } } } @@ -3384,7 +3384,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx00001100xx st4. */ - return 355; + return 431; } else { @@ -3392,7 +3392,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx00001101xx stnp. */ - return 735; + return 903; } } else @@ -3407,7 +3407,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx000101100xx st1. */ - return 371; + return 447; } else { @@ -3415,7 +3415,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx100101100xx st2. */ - return 373; + return 449; } } else @@ -3426,7 +3426,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx000101100xx st3. */ - return 372; + return 448; } else { @@ -3434,7 +3434,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx100101100xx st4. */ - return 374; + return 450; } } } @@ -3444,7 +3444,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx00101101xx stp. */ - return 739; + return 907; } } } @@ -3460,7 +3460,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx001001100xx st4. */ - return 363; + return 439; } else { @@ -3470,7 +3470,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx001101100xx st1. */ - return 383; + return 459; } else { @@ -3478,7 +3478,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx001101100xx st3. */ - return 384; + return 460; } } } @@ -3490,7 +3490,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx101x01100xx st2. */ - return 385; + return 461; } else { @@ -3498,7 +3498,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx101x01100xx st4. */ - return 386; + return 462; } } } @@ -3508,7 +3508,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx01x01101xx stp. */ - return 744; + return 912; } } } @@ -3524,7 +3524,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx10001100xx ld4. */ - return 359; + return 435; } else { @@ -3532,7 +3532,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx10001101xx ldnp. */ - return 736; + return 904; } } else @@ -3547,7 +3547,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx010101100xx ld1. */ - return 375; + return 451; } else { @@ -3555,7 +3555,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx110101100xx ld2. */ - return 379; + return 455; } } else @@ -3566,7 +3566,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx010101100xx ld3. */ - return 376; + return 452; } else { @@ -3574,7 +3574,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx110101100xx ld4. */ - return 380; + return 456; } } } @@ -3584,7 +3584,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx10101101xx ldp. */ - return 740; + return 908; } } } @@ -3600,7 +3600,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxx011001100xx ld4. */ - return 367; + return 443; } else { @@ -3610,7 +3610,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx011101100xx ld1. */ - return 387; + return 463; } else { @@ -3618,7 +3618,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx011101100xx ld3. */ - return 388; + return 464; } } } @@ -3630,7 +3630,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx0xxxxxxx111x01100xx ld2. */ - return 391; + return 467; } else { @@ -3638,7 +3638,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxx1xxxxxxx111x01100xx ld4. */ - return 392; + return 468; } } } @@ -3648,7 +3648,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx11x01101xx ldp. */ - return 745; + return 913; } } } @@ -3663,7 +3663,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxxxx001110xx ldr. */ - return 748; + return 916; } else { @@ -3677,7 +3677,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxxx0x001111xx stur. */ - return 696; + return 864; } else { @@ -3685,7 +3685,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00xxxxxxxxxx1x001111xx ldur. */ - return 697; + return 865; } } else @@ -3696,7 +3696,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxxx0x001111xx str. */ - return 675; + return 843; } else { @@ -3704,7 +3704,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01xxxxxxxxxx1x001111xx ldr. */ - return 676; + return 844; } } } @@ -3716,7 +3716,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx0x001111xx str. */ - return 652; + return 820; } else { @@ -3724,7 +3724,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1xxxxxxxxxxx1x001111xx ldr. */ - return 653; + return 821; } } } @@ -3737,7 +3737,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx0x10111xxx str. */ - return 663; + return 831; } else { @@ -3745,7 +3745,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxxxxxxxxx1x10111xxx ldr. */ - return 664; + return 832; } } } @@ -3770,7 +3770,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000xxxxxxxx0xx011100xx tbl. */ - return 341; + return 411; } else { @@ -3778,7 +3778,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001xxxxxxxx0xx011100xx tbx. */ - return 342; + return 412; } } else @@ -3791,7 +3791,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010x0xxxxxx0xx011100xx trn1. */ - return 216; + return 256; } else { @@ -3799,7 +3799,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010x1xxxxxx0xx011100xx trn2. */ - return 219; + return 259; } } else @@ -3812,7 +3812,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01100xxxxxx0xx011100xx uzp1. */ - return 215; + return 255; } else { @@ -3820,7 +3820,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01101xxxxxx0xx011100xx uzp2. */ - return 218; + return 258; } } else @@ -3831,7 +3831,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01110xxxxxx0xx011100xx zip1. */ - return 217; + return 257; } else { @@ -3839,7 +3839,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx01111xxxxxx0xx011100xx zip2. */ - return 220; + return 260; } } } @@ -3851,323 +3851,730 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0xxxxxxxxxx0xx011101xx ext. */ - return 119; + return 129; } } else { - if (((word >> 29) & 0x1) == 0) + if (((word >> 15) & 0x1) == 0) { - if (((word >> 11) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx10xxxxxxxxx0xx011100xx - dup. */ - return 135; - } - else + if (((word >> 22) & 0x1) == 0) { - if (((word >> 12) & 0x1) == 0) + if (((word >> 29) & 0x1) == 0) { - if (((word >> 13) & 0x1) == 0) + if (((word >> 11) & 0x1) == 0) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx1100xxxxxxx0xx011100xx + xxxxxxxxxx10xxx0xxxxx00x011100xx dup. */ - return 136; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx1101xxxxxxx0xx011100xx - smov. */ - return 137; - } - } - else - { - if (((word >> 13) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx1110xxxxxxx0xx011100xx - ins. */ - return 140; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx1111xxxxxxx0xx011100xx - umov. */ - return 138; - } - } - } - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx1xxxxxxxxxx0xx011101xx - ins. */ - return 142; - } - } - } - else - { - if (((word >> 30) & 0x1) == 0) - { - if (((word >> 16) & 0x1) == 0) - { - if (((word >> 17) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxxxxxxxx00xxx0xx01111x0x - fcvtzs. */ - return 598; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxxxxxxxx01xxx0xx01111x0x - scvtf. */ - return 596; - } - } - else - { - if (((word >> 17) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxxxxxxxx10xxx0xx01111x0x - fcvtzu. */ - return 599; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxxxxxxxx11xxx0xx01111x0x - ucvtf. */ - return 597; - } - } - } - else - { - if (((word >> 10) & 0x1) == 0) - { - if (((word >> 12) & 0x1) == 0) - { - if (((word >> 13) & 0x1) == 0) - { - if (((word >> 14) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x000xxxxxx0xx01111x1x - sha1c. */ - return 540; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x001xxxxxx0xx01111x1x - sha256h. */ - return 544; - } - } - else - { - if (((word >> 14) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x010xxxxxx0xx01111x1x - sha1m. */ - return 542; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x011xxxxxx0xx01111x1x - sha256su1. */ - return 546; - } - } - } - else - { - if (((word >> 13) & 0x1) == 0) - { - if (((word >> 14) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x100xxxxxx0xx01111x1x - sha1p. */ - return 541; + return 146; } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x101xxxxxx0xx01111x1x - sha256h2. */ - return 545; + if (((word >> 12) & 0x1) == 0) + { + if (((word >> 13) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1100x0xxxxx00x011100xx + dup. */ + return 147; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1101x0xxxxx00x011100xx + smov. */ + return 148; + } + } + else + { + if (((word >> 13) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1110x0xxxxx00x011100xx + ins. */ + return 151; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1111x0xxxxx00x011100xx + umov. */ + return 149; + } + } } } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0x11xxxxxxx0xx01111x1x - sha1su0. */ - return 543; + xxxxxxxxxx1xxxx0xxxxx00x011101xx + ins. */ + return 153; } } - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx1xxxxxxxxxx0xx01111x1x - dup. */ - return 430; - } - } - } - } - else - { - if (((word >> 10) & 0x1) == 0) - { - if (((word >> 11) & 0x1) == 0) - { - if (((word >> 12) & 0x1) == 0) - { - if (((word >> 13) & 0x1) == 0) + else { - if (((word >> 14) & 0x1) == 0) + if (((word >> 11) & 0x1) == 0) { - if (((word >> 15) & 0x1) == 0) + if (((word >> 12) & 0x1) == 0) { - if (((word >> 28) & 0x1) == 0) + if (((word >> 13) & 0x1) == 0) { - if (((word >> 29) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - if (((word >> 30) & 0x1) == 0) + if (((word >> 29) & 0x1) == 0) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx000000xxxxx1xx0111000x - saddl. */ - return 38; + xxxxxxxxxx1000x0xxxxx010011100xx + fmaxnm. */ + return 285; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx000000xxxxx1xx0111001x - saddl2. */ - return 39; + xxxxxxxxxx1000x0xxxxx010011101xx + fmaxnmp. */ + return 336; } } else { - if (((word >> 30) & 0x1) == 0) + if (((word >> 29) & 0x1) == 0) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx000000xxxxx1xx0111010x - uaddl. */ - return 70; + xxxxxxxxxx1000x0xxxxx011011100xx + fminnm. */ + return 301; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx000000xxxxx1xx0111011x - uaddl2. */ - return 71; + xxxxxxxxxx1000x0xxxxx011011101xx + fminnmp. */ + return 352; } } } else { - if (((word >> 16) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - if (((word >> 17) & 0x1) == 0) + if (((word >> 29) & 0x1) == 0) { - if (((word >> 18) & 0x1) == 0) - { - if (((word >> 19) & 0x1) == 0) - { - if (((word >> 20) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx000000000001xx01111xxx - fcvtns. */ - return 600; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx000000000011xx01111xxx - fcvtms. */ - return 610; - } - } - else - { - if (((word >> 20) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx000000000101xx01111xxx - fcvtps. */ - return 608; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx000000000111xx01111xxx - fcvtzs. */ - return 612; - } - } - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx000000001xx1xx01111xxx - fcvtas. */ - return 604; - } + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1001x0xxxxx010011100xx + fcmeq. */ + return 293; } else { - if (((word >> 18) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx000000010xx1xx01111xxx - scvtf. */ - return 602; + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1001x0xxxxx010011101xx + fcmge. */ + return 342; + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1001x0xxxxx01101110xxx + fcmgt. */ + return 356; + } + } + } + else + { + if (((word >> 13) & 0x1) == 0) + { + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1010x0xxxxx010011100xx + fadd. */ + return 289; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1010x0xxxxx010011101xx + faddp. */ + return 338; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1010x0xxxxx011011100xx + fsub. */ + return 305; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1010x0xxxxx011011101xx + fabd. */ + return 354; + } + } + } + else + { + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1011x0xxxxx010011100xx + fmax. */ + return 295; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1011x0xxxxx010011101xx + fmaxp. */ + return 346; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1011x0xxxxx011011100xx + fmin. */ + return 307; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1011x0xxxxx011011101xx + fminp. */ + return 360; + } + } + } + } + } + else + { + if (((word >> 12) & 0x1) == 0) + { + if (((word >> 13) & 0x1) == 0) + { + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1100x0xxxxx01001110xxx + fmla. */ + return 287; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1100x0xxxxx01101110xxx + fmls. */ + return 303; + } + } + else + { + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1101x0xxxxx01001110xxx + facge. */ + return 344; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1101x0xxxxx01101110xxx + facgt. */ + return 358; + } + } + } + else + { + if (((word >> 13) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1110x0xxxxx01x011100xx + fmulx. */ + return 291; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1110x0xxxxx01x011101xx + fmul. */ + return 340; + } + } + else + { + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1111x0xxxxx010011100xx + frecps. */ + return 297; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1111x0xxxxx010011101xx + fdiv. */ + return 348; + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx1111x0xxxxx01101110xxx + frsqrts. */ + return 309; + } + } + } + } + } + } + else + { + if (((word >> 11) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx10xxx1xxxxx0xx01110xxx + sqrdmlah. */ + return 363; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx11xxx1xxxxx0xx01110xxx + sqrdmlsh. */ + return 364; + } + } + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + if (((word >> 30) & 0x1) == 0) + { + if (((word >> 16) & 0x1) == 0) + { + if (((word >> 17) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxxxxxxx00xxx0xx0111100x + fcvtzs. */ + return 718; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxxxxxxx01xxx0xx0111100x + scvtf. */ + return 714; + } + } + else + { + if (((word >> 17) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxxxxxxx10xxx0xx0111100x + fcvtzu. */ + return 720; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxxxxxxx11xxx0xx0111100x + ucvtf. */ + return 716; + } + } + } + else + { + if (((word >> 10) & 0x1) == 0) + { + if (((word >> 12) & 0x1) == 0) + { + if (((word >> 13) & 0x1) == 0) + { + if (((word >> 14) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x000xxxxxx0xx0111101x + sha1c. */ + return 657; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x001xxxxxx0xx0111101x + sha256h. */ + return 661; + } + } + else + { + if (((word >> 14) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x010xxxxxx0xx0111101x + sha1m. */ + return 659; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x011xxxxxx0xx0111101x + sha256su1. */ + return 663; + } + } + } + else + { + if (((word >> 13) & 0x1) == 0) + { + if (((word >> 14) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x100xxxxxx0xx0111101x + sha1p. */ + return 658; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x101xxxxxx0xx0111101x + sha256h2. */ + return 662; + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x11xxxxxxx0xx0111101x + sha1su0. */ + return 660; + } + } + } + else + { + if (((word >> 11) & 0x1) == 0) + { + if (((word >> 13) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx10x0xxxxxxx0xx0111101x + dup. */ + return 526; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx10x1xxxxxxx0xx0111101x + fcmeq. */ + return 547; + } + } + else + { + if (((word >> 13) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx11x0xxxxxxx0xx0111101x + fmulx. */ + return 545; + } + else + { + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx11x1xxxxxxx0x00111101x + frecps. */ + return 549; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx11x1xxxxxxx0x10111101x + frsqrts. */ + return 551; + } + } + } + } + } + } + else + { + if (((word >> 11) & 0x1) == 0) + { + if (((word >> 12) & 0x1) == 0) + { + if (((word >> 13) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxx000xxxxxxx0xx011111xx + sqrdmlah. */ + return 579; + } + else + { + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxx001xxxxxxx0x0011111xx + fcmge. */ + return 564; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxx001xxxxxxx0x1011111xx + fcmgt. */ + return 570; + } + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxx01xxxxxxxx0xx011111xx + fabd. */ + return 568; + } + } + else + { + if (((word >> 13) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxx1x0xxxxxxx0xx011111xx + sqrdmlsh. */ + return 580; + } + else + { + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxx1x1xxxxxxx0x0011111xx + facge. */ + return 566; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxxx1x1xxxxxxx0x1011111xx + facgt. */ + return 572; + } + } + } + } + } + } + else + { + if (((word >> 10) & 0x1) == 0) + { + if (((word >> 11) & 0x1) == 0) + { + if (((word >> 12) & 0x1) == 0) + { + if (((word >> 13) & 0x1) == 0) + { + if (((word >> 14) & 0x1) == 0) + { + if (((word >> 15) & 0x1) == 0) + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + if (((word >> 30) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000xxxxx1xx0111000x + saddl. */ + return 42; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000xxxxx1xx0111001x + saddl2. */ + return 43; + } + } + else + { + if (((word >> 30) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000xxxxx1xx0111010x + uaddl. */ + return 74; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000xxxxx1xx0111011x + uaddl2. */ + return 75; + } + } + } + else + { + if (((word >> 16) & 0x1) == 0) + { + if (((word >> 17) & 0x1) == 0) + { + if (((word >> 18) & 0x1) == 0) + { + if (((word >> 19) & 0x1) == 0) + { + if (((word >> 20) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000000001xx01111xxx + fcvtns. */ + return 722; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000000011xx01111xxx + fcvtms. */ + return 742; + } + } + else + { + if (((word >> 20) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000000101xx01111xxx + fcvtps. */ + return 738; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000000111xx01111xxx + fcvtzs. */ + return 746; + } + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000001xx1xx01111xxx + fcvtas. */ + return 730; + } + } + else + { + if (((word >> 18) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx000000010xx1xx01111xxx + scvtf. */ + return 726; } else { @@ -4177,7 +4584,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0000000110x1xx01111xxx fmov. */ - return 606; + return 734; } else { @@ -4185,7 +4592,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0000000111x1xx01111xxx fmov. */ - return 614; + return 750; } } } @@ -4204,7 +4611,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000100001xx01111xxx fcvtnu. */ - return 601; + return 724; } else { @@ -4212,7 +4619,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000100011xx01111xxx fcvtmu. */ - return 611; + return 744; } } else @@ -4223,7 +4630,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000100101xx01111xxx fcvtpu. */ - return 609; + return 740; } else { @@ -4231,7 +4638,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000100111xx01111xxx fcvtzu. */ - return 613; + return 748; } } } @@ -4241,7 +4648,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000101xx1xx01111xxx fcvtau. */ - return 605; + return 732; } } else @@ -4252,7 +4659,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000000110xx1xx01111xxx ucvtf. */ - return 603; + return 728; } else { @@ -4262,7 +4669,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0000001110x1xx01111xxx fmov. */ - return 607; + return 736; } else { @@ -4270,7 +4677,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0000001111x1xx01111xxx fmov. */ - return 615; + return 751; } } } @@ -4287,7 +4694,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx1xx0111x00x smlal. */ - return 54; + return 58; } else { @@ -4295,7 +4702,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx1xx0111x01x smlal2. */ - return 55; + return 59; } } else @@ -4306,7 +4713,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx1xx0111x10x umlal. */ - return 86; + return 90; } else { @@ -4314,7 +4721,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000001xxxxx1xx0111x11x umlal2. */ - return 87; + return 91; } } } @@ -4333,7 +4740,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010xxxxx1xx0111000x addhn. */ - return 46; + return 50; } else { @@ -4341,7 +4748,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010xxxxx1xx0111001x addhn2. */ - return 47; + return 51; } } else @@ -4352,7 +4759,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010xxxxx1xx0111010x raddhn. */ - return 78; + return 82; } else { @@ -4360,7 +4767,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010xxxxx1xx0111011x raddhn2. */ - return 79; + return 83; } } } @@ -4374,7 +4781,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011xxxxx1xx0111000x smull. */ - return 62; + return 66; } else { @@ -4382,7 +4789,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011xxxxx1xx0111001x smull2. */ - return 63; + return 67; } } else @@ -4393,7 +4800,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011xxxxx1xx0111010x umull. */ - return 90; + return 94; } else { @@ -4401,7 +4808,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011xxxxx1xx0111011x umull2. */ - return 91; + return 95; } } } @@ -4420,7 +4827,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010000xx1xx01111xxx fmov. */ - return 622; + return 764; } else { @@ -4428,7 +4835,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010001xx1xx01111xxx frintn. */ - return 627; + return 773; } } else @@ -4439,7 +4846,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010100xx1xx01111xxx fneg. */ - return 624; + return 768; } else { @@ -4447,7 +4854,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010101xx1xx01111xxx frintm. */ - return 629; + return 777; } } } @@ -4461,7 +4868,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011000xx1xx01111xxx fabs. */ - return 623; + return 766; } else { @@ -4469,7 +4876,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011001xx1xx01111xxx frintp. */ - return 628; + return 775; } } else @@ -4480,7 +4887,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011100xx1xx01111xxx fsqrt. */ - return 625; + return 770; } else { @@ -4488,7 +4895,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011101xx1xx01111xxx frintz. */ - return 630; + return 779; } } } @@ -4501,7 +4908,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00001xx10xx1xx01111xxx fcvt. */ - return 626; + return 772; } else { @@ -4513,7 +4920,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010011xx1xx01111xxx frinta. */ - return 631; + return 781; } else { @@ -4521,7 +4928,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000010111xx1xx01111xxx frintx. */ - return 632; + return 783; } } else @@ -4530,7 +4937,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000011x11xx1xx01111xxx frinti. */ - return 633; + return 785; } } } @@ -4553,7 +4960,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000100xxxxx1xx0111000x ssubl. */ - return 42; + return 46; } else { @@ -4561,7 +4968,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000100xxxxx1xx0111001x ssubl2. */ - return 43; + return 47; } } else @@ -4572,7 +4979,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000100xxxxx1xx0111010x usubl. */ - return 74; + return 78; } else { @@ -4580,7 +4987,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000100xxxxx1xx0111011x usubl2. */ - return 75; + return 79; } } } @@ -4594,7 +5001,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxx00xxxxx000100xxxxx1xx01111xxx fcmp. */ - return 618; + return 756; } else { @@ -4602,7 +5009,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxx01xxxxx000100xxxxx1xx01111xxx fcmpe. */ - return 619; + return 758; } } else @@ -4613,7 +5020,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxx10xxxxx000100xxxxx1xx01111xxx fcmp. */ - return 620; + return 760; } else { @@ -4621,7 +5028,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxx11xxxxx000100xxxxx1xx01111xxx fcmpe. */ - return 621; + return 762; } } } @@ -4636,7 +5043,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000101xxxxx1xx0111x00x smlsl. */ - return 58; + return 62; } else { @@ -4644,7 +5051,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000101xxxxx1xx0111x01x smlsl2. */ - return 59; + return 63; } } else @@ -4655,7 +5062,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000101xxxxx1xx0111x10x umlsl. */ - return 88; + return 92; } else { @@ -4663,7 +5070,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000101xxxxx1xx0111x11x umlsl2. */ - return 89; + return 93; } } } @@ -4680,7 +5087,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000110xxxxx1xx0111x00x subhn. */ - return 50; + return 54; } else { @@ -4688,7 +5095,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000110xxxxx1xx0111x01x subhn2. */ - return 51; + return 55; } } else @@ -4699,7 +5106,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000110xxxxx1xx0111x10x rsubhn. */ - return 82; + return 86; } else { @@ -4707,7 +5114,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000110xxxxx1xx0111x11x rsubhn2. */ - return 83; + return 87; } } } @@ -4721,7 +5128,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000111xxxxx10x0111xx0x pmull. */ - return 66; + return 70; } else { @@ -4729,7 +5136,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000111xxxxx10x0111xx1x pmull2. */ - return 68; + return 72; } } else @@ -4740,7 +5147,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000111xxxxx11x0111xx0x pmull. */ - return 67; + return 71; } else { @@ -4748,7 +5155,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx000111xxxxx11x0111xx1x pmull2. */ - return 69; + return 73; } } } @@ -4773,7 +5180,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001000xxxxx1xx0111000x saddw. */ - return 40; + return 44; } else { @@ -4781,7 +5188,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001000xxxxx1xx0111001x saddw2. */ - return 41; + return 45; } } else @@ -4792,7 +5199,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001000xxxxx1xx0111010x uaddw. */ - return 72; + return 76; } else { @@ -4800,7 +5207,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001000xxxxx1xx0111011x uaddw2. */ - return 73; + return 77; } } } @@ -4812,7 +5219,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001001xxxxx1xx01110x0x sqdmlal. */ - return 56; + return 60; } else { @@ -4820,7 +5227,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001001xxxxx1xx01110x1x sqdmlal2. */ - return 57; + return 61; } } } @@ -4836,7 +5243,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001010xxxxx1xx0111000x sabal. */ - return 48; + return 52; } else { @@ -4844,7 +5251,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001010xxxxx1xx0111001x sabal2. */ - return 49; + return 53; } } else @@ -4855,7 +5262,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001010xxxxx1xx0111010x uabal. */ - return 80; + return 84; } else { @@ -4863,7 +5270,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001010xxxxx1xx0111011x uabal2. */ - return 81; + return 85; } } } @@ -4875,7 +5282,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001011xxxxx1xx01110x0x sqdmull. */ - return 64; + return 68; } else { @@ -4883,7 +5290,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001011xxxxx1xx01110x1x sqdmull2. */ - return 65; + return 69; } } } @@ -4902,7 +5309,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001100xxxxx1xx0111000x ssubw. */ - return 44; + return 48; } else { @@ -4910,7 +5317,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001100xxxxx1xx0111001x ssubw2. */ - return 45; + return 49; } } else @@ -4921,7 +5328,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001100xxxxx1xx0111010x usubw. */ - return 76; + return 80; } else { @@ -4929,7 +5336,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001100xxxxx1xx0111011x usubw2. */ - return 77; + return 81; } } } @@ -4941,7 +5348,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001101xxxxx1xx01110x0x sqdmlsl. */ - return 60; + return 64; } else { @@ -4949,7 +5356,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001101xxxxx1xx01110x1x sqdmlsl2. */ - return 61; + return 65; } } } @@ -4963,7 +5370,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx1xx0111000x sabdl. */ - return 52; + return 56; } else { @@ -4971,7 +5378,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx1xx0111001x sabdl2. */ - return 53; + return 57; } } else @@ -4982,7 +5389,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx1xx0111010x uabdl. */ - return 84; + return 88; } else { @@ -4990,7 +5397,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00111xxxxxx1xx0111011x uabdl2. */ - return 85; + return 89; } } } @@ -5004,7 +5411,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx001xxxxxxxx1xx01111x0x fmov. */ - return 647; + return 813; } else { @@ -5016,7 +5423,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00100xxxxxx1xx01111x1x sqdmlal. */ - return 343; + return 413; } else { @@ -5024,7 +5431,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx00101xxxxxx1xx01111x1x sqdmull. */ - return 345; + return 415; } } else @@ -5033,7 +5440,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0011xxxxxxx1xx01111x1x sqdmlsl. */ - return 344; + return 414; } } } @@ -5057,7 +5464,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010000xxxxx1xx011100xx rev64. */ - return 144; + return 155; } else { @@ -5065,7 +5472,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010000xxxxx1xx011101xx rev32. */ - return 180; + return 206; } } else @@ -5076,7 +5483,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010000xxxxx1xx01111x0x fmul. */ - return 634; + return 787; } else { @@ -5084,7 +5491,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010000xxxxx1xx01111x1x sha1h. */ - return 537; + return 654; } } } @@ -5100,7 +5507,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100010xxxx1xx011100xx cmgt. */ - return 152; + return 163; } else { @@ -5108,37 +5515,70 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100010xxxx1xx011101xx cmge. */ - return 186; + return 212; } } else { - if (((word >> 23) & 0x1) == 0) + if (((word >> 19) & 0x1) == 0) { - if (((word >> 29) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0100011xxxx1x0011100xx - frintn. */ - return 164; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100011xx0x1x0011100xx + frintn. */ + return 175; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100011xx0x1x0011101xx + frinta. */ + return 223; + } } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100011xxxx1x0011101xx - frinta. */ - return 197; + xxxxxxxxxx0100011xx0x1x101110xxx + frintp. */ + return 195; } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0100011xxxx1x101110xxx - frintp. */ - return 174; + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100011xx1x1x0011100xx + frintn. */ + return 176; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100011xx1x1x0011101xx + frinta. */ + return 224; + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100011xx1x1x101110xxx + frintp. */ + return 196; + } } } } @@ -5152,7 +5592,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010001xxxxx1xx0111100x fnmul. */ - return 642; + return 803; } else { @@ -5160,7 +5600,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010001xxxxx1xx0111101x cmgt. */ - return 397; + return 473; } } else @@ -5169,7 +5609,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010001xxxxx1xx011111xx cmge. */ - return 415; + return 502; } } } @@ -5190,7 +5630,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100100xx0x1xx011100xx cls. */ - return 148; + return 159; } else { @@ -5198,7 +5638,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100100xx0x1xx011101xx clz. */ - return 183; + return 209; } } else @@ -5207,7 +5647,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100100xx1x1xx01110xxx aese. */ - return 533; + return 650; } } else @@ -5220,7 +5660,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100101xxxx1xx0111000x sqxtn. */ - return 158; + return 169; } else { @@ -5228,7 +5668,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100101xxxx1xx0111001x sqxtn2. */ - return 159; + return 170; } } else @@ -5239,7 +5679,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100101xxxx1xx0111010x uqxtn. */ - return 193; + return 219; } else { @@ -5247,7 +5687,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0100101xxxx1xx0111011x uqxtn2. */ - return 194; + return 220; } } } @@ -5262,7 +5702,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010010xxxxx1xx0111100x fmax. */ - return 638; + return 795; } else { @@ -5270,7 +5710,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010010xxxxx1xx0111101x sqxtn. */ - return 401; + return 477; } } else @@ -5279,7 +5719,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010010xxxxx1xx011111xx uqxtn. */ - return 419; + return 506; } } } @@ -5287,7 +5727,136 @@ aarch64_opcode_lookup_1 (uint32_t word) { if (((word >> 16) & 0x1) == 0) { - if (((word >> 20) & 0x1) == 0) + if (((word >> 19) & 0x1) == 0) + { + if (((word >> 20) & 0x1) == 0) + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx001xx011100xx + fcmgt. */ + return 187; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx001xx011101xx + fcmge. */ + return 238; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx001xx011110xx + fcmgt. */ + return 486; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx001xx011111xx + fcmge. */ + return 516; + } + } + } + else + { + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x0011100xx + fmaxnmv. */ + return 35; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x0011101xx + fmaxnmv. */ + return 34; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x0011110xx + fmaxnmp. */ + return 530; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x0011111xx + fmaxnmp. */ + return 529; + } + } + } + else + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x1011100xx + fminnmv. */ + return 39; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x1011101xx + fminnmv. */ + return 38; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x1011110xx + fminnmp. */ + return 536; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100110xx011x1011111xx + fminnmp. */ + return 535; + } + } + } + } + } + else { if (((word >> 28) & 0x1) == 0) { @@ -5295,17 +5864,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx01xx011100xx + xxxxxxxxxx0100110xx1x1xx011100xx fcmgt. */ - return 170; + return 188; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx01xx011101xx + xxxxxxxxxx0100110xx1x1xx011101xx fcmge. */ - return 206; + return 239; } } else @@ -5314,65 +5883,87 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx01xx011110xx + xxxxxxxxxx0100110xx1x1xx011110xx fcmgt. */ - return 406; + return 487; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx01xx011111xx + xxxxxxxxxx0100110xx1x1xx011111xx fcmge. */ - return 425; + return 517; } } } - else + } + else + { + if (((word >> 19) & 0x1) == 0) { if (((word >> 23) & 0x1) == 0) { if (((word >> 28) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx11x001110xxx - fmaxnmv. */ - return 34; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100111xx0x1x0011100xx + fcvtas. */ + return 183; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100111xx0x1x0011101xx + fcvtau. */ + return 231; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx11x001111xxx - fmaxnmp. */ - return 433; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100111xx0x1x0011110xx + fcvtas. */ + return 482; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0100111xx0x1x0011111xx + fcvtau. */ + return 512; + } } } else { - if (((word >> 28) & 0x1) == 0) + if (((word >> 29) & 0x1) == 0) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx11x101110xxx - fminnmv. */ - return 36; + xxxxxxxxxx0100111xx0x1x10111x0xx + urecpe. */ + return 203; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100110xxx11x101111xxx - fminnmp. */ - return 436; + xxxxxxxxxx0100111xx0x1x10111x1xx + ursqrte. */ + return 250; } } } - } - else - { - if (((word >> 23) & 0x1) == 0) + else { if (((word >> 28) & 0x1) == 0) { @@ -5380,17 +5971,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100111xxxx1x0011100xx + xxxxxxxxxx0100111xx1x1xx011100xx fcvtas. */ - return 168; + return 184; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100111xxxx1x0011101xx + xxxxxxxxxx0100111xx1x1xx011101xx fcvtau. */ - return 201; + return 232; } } else @@ -5399,39 +5990,20 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100111xxxx1x0011110xx + xxxxxxxxxx0100111xx1x1xx011110xx fcvtas. */ - return 404; + return 483; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0100111xxxx1x0011111xx + xxxxxxxxxx0100111xx1x1xx011111xx fcvtau. */ - return 423; + return 513; } } } - else - { - if (((word >> 29) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0100111xxxx1x10111x0xx - urecpe. */ - return 178; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0100111xxxx1x10111x1xx - ursqrte. */ - return 212; - } - } } } } @@ -5452,7 +6024,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101000xxxx1xx011100xx saddlp. */ - return 146; + return 157; } else { @@ -5460,7 +6032,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101000xxxx1xx011101xx uaddlp. */ - return 181; + return 207; } } else @@ -5473,7 +6045,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101001xxxx1xx0111000x xtn. */ - return 156; + return 167; } else { @@ -5481,7 +6053,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101001xxxx1xx0111001x xtn2. */ - return 157; + return 168; } } else @@ -5492,7 +6064,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101001xxxx1xx0111010x sqxtun. */ - return 189; + return 215; } else { @@ -5500,7 +6072,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101001xxxx1xx0111011x sqxtun2. */ - return 190; + return 216; } } } @@ -5515,7 +6087,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010100xxxxx1xx0111100x fadd. */ - return 636; + return 791; } else { @@ -5523,7 +6095,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010100xxxxx1xx0111101x sha256su0. */ - return 539; + return 656; } } else @@ -5532,7 +6104,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010100xxxxx1xx011111xx sqxtun. */ - return 418; + return 505; } } } @@ -5548,7 +6120,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101010xxx01xx01110xxx cmlt. */ - return 154; + return 165; } else { @@ -5556,7 +6128,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101010xxx01xx01111xxx cmlt. */ - return 399; + return 475; } } else @@ -5571,17 +6143,124 @@ aarch64_opcode_lookup_1 (uint32_t word) } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0101010xxx11xx0111x1xx - umaxv. */ - return 32; + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101010xxx11xx0111x1xx + umaxv. */ + return 32; + } + } + } + else + { + if (((word >> 19) & 0x1) == 0) + { + if (((word >> 20) & 0x1) == 0) + { + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x0011100xx + fcvtns. */ + return 179; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x0011101xx + fcvtnu. */ + return 227; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x0011110xx + fcvtns. */ + return 478; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x0011111xx + fcvtnu. */ + return 508; + } + } + } + else + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x1011100xx + fcvtps. */ + return 199; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x1011101xx + fcvtpu. */ + return 246; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x1011110xx + fcvtps. */ + return 492; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx001x1011111xx + fcvtpu. */ + return 520; + } + } + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx011xx0111x0xx + sminv. */ + return 29; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0101011xx011xx0111x1xx + uminv. */ + return 33; + } } } - } - else - { - if (((word >> 20) & 0x1) == 0) + else { if (((word >> 23) & 0x1) == 0) { @@ -5591,17 +6270,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x0011100xx + xxxxxxxxxx0101011xx1x1x0011100xx fcvtns. */ - return 166; + return 180; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x0011101xx + xxxxxxxxxx0101011xx1x1x0011101xx fcvtnu. */ - return 199; + return 228; } } else @@ -5610,17 +6289,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x0011110xx + xxxxxxxxxx0101011xx1x1x0011110xx fcvtns. */ - return 402; + return 479; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x0011111xx + xxxxxxxxxx0101011xx1x1x0011111xx fcvtnu. */ - return 421; + return 509; } } } @@ -5632,17 +6311,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x1011100xx + xxxxxxxxxx0101011xx1x1x1011100xx fcvtps. */ - return 176; + return 200; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x1011101xx + xxxxxxxxxx0101011xx1x1x1011101xx fcvtpu. */ - return 210; + return 247; } } else @@ -5651,40 +6330,21 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x1011110xx + xxxxxxxxxx0101011xx1x1x1011110xx fcvtps. */ - return 409; + return 493; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx01x1011111xx + xxxxxxxxxx0101011xx1x1x1011111xx fcvtpu. */ - return 427; + return 521; } } } } - else - { - if (((word >> 29) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx11xx0111x0xx - sminv. */ - return 29; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0101011xxx11xx0111x1xx - uminv. */ - return 33; - } - } } } } @@ -5704,7 +6364,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101100xx0x1xx011100xx sadalp. */ - return 150; + return 161; } else { @@ -5712,7 +6372,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101100xx0x1xx011101xx uadalp. */ - return 184; + return 210; } } else @@ -5721,7 +6381,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101100xx1x1xx01110xxx aesmc. */ - return 535; + return 652; } } else @@ -5734,7 +6394,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101101xxxx1xx0111000x fcvtn. */ - return 160; + return 171; } else { @@ -5742,7 +6402,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101101xxxx1xx0111001x fcvtn2. */ - return 161; + return 172; } } else @@ -5753,7 +6413,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101101xxxx1xx0111010x fcvtxn. */ - return 195; + return 221; } else { @@ -5761,7 +6421,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0101101xxxx1xx0111011x fcvtxn2. */ - return 196; + return 222; } } } @@ -5774,7 +6434,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010110xxxxx1xx011110xx fmaxnm. */ - return 640; + return 799; } else { @@ -5782,27 +6442,49 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx010110xxxxx1xx011111xx fcvtxn. */ - return 420; + return 507; } } } else { - if (((word >> 28) & 0x1) == 0) + if (((word >> 19) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx010111xxxxx1xx01110xxx - fcmlt. */ - return 172; + if (((word >> 28) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx010111xxx0x1xx01110xxx + fcmlt. */ + return 191; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx010111xxx0x1xx01111xxx + fcmlt. */ + return 490; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx010111xxxxx1xx01111xxx - fcmlt. */ - return 408; + if (((word >> 28) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx010111xxx1x1xx01110xxx + fcmlt. */ + return 192; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx010111xxx1x1xx01111xxx + fcmlt. */ + return 491; + } } } } @@ -5822,7 +6504,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011000xxxxx1xx01110xxx rev16. */ - return 145; + return 156; } else { @@ -5832,7 +6514,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011000xxxxx1xx01111x0x fdiv. */ - return 635; + return 789; } else { @@ -5840,7 +6522,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011000xxxxx1xx01111x1x sha1su1. */ - return 538; + return 655; } } } @@ -5856,7 +6538,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0110010xxxx1xx011100xx cmeq. */ - return 153; + return 164; } else { @@ -5864,7 +6546,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0110010xxxx1xx011101xx cmle. */ - return 187; + return 213; } } else @@ -5875,7 +6557,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0110010xxxx1xx011110xx cmeq. */ - return 398; + return 474; } else { @@ -5883,48 +6565,92 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0110010xxxx1xx011111xx cmle. */ - return 416; + return 503; } } } else { - if (((word >> 23) & 0x1) == 0) + if (((word >> 19) & 0x1) == 0) { - if (((word >> 29) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110011xxxx1x00111x0xx - frintm. */ - return 165; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx0x1x00111x0xx + frintm. */ + return 177; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx0x1x00111x1xx + frintx. */ + return 225; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110011xxxx1x00111x1xx - frintx. */ - return 198; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx0x1x10111x0xx + frintz. */ + return 197; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx0x1x10111x1xx + frinti. */ + return 244; + } } } else { - if (((word >> 29) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110011xxxx1x10111x0xx - frintz. */ - return 175; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx1x1x00111x0xx + frintm. */ + return 178; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx1x1x00111x1xx + frintx. */ + return 226; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110011xxxx1x10111x1xx - frinti. */ - return 209; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx1x1x10111x0xx + frintz. */ + return 198; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110011xx1x1x10111x1xx + frinti. */ + return 245; + } } } } @@ -5944,7 +6670,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011010xxx0x1xx011100xx cnt. */ - return 149; + return 160; } else { @@ -5954,7 +6680,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011010xxx0x10x011101xx not. */ - return 203; + return 235; } else { @@ -5962,7 +6688,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011010xxx0x11x011101xx rbit. */ - return 205; + return 237; } } } @@ -5972,7 +6698,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011010xxx1x1xx01110xxx aesd. */ - return 534; + return 651; } } else @@ -5981,14 +6707,77 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011010xxxxx1xx01111xxx fmin. */ - return 639; + return 797; } } else { if (((word >> 16) & 0x1) == 0) { - if (((word >> 20) & 0x1) == 0) + if (((word >> 19) & 0x1) == 0) + { + if (((word >> 20) & 0x1) == 0) + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110110xx001xx011100xx + fcmeq. */ + return 189; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110110xx001xx011101xx + fcmle. */ + return 240; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110110xx001xx011110xx + fcmeq. */ + return 488; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110110xx001xx011111xx + fcmle. */ + return 518; + } + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110110xx011xx0111x0xx + faddp. */ + return 532; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110110xx011xx0111x1xx + faddp. */ + return 531; + } + } + } + else { if (((word >> 28) & 0x1) == 0) { @@ -5996,17 +6785,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0110110xxx01xx011100xx + xxxxxxxxxx0110110xx1x1xx011100xx fcmeq. */ - return 171; + return 190; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0110110xxx01xx011101xx + xxxxxxxxxx0110110xx1x1xx011101xx fcmle. */ - return 207; + return 241; } } else @@ -6015,110 +6804,190 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0110110xxx01xx011110xx + xxxxxxxxxx0110110xx1x1xx011110xx fcmeq. */ - return 407; + return 489; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0110110xxx01xx011111xx + xxxxxxxxxx0110110xx1x1xx011111xx fcmle. */ - return 426; + return 519; } } } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110110xxx11xx0111xxxx - faddp. */ - return 434; - } } else { - if (((word >> 23) & 0x1) == 0) + if (((word >> 19) & 0x1) == 0) { - if (((word >> 28) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - if (((word >> 29) & 0x1) == 0) + if (((word >> 28) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x0011100xx - scvtf. */ - return 169; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x0011100xx + scvtf. */ + return 185; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x0011101xx + ucvtf. */ + return 233; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x0011101xx - ucvtf. */ - return 202; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x0011110xx + scvtf. */ + return 484; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x0011111xx + ucvtf. */ + return 514; + } } } else { - if (((word >> 29) & 0x1) == 0) + if (((word >> 28) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x0011110xx - scvtf. */ - return 405; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x1011100xx + frecpe. */ + return 204; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x1011101xx + frsqrte. */ + return 251; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x0011111xx - ucvtf. */ - return 424; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x1011110xx + frecpe. */ + return 496; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx0x1x1011111xx + frsqrte. */ + return 524; + } } } } else { - if (((word >> 28) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - if (((word >> 29) & 0x1) == 0) + if (((word >> 28) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x1011100xx - frecpe. */ - return 179; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x0011100xx + scvtf. */ + return 186; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x0011101xx + ucvtf. */ + return 234; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x1011101xx - frsqrte. */ - return 213; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x0011110xx + scvtf. */ + return 485; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x0011111xx + ucvtf. */ + return 515; + } } } else { - if (((word >> 29) & 0x1) == 0) + if (((word >> 28) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x1011110xx - frecpe. */ - return 411; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x1011100xx + frecpe. */ + return 205; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x1011101xx + frsqrte. */ + return 252; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0110111xxxx1x1011111xx - frsqrte. */ - return 429; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x1011110xx + frecpe. */ + return 497; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0110111xx1x1x1011111xx + frsqrte. */ + return 525; + } } } } @@ -6144,7 +7013,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111000xxx01xx011100xx suqadd. */ - return 147; + return 158; } else { @@ -6152,7 +7021,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111000xxx01xx011101xx usqadd. */ - return 182; + return 208; } } else @@ -6183,7 +7052,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111001xxxx1xx01110x0x shll. */ - return 191; + return 217; } else { @@ -6191,7 +7060,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111001xxxx1xx01110x1x shll2. */ - return 192; + return 218; } } } @@ -6205,7 +7074,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011100xxxxx1xx0111100x fsub. */ - return 637; + return 793; } else { @@ -6213,7 +7082,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011100xxxxx1xx0111101x suqadd. */ - return 395; + return 471; } } else @@ -6222,7 +7091,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011100xxxxx1xx011111xx usqadd. */ - return 413; + return 500; } } } @@ -6238,7 +7107,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111010xxxx1xx011100xx abs. */ - return 155; + return 166; } else { @@ -6246,7 +7115,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111010xxxx1xx011101xx neg. */ - return 188; + return 214; } } else @@ -6257,7 +7126,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111010xxxx1xx011110xx abs. */ - return 400; + return 476; } else { @@ -6265,13 +7134,120 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111010xxxx1xx011111xx neg. */ - return 417; + return 504; } } } else { - if (((word >> 20) & 0x1) == 0) + if (((word >> 19) & 0x1) == 0) + { + if (((word >> 20) & 0x1) == 0) + { + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x0011100xx + fcvtms. */ + return 181; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x0011101xx + fcvtmu. */ + return 229; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x0011110xx + fcvtms. */ + return 480; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x0011111xx + fcvtmu. */ + return 510; + } + } + } + else + { + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x1011100xx + fcvtzs. */ + return 201; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x1011101xx + fcvtzu. */ + return 248; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x1011110xx + fcvtzs. */ + return 494; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx001x1011111xx + fcvtzu. */ + return 522; + } + } + } + } + else + { + if (((word >> 28) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx011xx01110xxx + addv. */ + return 30; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111011xx011xx01111xxx + addp. */ + return 528; + } + } + } + else { if (((word >> 23) & 0x1) == 0) { @@ -6281,17 +7257,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x0011100xx + xxxxxxxxxx0111011xx1x1x0011100xx fcvtms. */ - return 167; + return 182; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x0011101xx + xxxxxxxxxx0111011xx1x1x0011101xx fcvtmu. */ - return 200; + return 230; } } else @@ -6300,17 +7276,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x0011110xx + xxxxxxxxxx0111011xx1x1x0011110xx fcvtms. */ - return 403; + return 481; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x0011111xx + xxxxxxxxxx0111011xx1x1x0011111xx fcvtmu. */ - return 422; + return 511; } } } @@ -6322,17 +7298,17 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x1011100xx + xxxxxxxxxx0111011xx1x1x1011100xx fcvtzs. */ - return 177; + return 202; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x1011101xx + xxxxxxxxxx0111011xx1x1x1011101xx fcvtzu. */ - return 211; + return 249; } } else @@ -6341,40 +7317,21 @@ aarch64_opcode_lookup_1 (uint32_t word) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x1011110xx + xxxxxxxxxx0111011xx1x1x1011110xx fcvtzs. */ - return 410; + return 495; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx01x1011111xx + xxxxxxxxxx0111011xx1x1x1011111xx fcvtzu. */ - return 428; + return 523; } } } } - else - { - if (((word >> 28) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx11xx01110xxx - addv. */ - return 30; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111011xxx11xx01111xxx - addp. */ - return 432; - } - } } } } @@ -6394,7 +7351,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111100xx0x1xx011100xx sqabs. */ - return 151; + return 162; } else { @@ -6402,7 +7359,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111100xx0x1xx011101xx sqneg. */ - return 185; + return 211; } } else @@ -6411,7 +7368,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111100xx1x1xx01110xxx aesimc. */ - return 536; + return 653; } } else @@ -6422,7 +7379,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111101xxxx1xx01110x0x fcvtl. */ - return 162; + return 173; } else { @@ -6430,7 +7387,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0111101xxxx1xx01110x1x fcvtl2. */ - return 163; + return 174; } } } @@ -6444,7 +7401,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011110xxxxx1xx0111100x fminnm. */ - return 641; + return 801; } else { @@ -6452,7 +7409,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011110xxxxx1xx0111101x sqabs. */ - return 396; + return 472; } } else @@ -6461,7 +7418,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx011110xxxxx1xx011111xx sqneg. */ - return 414; + return 501; } } } @@ -6469,84 +7426,172 @@ aarch64_opcode_lookup_1 (uint32_t word) { if (((word >> 16) & 0x1) == 0) { - if (((word >> 20) & 0x1) == 0) - { - if (((word >> 29) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111110xxx01xx0111x0xx - fabs. */ - return 173; - } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111110xxx01xx0111x1xx - fneg. */ - return 208; - } - } - else + if (((word >> 19) & 0x1) == 0) { - if (((word >> 23) & 0x1) == 0) + if (((word >> 20) & 0x1) == 0) { - if (((word >> 28) & 0x1) == 0) + if (((word >> 29) & 0x1) == 0) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111110xxx11x001110xxx - fmaxv. */ - return 35; + xxxxxxxxxx0111110xx001xx0111x0xx + fabs. */ + return 193; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0111110xxx11x001111xxx - fmaxp. */ - return 435; + xxxxxxxxxx0111110xx001xx0111x1xx + fneg. */ + return 242; } } else { - if (((word >> 28) & 0x1) == 0) + if (((word >> 23) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111110xxx11x101110xxx - fminv. */ - return 37; + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x0011100xx + fmaxv. */ + return 37; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x0011101xx + fmaxv. */ + return 36; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x0011110xx + fmaxp. */ + return 534; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x0011111xx + fmaxp. */ + return 533; + } + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111110xxx11x101111xxx - fminp. */ - return 437; + if (((word >> 28) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x1011100xx + fminv. */ + return 41; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x1011101xx + fminv. */ + return 40; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x1011110xx + fminp. */ + return 538; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx011x1011111xx + fminp. */ + return 537; + } + } } } } - } - else - { - if (((word >> 28) & 0x1) == 0) - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111111xxxx1xx01110xxx - fsqrt. */ - return 214; - } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0111111xxxx1xx01111xxx - frecpx. */ - return 412; + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx1x1xx0111x0xx + fabs. */ + return 194; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111110xx1x1xx0111x1xx + fneg. */ + return 243; + } + } + } + else + { + if (((word >> 19) & 0x1) == 0) + { + if (((word >> 28) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111111xx0x1xx01110xxx + fsqrt. */ + return 253; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111111xx0x1xx01111xxx + frecpx. */ + return 498; + } + } + else + { + if (((word >> 28) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111111xx1x1xx01110xxx + fsqrt. */ + return 254; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0111111xx1x1xx01111xxx + frecpx. */ + return 499; + } } } } @@ -6575,7 +7620,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100000xxxxx1xx011100xx shadd. */ - return 221; + return 261; } else { @@ -6583,7 +7628,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100000xxxxx1xx011101xx uhadd. */ - return 261; + return 313; } } else @@ -6594,7 +7639,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100001xxxxx1xx011100xx add. */ - return 236; + return 276; } else { @@ -6602,7 +7647,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100001xxxxx1xx011101xx sub. */ - return 276; + return 328; } } } @@ -6616,7 +7661,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100010xxxxx1xx011100xx sshl. */ - return 228; + return 268; } else { @@ -6624,7 +7669,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100010xxxxx1xx011101xx ushl. */ - return 268; + return 320; } } else @@ -6637,7 +7682,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100011xxxxx1x0011100xx fmaxnm. */ - return 244; + return 284; } else { @@ -6645,7 +7690,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100011xxxxx1x0011101xx fmaxnmp. */ - return 283; + return 335; } } else @@ -6656,7 +7701,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100011xxxxx1x1011100xx fminnm. */ - return 253; + return 300; } else { @@ -6664,7 +7709,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100011xxxxx1x1011101xx fminnmp. */ - return 292; + return 351; } } } @@ -6682,7 +7727,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100100xxxxx1xx011100xx shsub. */ - return 224; + return 264; } else { @@ -6690,7 +7735,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100100xxxxx1xx011101xx uhsub. */ - return 264; + return 316; } } else @@ -6701,7 +7746,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100101xxxxx1xx011100xx smaxp. */ - return 240; + return 280; } else { @@ -6709,7 +7754,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100101xxxxx1xx011101xx umaxp. */ - return 280; + return 332; } } } @@ -6723,7 +7768,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100110xxxxx1xx011100xx smax. */ - return 232; + return 272; } else { @@ -6731,7 +7776,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100110xxxxx1xx011101xx umax. */ - return 272; + return 324; } } else @@ -6744,7 +7789,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100111xxxxx1x0011100xx fcmeq. */ - return 248; + return 292; } else { @@ -6752,7 +7797,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100111xxxxx1x0011101xx fcmge. */ - return 286; + return 341; } } else @@ -6761,7 +7806,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100111xxxxx1x101110xxx fcmgt. */ - return 294; + return 355; } } } @@ -6781,7 +7826,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101000xxxxx1xx011100xx srhadd. */ - return 223; + return 263; } else { @@ -6789,7 +7834,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101000xxxxx1xx011101xx urhadd. */ - return 263; + return 315; } } else @@ -6800,7 +7845,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101001xxxxx1xx011100xx mla. */ - return 238; + return 278; } else { @@ -6808,7 +7853,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101001xxxxx1xx011101xx mls. */ - return 278; + return 330; } } } @@ -6822,7 +7867,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101010xxxxx1xx011100xx srshl. */ - return 230; + return 270; } else { @@ -6830,7 +7875,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101010xxxxx1xx011101xx urshl. */ - return 270; + return 322; } } else @@ -6843,7 +7888,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101011xxxxx1x0011100xx fadd. */ - return 246; + return 288; } else { @@ -6851,7 +7896,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101011xxxxx1x0011101xx faddp. */ - return 284; + return 337; } } else @@ -6862,7 +7907,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101011xxxxx1x1011100xx fsub. */ - return 255; + return 304; } else { @@ -6870,7 +7915,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101011xxxxx1x1011101xx fabd. */ - return 293; + return 353; } } } @@ -6888,7 +7933,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101100xxxxx1xx011100xx cmgt. */ - return 226; + return 266; } else { @@ -6896,7 +7941,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101100xxxxx1xx011101xx cmhi. */ - return 266; + return 318; } } else @@ -6907,7 +7952,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101101xxxxx1xx011100xx sqdmulh. */ - return 242; + return 282; } else { @@ -6915,7 +7960,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101101xxxxx1xx011101xx sqrdmulh. */ - return 282; + return 334; } } } @@ -6929,7 +7974,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101110xxxxx1xx011100xx sabd. */ - return 234; + return 274; } else { @@ -6937,7 +7982,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101110xxxxx1xx011101xx uabd. */ - return 274; + return 326; } } else @@ -6950,7 +7995,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101111xxxxx1x0011100xx fmax. */ - return 249; + return 294; } else { @@ -6958,7 +8003,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101111xxxxx1x0011101xx fmaxp. */ - return 288; + return 345; } } else @@ -6969,7 +8014,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101111xxxxx1x1011100xx fmin. */ - return 256; + return 306; } else { @@ -6977,7 +8022,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101111xxxxx1x1011101xx fminp. */ - return 296; + return 359; } } } @@ -6997,7 +8042,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxx0xxxxx10xxxxxxxxx1xx0111100x fccmp. */ - return 616; + return 752; } else { @@ -7005,7 +8050,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxx1xxxxx10xxxxxxxxx1xx0111100x fccmpe. */ - return 617; + return 754; } } else @@ -7020,7 +8065,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10000xxxxxx1xx0111101x add. */ - return 451; + return 556; } else { @@ -7028,7 +8073,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10001xxxxxx1xx0111101x sshl. */ - return 449; + return 554; } } else @@ -7037,7 +8082,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1001xxxxxxx1xx0111101x fcmeq. */ - return 444; + return 546; } } else @@ -7048,7 +8093,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1010xxxxxxx1xx0111101x srshl. */ - return 450; + return 555; } else { @@ -7058,7 +8103,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1011x0xxxxx1xx0111101x cmgt. */ - return 447; + return 552; } else { @@ -7066,7 +8111,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1011x1xxxxx1xx0111101x sqdmulh. */ - return 442; + return 543; } } } @@ -7084,7 +8129,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10000xxxxxx1xx011111xx sub. */ - return 467; + return 577; } else { @@ -7092,7 +8137,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10001xxxxxx1xx011111xx ushl. */ - return 465; + return 575; } } else @@ -7103,7 +8148,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1001xxxxxxx1x0011111xx fcmge. */ - return 458; + return 563; } else { @@ -7111,7 +8156,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1001xxxxxxx1x1011111xx fcmgt. */ - return 461; + return 569; } } } @@ -7125,7 +8170,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1010x0xxxxx1xx011111xx urshl. */ - return 466; + return 576; } else { @@ -7133,7 +8178,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1010x1xxxxx1xx011111xx fabd. */ - return 460; + return 567; } } else @@ -7144,7 +8189,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1011x0xxxxx1xx011111xx cmhi. */ - return 463; + return 573; } else { @@ -7152,7 +8197,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1011x1xxxxx1xx011111xx sqrdmulh. */ - return 457; + return 562; } } } @@ -7177,7 +8222,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110000xxxxx1xx011100xx sqadd. */ - return 222; + return 262; } else { @@ -7185,7 +8230,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110000xxxxx1xx011101xx uqadd. */ - return 262; + return 314; } } else @@ -7196,7 +8241,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110001xxxxx1xx011100xx cmtst. */ - return 237; + return 277; } else { @@ -7204,7 +8249,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110001xxxxx1xx011101xx cmeq. */ - return 277; + return 329; } } } @@ -7218,7 +8263,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110010xxxxx1xx011100xx sqshl. */ - return 229; + return 269; } else { @@ -7226,7 +8271,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110010xxxxx1xx011101xx uqshl. */ - return 269; + return 321; } } else @@ -7237,7 +8282,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110011xxxxx1x001110xxx fmla. */ - return 245; + return 286; } else { @@ -7245,7 +8290,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110011xxxxx1x101110xxx fmls. */ - return 254; + return 302; } } } @@ -7262,7 +8307,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110100xxxxx1xx011100xx sqsub. */ - return 225; + return 265; } else { @@ -7270,7 +8315,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110100xxxxx1xx011101xx uqsub. */ - return 265; + return 317; } } else @@ -7281,7 +8326,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110101xxxxx1xx011100xx sminp. */ - return 241; + return 281; } else { @@ -7289,7 +8334,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110101xxxxx1xx011101xx uminp. */ - return 281; + return 333; } } } @@ -7303,7 +8348,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110110xxxxx1xx011100xx smin. */ - return 233; + return 273; } else { @@ -7311,7 +8356,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110110xxxxx1xx011101xx umin. */ - return 273; + return 325; } } else @@ -7322,7 +8367,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110111xxxxx1x001110xxx facge. */ - return 287; + return 343; } else { @@ -7330,7 +8375,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110111xxxxx1x101110xxx facgt. */ - return 295; + return 357; } } } @@ -7354,7 +8399,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx100011100xx and. */ - return 251; + return 298; } else { @@ -7362,7 +8407,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx100011101xx eor. */ - return 290; + return 349; } } else @@ -7373,7 +8418,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx101011100xx orr. */ - return 258; + return 310; } else { @@ -7381,7 +8426,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx101011101xx bit. */ - return 297; + return 361; } } } @@ -7395,7 +8440,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx110011100xx bic. */ - return 252; + return 299; } else { @@ -7403,7 +8448,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx110011101xx bsl. */ - return 291; + return 350; } } else @@ -7414,7 +8459,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx111011100xx orn. */ - return 260; + return 312; } else { @@ -7422,7 +8467,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111000xxxxx111011101xx bif. */ - return 298; + return 362; } } } @@ -7435,7 +8480,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111001xxxxx1xx011100xx mul. */ - return 239; + return 279; } else { @@ -7443,7 +8488,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111001xxxxx1xx011101xx pmul. */ - return 279; + return 331; } } } @@ -7457,7 +8502,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111010xxxxx1xx011100xx sqrshl. */ - return 231; + return 271; } else { @@ -7465,7 +8510,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111010xxxxx1xx011101xx uqrshl. */ - return 271; + return 323; } } else @@ -7476,7 +8521,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111011xxxxx1xx011100xx fmulx. */ - return 247; + return 290; } else { @@ -7484,7 +8529,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111011xxxxx1xx011101xx fmul. */ - return 285; + return 339; } } } @@ -7501,7 +8546,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111100xxxxx1xx011100xx cmge. */ - return 227; + return 267; } else { @@ -7509,7 +8554,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111100xxxxx1xx011101xx cmhs. */ - return 267; + return 319; } } else @@ -7518,7 +8563,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111101xxxxx1xx01110xxx addp. */ - return 243; + return 283; } } else @@ -7531,7 +8576,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111110xxxxx1xx011100xx saba. */ - return 235; + return 275; } else { @@ -7539,7 +8584,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111110xxxxx1xx011101xx uaba. */ - return 275; + return 327; } } else @@ -7552,7 +8597,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111111xxxxx1x0011100xx frecps. */ - return 250; + return 296; } else { @@ -7560,7 +8605,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111111xxxxx1x0011101xx fdiv. */ - return 289; + return 347; } } else @@ -7569,7 +8614,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx111111xxxxx1x101110xxx frsqrts. */ - return 257; + return 308; } } } @@ -7586,7 +8631,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11xxxxxxxxx1xx0111100x fcsel. */ - return 648; + return 815; } else { @@ -7602,7 +8647,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110000xxxxx1xx0111101x sqadd. */ - return 438; + return 539; } else { @@ -7610,7 +8655,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110001xxxxx1xx0111101x cmtst. */ - return 452; + return 557; } } else @@ -7619,7 +8664,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11001xxxxxx1xx0111101x sqshl. */ - return 440; + return 541; } } else @@ -7628,7 +8673,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1101xxxxxxx1xx0111101x sqsub. */ - return 439; + return 540; } } else @@ -7641,7 +8686,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110x0xxxxx1xx0111101x sqrshl. */ - return 441; + return 542; } else { @@ -7649,7 +8694,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110x1xxxxx1xx0111101x fmulx. */ - return 443; + return 544; } } else @@ -7660,7 +8705,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11110xxxxxx1xx0111101x cmge. */ - return 448; + return 553; } else { @@ -7670,7 +8715,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11111xxxxxx1x00111101x frecps. */ - return 445; + return 548; } else { @@ -7678,7 +8723,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11111xxxxxx1x10111101x frsqrts. */ - return 446; + return 550; } } } @@ -7699,7 +8744,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110000xxxxx1xx011111xx uqadd. */ - return 453; + return 558; } else { @@ -7707,7 +8752,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110001xxxxx1xx011111xx cmeq. */ - return 468; + return 578; } } else @@ -7716,7 +8761,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11001xxxxxx1xx011111xx uqshl. */ - return 455; + return 560; } } else @@ -7727,7 +8772,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11010xxxxxx1xx011111xx uqsub. */ - return 454; + return 559; } else { @@ -7737,7 +8782,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11011xxxxxx1x0011111xx facge. */ - return 459; + return 565; } else { @@ -7745,7 +8790,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11011xxxxxx1x1011111xx facgt. */ - return 462; + return 571; } } } @@ -7758,7 +8803,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110xxxxxxx1xx011111xx uqrshl. */ - return 456; + return 561; } else { @@ -7766,7 +8811,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1111xxxxxxx1xx011111xx cmhs. */ - return 464; + return 574; } } } @@ -7793,7 +8838,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0000xxxxxxxx11110xxx mla. */ - return 110; + return 117; } else { @@ -7801,7 +8846,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0010xxxxxxxx11110xxx mls. */ - return 113; + return 120; } } else @@ -7816,7 +8861,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0100xxxxxxxx1111000x smlal. */ - return 92; + return 96; } else { @@ -7824,7 +8869,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0100xxxxxxxx1111001x smlal2. */ - return 93; + return 97; } } else @@ -7835,7 +8880,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0100xxxxxxxx1111010x umlal. */ - return 111; + return 118; } else { @@ -7843,7 +8888,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0100xxxxxxxx1111011x umlal2. */ - return 112; + return 119; } } } @@ -7857,7 +8902,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0110xxxxxxxx1111000x smlsl. */ - return 96; + return 100; } else { @@ -7865,7 +8910,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0110xxxxxxxx1111001x smlsl2. */ - return 97; + return 101; } } else @@ -7876,7 +8921,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0110xxxxxxxx1111010x umlsl. */ - return 114; + return 121; } else { @@ -7884,7 +8929,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0110xxxxxxxx1111011x umlsl2. */ - return 115; + return 122; } } } @@ -7896,19 +8941,41 @@ aarch64_opcode_lookup_1 (uint32_t word) { if (((word >> 14) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x1000xxxxxxxx11110xxx - fmla. */ - return 107; + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1000xxxxxxx011110xxx + fmla. */ + return 112; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1000xxxxxxx111110xxx + fmla. */ + return 111; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x1010xxxxxxxx11110xxx - fmls. */ - return 108; + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1010xxxxxxx011110xxx + fmls. */ + return 114; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1010xxxxxxx111110xxx + fmls. */ + return 113; + } } } else @@ -7921,7 +8988,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x1100xxxxxxxx11110x0x sqdmlal. */ - return 94; + return 98; } else { @@ -7929,7 +8996,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x1100xxxxxxxx11110x1x sqdmlal2. */ - return 95; + return 99; } } else @@ -7940,7 +9007,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x1110xxxxxxxx11110x0x sqdmlsl. */ - return 98; + return 102; } else { @@ -7948,7 +9015,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x1110xxxxxxxx11110x1x sqdmlsl2. */ - return 99; + return 103; } } } @@ -7964,7 +9031,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x0xx0xxxxxxxx111100xx movi. */ - return 120; + return 130; } else { @@ -7972,7 +9039,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x0xx0xxxxxxxx111101xx mvni. */ - return 127; + return 138; } } else @@ -7983,7 +9050,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x1xx0xxxxxxxx111100xx orr. */ - return 121; + return 131; } else { @@ -7991,7 +9058,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x1xx0xxxxxxxx111101xx bic. */ - return 128; + return 139; } } } @@ -8008,7 +9075,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx0xx1111100x fmadd. */ - return 643; + return 805; } else { @@ -8016,7 +9083,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx0xxxxx1xx1111100x fnmadd. */ - return 645; + return 809; } } else @@ -8027,19 +9094,41 @@ aarch64_opcode_lookup_1 (uint32_t word) { if (((word >> 14) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0xx000xxxxxxxx1111101x - fmla. */ - return 351; + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx000xxxxxxx01111101x + fmla. */ + return 422; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx000xxxxxxx11111101x + fmla. */ + return 421; + } } else { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0xx010xxxxxxxx1111101x - fmls. */ - return 352; + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx010xxxxxxx01111101x + fmls. */ + return 424; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx010xxxxxxx11111101x + fmls. */ + return 423; + } } } else @@ -8050,7 +9139,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0xx100xxxxxxxx1111101x sqdmlal. */ - return 346; + return 416; } else { @@ -8058,7 +9147,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0xx110xxxxxxxx1111101x sqdmlsl. */ - return 347; + return 417; } } } @@ -8072,7 +9161,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x00x0xxxxxxxx1111101x sshr. */ - return 469; + return 581; } else { @@ -8080,7 +9169,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x01x0xxxxxxxx1111101x srshr. */ - return 471; + return 583; } } else @@ -8093,7 +9182,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x1000xxxxxxxx1111101x ssra. */ - return 470; + return 582; } else { @@ -8101,7 +9190,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x1010xxxxxxxx1111101x shl. */ - return 473; + return 585; } } else @@ -8112,7 +9201,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x1100xxxxxxxx1111101x srsra. */ - return 472; + return 584; } else { @@ -8120,7 +9209,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1x1110xxxxxxxx1111101x sqshl. */ - return 474; + return 586; } } } @@ -8139,7 +9228,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx0000xxxxxxxx111111xx ushr. */ - return 479; + return 593; } else { @@ -8147,7 +9236,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx0010xxxxxxxx111111xx sri. */ - return 483; + return 597; } } else @@ -8158,7 +9247,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx0100xxxxxxxx111111xx urshr. */ - return 481; + return 595; } else { @@ -8166,7 +9255,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx0110xxxxxxxx111111xx sqshlu. */ - return 485; + return 599; } } } @@ -8180,7 +9269,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx1000xxxxxxxx111111xx usra. */ - return 480; + return 594; } else { @@ -8188,7 +9277,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx1010xxxxxxxx111111xx sli. */ - return 484; + return 598; } } else @@ -8199,7 +9288,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx1100xxxxxxxx111111xx ursra. */ - return 482; + return 596; } else { @@ -8207,7 +9296,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxx1110xxxxxxxx111111xx uqshl. */ - return 486; + return 600; } } } @@ -8230,7 +9319,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0001xxxxxxxx11110xxx mul. */ - return 100; + return 104; } else { @@ -8238,7 +9327,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0011xxxxxxxx11110xxx sqdmulh. */ - return 105; + return 109; } } else @@ -8251,7 +9340,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x01x1xxxxxxxx1111000x smull. */ - return 101; + return 105; } else { @@ -8259,7 +9348,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x01x1xxxxxxxx1111001x smull2. */ - return 102; + return 106; } } else @@ -8270,7 +9359,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x01x1xxxxxxxx1111010x umull. */ - return 116; + return 123; } else { @@ -8278,7 +9367,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x01x1xxxxxxxx1111011x umull2. */ - return 117; + return 124; } } } @@ -8288,50 +9377,94 @@ aarch64_opcode_lookup_1 (uint32_t word) if (((word >> 13) & 0x1) == 0) { if (((word >> 14) & 0x1) == 0) + { + if (((word >> 23) & 0x1) == 0) + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1001xxxxxxx0111100xx + fmul. */ + return 116; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1001xxxxxxx0111101xx + fmulx. */ + return 126; + } + } + else + { + if (((word >> 29) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1001xxxxxxx1111100xx + fmul. */ + return 115; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1001xxxxxxx1111101xx + fmulx. */ + return 125; + } + } + } + else { if (((word >> 29) & 0x1) == 0) { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0x1001xxxxxxxx111100xx - fmul. */ - return 109; + xxxxxxxxxx0x1011xxxxxxxx111100xx + sqrdmulh. */ + return 110; } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0x1001xxxxxxxx111101xx - fmulx. */ - return 118; + xxxxxxxxxx0x1011xxxxxxxx111101xx + sqrdmlah. */ + return 127; } } - else - { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x1011xxxxxxxx11110xxx - sqrdmulh. */ - return 106; - } } else { - if (((word >> 30) & 0x1) == 0) + if (((word >> 14) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x11x1xxxxxxxx11110x0x - sqdmull. */ - return 103; + if (((word >> 30) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1101xxxxxxxx11110x0x + sqdmull. */ + return 107; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1101xxxxxxxx11110x1x + sqdmull2. */ + return 108; + } } else { /* 33222222222211111111110000000000 10987654321098765432109876543210 - xxxxxxxxxx0x11x1xxxxxxxx11110x1x - sqdmull2. */ - return 104; + xxxxxxxxxx0x1111xxxxxxxx11110xxx + sqrdmlsh. */ + return 128; } } } @@ -8350,7 +9483,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100x01xxxxxxxx111100xx movi. */ - return 122; + return 132; } else { @@ -8358,7 +9491,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100x01xxxxxxxx111101xx mvni. */ - return 129; + return 140; } } else @@ -8369,7 +9502,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101x01xxxxxxxx111100xx orr. */ - return 123; + return 133; } else { @@ -8377,7 +9510,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101x01xxxxxxxx111101xx bic. */ - return 130; + return 141; } } } @@ -8391,7 +9524,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10x011xxxxxxxx111100xx movi. */ - return 124; + return 134; } else { @@ -8399,7 +9532,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx10x011xxxxxxxx111101xx mvni. */ - return 131; + return 142; } } else @@ -8412,7 +9545,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100111xxxxxxxx111100xx movi. */ - return 125; + return 135; } else { @@ -8420,7 +9553,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100111xxxxxxxx111101xx movi. */ - return 132; + return 143; } } else @@ -8431,7 +9564,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101111xxxxxxxx111100xx fmov. */ - return 126; + return 136; } else { @@ -8439,7 +9572,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101111xxxxxxxx111101xx fmov. */ - return 134; + return 145; } } } @@ -8457,7 +9590,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110xx1xxxxxxxx1111000x rshrn. */ - return 307; + return 373; } else { @@ -8465,7 +9598,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110xx1xxxxxxxx1111001x rshrn2. */ - return 308; + return 374; } } else @@ -8476,7 +9609,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110xx1xxxxxxxx1111010x sqrshrun. */ - return 329; + return 397; } else { @@ -8484,7 +9617,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110xx1xxxxxxxx1111011x sqrshrun2. */ - return 330; + return 398; } } } @@ -8500,7 +9633,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110x1xxxxxxxx1111000x sqrshrn. */ - return 311; + return 377; } else { @@ -8508,7 +9641,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110x1xxxxxxxx1111001x sqrshrn2. */ - return 312; + return 378; } } else @@ -8519,7 +9652,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110x1xxxxxxxx1111010x uqrshrn. */ - return 333; + return 401; } else { @@ -8527,7 +9660,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110x1xxxxxxxx1111011x uqrshrn2. */ - return 334; + return 402; } } } @@ -8538,8 +9671,8 @@ aarch64_opcode_lookup_1 (uint32_t word) /* 33222222222211111111110000000000 10987654321098765432109876543210 xxxxxxxxxx1111x1xxxxxxxx111100xx - fcvtzs. */ - return 318; + fmov. */ + return 137; } else { @@ -8547,7 +9680,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1111x1xxxxxxxx111101xx fcvtzu. */ - return 340; + return 409; } } } @@ -8566,7 +9699,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx0xx1111100x fmsub. */ - return 644; + return 807; } else { @@ -8574,7 +9707,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxxxxxxx1xxxxx1xx1111100x fnmsub. */ - return 646; + return 811; } } else @@ -8587,7 +9720,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x0xx1xxxxxxxx1111101x sqdmulh. */ - return 349; + return 419; } else { @@ -8595,11 +9728,22 @@ aarch64_opcode_lookup_1 (uint32_t word) { if (((word >> 14) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0x1001xxxxxxxx1111101x - fmul. */ - return 353; + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1001xxxxxxx01111101x + fmul. */ + return 426; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0x1001xxxxxxx11111101x + fmul. */ + return 425; + } } else { @@ -8607,7 +9751,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x1011xxxxxxxx1111101x sqrdmulh. */ - return 350; + return 420; } } else @@ -8616,7 +9760,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx0x11x1xxxxxxxx1111101x sqdmull. */ - return 348; + return 418; } } } @@ -8630,7 +9774,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx100xx1xxxxxxxx1111101x scvtf. */ - return 477; + return 589; } else { @@ -8638,7 +9782,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101xx1xxxxxxxx1111101x sqshrn. */ - return 475; + return 587; } } else @@ -8649,7 +9793,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11x0x1xxxxxxxx1111101x sqrshrn. */ - return 476; + return 588; } else { @@ -8657,7 +9801,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx11x1x1xxxxxxxx1111101x fcvtzs. */ - return 478; + return 591; } } } @@ -8667,11 +9811,44 @@ aarch64_opcode_lookup_1 (uint32_t word) { if (((word >> 10) & 0x1) == 0) { - /* 33222222222211111111110000000000 - 10987654321098765432109876543210 - xxxxxxxxxx0xxxx1xxxxxxxx111111xx - fmulx. */ - return 354; + if (((word >> 13) & 0x1) == 0) + { + if (((word >> 14) & 0x1) == 0) + { + if (((word >> 23) & 0x1) == 0) + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx001xxxxxxx0111111xx + fmulx. */ + return 428; + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx001xxxxxxx1111111xx + fmulx. */ + return 427; + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx011xxxxxxxx111111xx + sqrdmlah. */ + return 429; + } + } + else + { + /* 33222222222211111111110000000000 + 10987654321098765432109876543210 + xxxxxxxxxx0xx1x1xxxxxxxx111111xx + sqrdmlsh. */ + return 430; + } } else { @@ -8685,7 +9862,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1000x1xxxxxxxx111111xx sqshrun. */ - return 487; + return 601; } else { @@ -8693,7 +9870,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1001x1xxxxxxxx111111xx ucvtf. */ - return 491; + return 605; } } else @@ -8702,7 +9879,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx101xx1xxxxxxxx111111xx uqshrn. */ - return 489; + return 603; } } else @@ -8713,7 +9890,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx110xx1xxxxxxxx111111xx sqrshrun. */ - return 488; + return 602; } else { @@ -8723,7 +9900,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1110x1xxxxxxxx111111xx uqrshrn. */ - return 490; + return 604; } else { @@ -8731,7 +9908,7 @@ aarch64_opcode_lookup_1 (uint32_t word) 10987654321098765432109876543210 xxxxxxxxxx1111x1xxxxxxxx111111xx fcvtzu. */ - return 492; + return 607; } } } @@ -8762,93 +9939,208 @@ aarch64_find_next_opcode (const aarch64_opcode *opcode) int value; switch (key) { - case 733: value = 737; break; /* stnp --> stp. */ - case 737: return NULL; /* stp --> NULL. */ - case 731: value = 732; break; /* stllrb --> stllrh. */ - case 732: return NULL; /* stllrh --> NULL. */ - case 734: value = 738; break; /* ldnp --> ldp. */ - case 738: return NULL; /* ldp --> NULL. */ - case 949: value = 950; break; /* msr --> hint. */ - case 950: value = 957; break; /* hint --> clrex. */ - case 957: value = 958; break; /* clrex --> dsb. */ - case 958: value = 959; break; /* dsb --> dmb. */ - case 959: value = 960; break; /* dmb --> isb. */ - case 960: value = 961; break; /* isb --> sys. */ - case 961: value = 966; break; /* sys --> msr. */ - case 966: return NULL; /* msr --> NULL. */ - case 967: value = 968; break; /* sysl --> mrs. */ - case 968: return NULL; /* mrs --> NULL. */ - case 355: value = 356; break; /* st4 --> st1. */ - case 356: value = 357; break; /* st1 --> st2. */ - case 357: value = 358; break; /* st2 --> st3. */ - case 358: return NULL; /* st3 --> NULL. */ - case 363: value = 364; break; /* st4 --> st1. */ - case 364: value = 365; break; /* st1 --> st2. */ - case 365: value = 366; break; /* st2 --> st3. */ - case 366: return NULL; /* st3 --> NULL. */ - case 359: value = 360; break; /* ld4 --> ld1. */ - case 360: value = 361; break; /* ld1 --> ld2. */ - case 361: value = 362; break; /* ld2 --> ld3. */ - case 362: return NULL; /* ld3 --> NULL. */ - case 375: value = 377; break; /* ld1 --> ld1r. */ - case 377: return NULL; /* ld1r --> NULL. */ - case 379: value = 381; break; /* ld2 --> ld2r. */ - case 381: return NULL; /* ld2r --> NULL. */ - case 376: value = 378; break; /* ld3 --> ld3r. */ - case 378: return NULL; /* ld3r --> NULL. */ - case 380: value = 382; break; /* ld4 --> ld4r. */ - case 382: return NULL; /* ld4r --> NULL. */ - case 367: value = 368; break; /* ld4 --> ld1. */ - case 368: value = 369; break; /* ld1 --> ld2. */ - case 369: value = 370; break; /* ld2 --> ld3. */ - case 370: return NULL; /* ld3 --> NULL. */ - case 387: value = 389; break; /* ld1 --> ld1r. */ - case 389: return NULL; /* ld1r --> NULL. */ - case 388: value = 390; break; /* ld3 --> ld3r. */ - case 390: return NULL; /* ld3r --> NULL. */ - case 391: value = 393; break; /* ld2 --> ld2r. */ - case 393: return NULL; /* ld2r --> NULL. */ - case 392: value = 394; break; /* ld4 --> ld4r. */ - case 394: return NULL; /* ld4r --> NULL. */ - case 120: value = 299; break; /* movi --> sshr. */ - case 299: value = 301; break; /* sshr --> srshr. */ - case 301: return NULL; /* srshr --> NULL. */ - case 127: value = 319; break; /* mvni --> ushr. */ - case 319: value = 321; break; /* ushr --> urshr. */ - case 321: value = 323; break; /* urshr --> sri. */ - case 323: value = 325; break; /* sri --> sqshlu. */ - case 325: return NULL; /* sqshlu --> NULL. */ - case 121: value = 300; break; /* orr --> ssra. */ - case 300: value = 302; break; /* ssra --> srsra. */ - case 302: value = 303; break; /* srsra --> shl. */ - case 303: value = 304; break; /* shl --> sqshl. */ - case 304: return NULL; /* sqshl --> NULL. */ - case 128: value = 320; break; /* bic --> usra. */ - case 320: value = 322; break; /* usra --> ursra. */ - case 322: value = 324; break; /* ursra --> sli. */ - case 324: value = 326; break; /* sli --> uqshl. */ - case 326: return NULL; /* uqshl --> NULL. */ - case 122: value = 305; break; /* movi --> shrn. */ - case 305: value = 306; break; /* shrn --> shrn2. */ - case 306: value = 313; break; /* shrn2 --> sshll. */ - case 313: value = 315; break; /* sshll --> sshll2. */ - case 315: return NULL; /* sshll2 --> NULL. */ - case 129: value = 327; break; /* mvni --> sqshrun. */ - case 327: value = 328; break; /* sqshrun --> sqshrun2. */ - case 328: value = 335; break; /* sqshrun2 --> ushll. */ - case 335: value = 337; break; /* ushll --> ushll2. */ - case 337: return NULL; /* ushll2 --> NULL. */ - case 123: value = 309; break; /* orr --> sqshrn. */ - case 309: value = 310; break; /* sqshrn --> sqshrn2. */ - case 310: return NULL; /* sqshrn2 --> NULL. */ - case 130: value = 331; break; /* bic --> uqshrn. */ - case 331: value = 332; break; /* uqshrn --> uqshrn2. */ - case 332: return NULL; /* uqshrn2 --> NULL. */ - case 125: value = 317; break; /* movi --> scvtf. */ - case 317: return NULL; /* scvtf --> NULL. */ - case 132: value = 133; break; /* movi --> movi. */ - case 133: value = 339; break; /* movi --> ucvtf. */ - case 339: return NULL; /* ucvtf --> NULL. */ + case 901: value = 905; break; /* stnp --> stp. */ + case 905: return NULL; /* stp --> NULL. */ + case 899: value = 900; break; /* stllrb --> stllrh. */ + case 900: return NULL; /* stllrh --> NULL. */ + case 902: value = 906; break; /* ldnp --> ldp. */ + case 906: return NULL; /* ldp --> NULL. */ + case 1117: value = 1118; break; /* msr --> hint. */ + case 1118: value = 1127; break; /* hint --> clrex. */ + case 1127: value = 1128; break; /* clrex --> dsb. */ + case 1128: value = 1129; break; /* dsb --> dmb. */ + case 1129: value = 1130; break; /* dmb --> isb. */ + case 1130: value = 1131; break; /* isb --> sys. */ + case 1131: value = 1136; break; /* sys --> msr. */ + case 1136: return NULL; /* msr --> NULL. */ + case 1137: value = 1138; break; /* sysl --> mrs. */ + case 1138: return NULL; /* mrs --> NULL. */ + case 431: value = 432; break; /* st4 --> st1. */ + case 432: value = 433; break; /* st1 --> st2. */ + case 433: value = 434; break; /* st2 --> st3. */ + case 434: return NULL; /* st3 --> NULL. */ + case 439: value = 440; break; /* st4 --> st1. */ + case 440: value = 441; break; /* st1 --> st2. */ + case 441: value = 442; break; /* st2 --> st3. */ + case 442: return NULL; /* st3 --> NULL. */ + case 435: value = 436; break; /* ld4 --> ld1. */ + case 436: value = 437; break; /* ld1 --> ld2. */ + case 437: value = 438; break; /* ld2 --> ld3. */ + case 438: return NULL; /* ld3 --> NULL. */ + case 451: value = 453; break; /* ld1 --> ld1r. */ + case 453: return NULL; /* ld1r --> NULL. */ + case 455: value = 457; break; /* ld2 --> ld2r. */ + case 457: return NULL; /* ld2r --> NULL. */ + case 452: value = 454; break; /* ld3 --> ld3r. */ + case 454: return NULL; /* ld3r --> NULL. */ + case 456: value = 458; break; /* ld4 --> ld4r. */ + case 458: return NULL; /* ld4r --> NULL. */ + case 443: value = 444; break; /* ld4 --> ld1. */ + case 444: value = 445; break; /* ld1 --> ld2. */ + case 445: value = 446; break; /* ld2 --> ld3. */ + case 446: return NULL; /* ld3 --> NULL. */ + case 463: value = 465; break; /* ld1 --> ld1r. */ + case 465: return NULL; /* ld1r --> NULL. */ + case 464: value = 466; break; /* ld3 --> ld3r. */ + case 466: return NULL; /* ld3r --> NULL. */ + case 467: value = 469; break; /* ld2 --> ld2r. */ + case 469: return NULL; /* ld2r --> NULL. */ + case 468: value = 470; break; /* ld4 --> ld4r. */ + case 470: return NULL; /* ld4r --> NULL. */ + case 718: value = 719; break; /* fcvtzs --> fcvtzs. */ + case 719: return NULL; /* fcvtzs --> NULL. */ + case 714: value = 715; break; /* scvtf --> scvtf. */ + case 715: return NULL; /* scvtf --> NULL. */ + case 720: value = 721; break; /* fcvtzu --> fcvtzu. */ + case 721: return NULL; /* fcvtzu --> NULL. */ + case 716: value = 717; break; /* ucvtf --> ucvtf. */ + case 717: return NULL; /* ucvtf --> NULL. */ + case 722: value = 723; break; /* fcvtns --> fcvtns. */ + case 723: return NULL; /* fcvtns --> NULL. */ + case 742: value = 743; break; /* fcvtms --> fcvtms. */ + case 743: return NULL; /* fcvtms --> NULL. */ + case 738: value = 739; break; /* fcvtps --> fcvtps. */ + case 739: return NULL; /* fcvtps --> NULL. */ + case 746: value = 747; break; /* fcvtzs --> fcvtzs. */ + case 747: return NULL; /* fcvtzs --> NULL. */ + case 730: value = 731; break; /* fcvtas --> fcvtas. */ + case 731: return NULL; /* fcvtas --> NULL. */ + case 726: value = 727; break; /* scvtf --> scvtf. */ + case 727: return NULL; /* scvtf --> NULL. */ + case 734: value = 735; break; /* fmov --> fmov. */ + case 735: return NULL; /* fmov --> NULL. */ + case 724: value = 725; break; /* fcvtnu --> fcvtnu. */ + case 725: return NULL; /* fcvtnu --> NULL. */ + case 744: value = 745; break; /* fcvtmu --> fcvtmu. */ + case 745: return NULL; /* fcvtmu --> NULL. */ + case 740: value = 741; break; /* fcvtpu --> fcvtpu. */ + case 741: return NULL; /* fcvtpu --> NULL. */ + case 748: value = 749; break; /* fcvtzu --> fcvtzu. */ + case 749: return NULL; /* fcvtzu --> NULL. */ + case 732: value = 733; break; /* fcvtau --> fcvtau. */ + case 733: return NULL; /* fcvtau --> NULL. */ + case 728: value = 729; break; /* ucvtf --> ucvtf. */ + case 729: return NULL; /* ucvtf --> NULL. */ + case 736: value = 737; break; /* fmov --> fmov. */ + case 737: return NULL; /* fmov --> NULL. */ + case 764: value = 765; break; /* fmov --> fmov. */ + case 765: return NULL; /* fmov --> NULL. */ + case 773: value = 774; break; /* frintn --> frintn. */ + case 774: return NULL; /* frintn --> NULL. */ + case 768: value = 769; break; /* fneg --> fneg. */ + case 769: return NULL; /* fneg --> NULL. */ + case 777: value = 778; break; /* frintm --> frintm. */ + case 778: return NULL; /* frintm --> NULL. */ + case 766: value = 767; break; /* fabs --> fabs. */ + case 767: return NULL; /* fabs --> NULL. */ + case 775: value = 776; break; /* frintp --> frintp. */ + case 776: return NULL; /* frintp --> NULL. */ + case 770: value = 771; break; /* fsqrt --> fsqrt. */ + case 771: return NULL; /* fsqrt --> NULL. */ + case 779: value = 780; break; /* frintz --> frintz. */ + case 780: return NULL; /* frintz --> NULL. */ + case 781: value = 782; break; /* frinta --> frinta. */ + case 782: return NULL; /* frinta --> NULL. */ + case 783: value = 784; break; /* frintx --> frintx. */ + case 784: return NULL; /* frintx --> NULL. */ + case 785: value = 786; break; /* frinti --> frinti. */ + case 786: return NULL; /* frinti --> NULL. */ + case 756: value = 757; break; /* fcmp --> fcmp. */ + case 757: return NULL; /* fcmp --> NULL. */ + case 758: value = 759; break; /* fcmpe --> fcmpe. */ + case 759: return NULL; /* fcmpe --> NULL. */ + case 760: value = 761; break; /* fcmp --> fcmp. */ + case 761: return NULL; /* fcmp --> NULL. */ + case 762: value = 763; break; /* fcmpe --> fcmpe. */ + case 763: return NULL; /* fcmpe --> NULL. */ + case 813: value = 814; break; /* fmov --> fmov. */ + case 814: return NULL; /* fmov --> NULL. */ + case 787: value = 788; break; /* fmul --> fmul. */ + case 788: return NULL; /* fmul --> NULL. */ + case 803: value = 804; break; /* fnmul --> fnmul. */ + case 804: return NULL; /* fnmul --> NULL. */ + case 795: value = 796; break; /* fmax --> fmax. */ + case 796: return NULL; /* fmax --> NULL. */ + case 791: value = 792; break; /* fadd --> fadd. */ + case 792: return NULL; /* fadd --> NULL. */ + case 799: value = 800; break; /* fmaxnm --> fmaxnm. */ + case 800: return NULL; /* fmaxnm --> NULL. */ + case 789: value = 790; break; /* fdiv --> fdiv. */ + case 790: return NULL; /* fdiv --> NULL. */ + case 797: value = 798; break; /* fmin --> fmin. */ + case 798: return NULL; /* fmin --> NULL. */ + case 793: value = 794; break; /* fsub --> fsub. */ + case 794: return NULL; /* fsub --> NULL. */ + case 801: value = 802; break; /* fminnm --> fminnm. */ + case 802: return NULL; /* fminnm --> NULL. */ + case 752: value = 753; break; /* fccmp --> fccmp. */ + case 753: return NULL; /* fccmp --> NULL. */ + case 754: value = 755; break; /* fccmpe --> fccmpe. */ + case 755: return NULL; /* fccmpe --> NULL. */ + case 815: value = 816; break; /* fcsel --> fcsel. */ + case 816: return NULL; /* fcsel --> NULL. */ + case 130: value = 365; break; /* movi --> sshr. */ + case 365: value = 367; break; /* sshr --> srshr. */ + case 367: return NULL; /* srshr --> NULL. */ + case 138: value = 387; break; /* mvni --> ushr. */ + case 387: value = 389; break; /* ushr --> urshr. */ + case 389: value = 391; break; /* urshr --> sri. */ + case 391: value = 393; break; /* sri --> sqshlu. */ + case 393: return NULL; /* sqshlu --> NULL. */ + case 131: value = 366; break; /* orr --> ssra. */ + case 366: value = 368; break; /* ssra --> srsra. */ + case 368: value = 369; break; /* srsra --> shl. */ + case 369: value = 370; break; /* shl --> sqshl. */ + case 370: return NULL; /* sqshl --> NULL. */ + case 139: value = 388; break; /* bic --> usra. */ + case 388: value = 390; break; /* usra --> ursra. */ + case 390: value = 392; break; /* ursra --> sli. */ + case 392: value = 394; break; /* sli --> uqshl. */ + case 394: return NULL; /* uqshl --> NULL. */ + case 805: value = 806; break; /* fmadd --> fmadd. */ + case 806: return NULL; /* fmadd --> NULL. */ + case 809: value = 810; break; /* fnmadd --> fnmadd. */ + case 810: return NULL; /* fnmadd --> NULL. */ + case 132: value = 371; break; /* movi --> shrn. */ + case 371: value = 372; break; /* shrn --> shrn2. */ + case 372: value = 379; break; /* shrn2 --> sshll. */ + case 379: value = 381; break; /* sshll --> sshll2. */ + case 381: return NULL; /* sshll2 --> NULL. */ + case 140: value = 395; break; /* mvni --> sqshrun. */ + case 395: value = 396; break; /* sqshrun --> sqshrun2. */ + case 396: value = 403; break; /* sqshrun2 --> ushll. */ + case 403: value = 405; break; /* ushll --> ushll2. */ + case 405: return NULL; /* ushll2 --> NULL. */ + case 133: value = 375; break; /* orr --> sqshrn. */ + case 375: value = 376; break; /* sqshrn --> sqshrn2. */ + case 376: return NULL; /* sqshrn2 --> NULL. */ + case 141: value = 399; break; /* bic --> uqshrn. */ + case 399: value = 400; break; /* uqshrn --> uqshrn2. */ + case 400: return NULL; /* uqshrn2 --> NULL. */ + case 135: value = 383; break; /* movi --> scvtf. */ + case 383: value = 384; break; /* scvtf --> scvtf. */ + case 384: return NULL; /* scvtf --> NULL. */ + case 143: value = 144; break; /* movi --> movi. */ + case 144: value = 407; break; /* movi --> ucvtf. */ + case 407: value = 408; break; /* ucvtf --> ucvtf. */ + case 408: return NULL; /* ucvtf --> NULL. */ + case 137: value = 385; break; /* fmov --> fcvtzs. */ + case 385: value = 386; break; /* fcvtzs --> fcvtzs. */ + case 386: return NULL; /* fcvtzs --> NULL. */ + case 409: value = 410; break; /* fcvtzu --> fcvtzu. */ + case 410: return NULL; /* fcvtzu --> NULL. */ + case 807: value = 808; break; /* fmsub --> fmsub. */ + case 808: return NULL; /* fmsub --> NULL. */ + case 811: value = 812; break; /* fnmsub --> fnmsub. */ + case 812: return NULL; /* fnmsub --> NULL. */ + case 589: value = 590; break; /* scvtf --> scvtf. */ + case 590: return NULL; /* scvtf --> NULL. */ + case 591: value = 592; break; /* fcvtzs --> fcvtzs. */ + case 592: return NULL; /* fcvtzs --> NULL. */ + case 605: value = 606; break; /* ucvtf --> ucvtf. */ + case 606: return NULL; /* ucvtf --> NULL. */ + case 607: value = 608; break; /* fcvtzu --> fcvtzu. */ + case 608: return NULL; /* fcvtzu --> NULL. */ default: return NULL; } @@ -8873,91 +10165,92 @@ aarch64_find_alias_opcode (const aarch64_opcode *opcode) case 20: value = 21; break; /* adds --> cmn. */ case 22: value = 23; break; /* sub --> neg. */ case 24: value = 26; break; /* subs --> negs. */ - case 138: value = 139; break; /* umov --> mov. */ - case 140: value = 141; break; /* ins --> mov. */ - case 142: value = 143; break; /* ins --> mov. */ - case 203: value = 204; break; /* not --> mvn. */ - case 258: value = 259; break; /* orr --> mov. */ - case 313: value = 314; break; /* sshll --> sxtl. */ - case 315: value = 316; break; /* sshll2 --> sxtl2. */ - case 335: value = 336; break; /* ushll --> uxtl. */ - case 337: value = 338; break; /* ushll2 --> uxtl2. */ - case 430: value = 431; break; /* dup --> mov. */ - case 493: value = 498; break; /* sbfm --> sxtw. */ - case 500: value = 502; break; /* bfm --> bfxil. */ - case 503: value = 507; break; /* ubfm --> uxth. */ - case 525: value = 527; break; /* csinc --> cset. */ - case 528: value = 530; break; /* csinv --> csetm. */ - case 531: value = 532; break; /* csneg --> cneg. */ - case 556: value = 557; break; /* lslv --> lsl. */ - case 558: value = 559; break; /* lsrv --> lsr. */ - case 560: value = 561; break; /* asrv --> asr. */ - case 562: value = 563; break; /* rorv --> ror. */ - case 572: value = 573; break; /* madd --> mul. */ - case 574: value = 575; break; /* msub --> mneg. */ - case 576: value = 577; break; /* smaddl --> smull. */ - case 578: value = 579; break; /* smsubl --> smnegl. */ - case 581: value = 582; break; /* umaddl --> umull. */ - case 583: value = 584; break; /* umsubl --> umnegl. */ - case 594: value = 595; break; /* extr --> ror. */ - case 751: value = 752; break; /* and --> bic. */ - case 753: value = 754; break; /* orr --> mov. */ - case 756: value = 757; break; /* ands --> tst. */ - case 760: value = 762; break; /* orr --> uxtw. */ - case 763: value = 764; break; /* orn --> mvn. */ - case 767: value = 768; break; /* ands --> tst. */ - case 798: value = 894; break; /* ldaddb --> staddb. */ - case 799: value = 895; break; /* ldaddh --> staddh. */ - case 800: value = 896; break; /* ldadd --> stadd. */ - case 802: value = 897; break; /* ldaddlb --> staddlb. */ - case 805: value = 898; break; /* ldaddlh --> staddlh. */ - case 808: value = 899; break; /* ldaddl --> staddl. */ - case 810: value = 900; break; /* ldclrb --> stclrb. */ - case 811: value = 901; break; /* ldclrh --> stclrh. */ - case 812: value = 902; break; /* ldclr --> stclr. */ - case 814: value = 903; break; /* ldclrlb --> stclrlb. */ - case 817: value = 904; break; /* ldclrlh --> stclrlh. */ - case 820: value = 905; break; /* ldclrl --> stclrl. */ - case 822: value = 906; break; /* ldeorb --> steorb. */ - case 823: value = 907; break; /* ldeorh --> steorh. */ - case 824: value = 908; break; /* ldeor --> steor. */ - case 826: value = 909; break; /* ldeorlb --> steorlb. */ - case 829: value = 910; break; /* ldeorlh --> steorlh. */ - case 832: value = 911; break; /* ldeorl --> steorl. */ - case 834: value = 912; break; /* ldsetb --> stsetb. */ - case 835: value = 913; break; /* ldseth --> stseth. */ - case 836: value = 914; break; /* ldset --> stset. */ - case 838: value = 915; break; /* ldsetlb --> stsetlb. */ - case 841: value = 916; break; /* ldsetlh --> stsetlh. */ - case 844: value = 917; break; /* ldsetl --> stsetl. */ - case 846: value = 918; break; /* ldsmaxb --> stsmaxb. */ - case 847: value = 919; break; /* ldsmaxh --> stsmaxh. */ - case 848: value = 920; break; /* ldsmax --> stsmax. */ - case 850: value = 921; break; /* ldsmaxlb --> stsmaxlb. */ - case 853: value = 922; break; /* ldsmaxlh --> stsmaxlh. */ - case 856: value = 923; break; /* ldsmaxl --> stsmaxl. */ - case 858: value = 924; break; /* ldsminb --> stsminb. */ - case 859: value = 925; break; /* ldsminh --> stsminh. */ - case 860: value = 926; break; /* ldsmin --> stsmin. */ - case 862: value = 927; break; /* ldsminlb --> stsminlb. */ - case 865: value = 928; break; /* ldsminlh --> stsminlh. */ - case 868: value = 929; break; /* ldsminl --> stsminl. */ - case 870: value = 930; break; /* ldumaxb --> stumaxb. */ - case 871: value = 931; break; /* ldumaxh --> stumaxh. */ - case 872: value = 932; break; /* ldumax --> stumax. */ - case 874: value = 933; break; /* ldumaxlb --> stumaxlb. */ - case 877: value = 934; break; /* ldumaxlh --> stumaxlh. */ - case 880: value = 935; break; /* ldumaxl --> stumaxl. */ - case 882: value = 936; break; /* lduminb --> stuminb. */ - case 883: value = 937; break; /* lduminh --> stuminh. */ - case 884: value = 938; break; /* ldumin --> stumin. */ - case 886: value = 939; break; /* lduminlb --> stuminlb. */ - case 889: value = 940; break; /* lduminlh --> stuminlh. */ - case 892: value = 941; break; /* lduminl --> stuminl. */ - case 942: value = 943; break; /* movn --> mov. */ - case 944: value = 945; break; /* movz --> mov. */ - case 950: value = 956; break; /* hint --> sevl. */ - case 961: value = 965; break; /* sys --> tlbi. */ + case 149: value = 150; break; /* umov --> mov. */ + case 151: value = 152; break; /* ins --> mov. */ + case 153: value = 154; break; /* ins --> mov. */ + case 235: value = 236; break; /* not --> mvn. */ + case 310: value = 311; break; /* orr --> mov. */ + case 379: value = 380; break; /* sshll --> sxtl. */ + case 381: value = 382; break; /* sshll2 --> sxtl2. */ + case 403: value = 404; break; /* ushll --> uxtl. */ + case 405: value = 406; break; /* ushll2 --> uxtl2. */ + case 526: value = 527; break; /* dup --> mov. */ + case 609: value = 614; break; /* sbfm --> sxtw. */ + case 616: value = 618; break; /* bfm --> bfc. */ + case 620: value = 624; break; /* ubfm --> uxth. */ + case 642: value = 644; break; /* csinc --> cset. */ + case 645: value = 647; break; /* csinv --> csetm. */ + case 648: value = 649; break; /* csneg --> cneg. */ + case 667: value = 667; break; /* rev --> rev. */ + case 674: value = 675; break; /* lslv --> lsl. */ + case 676: value = 677; break; /* lsrv --> lsr. */ + case 678: value = 679; break; /* asrv --> asr. */ + case 680: value = 681; break; /* rorv --> ror. */ + case 690: value = 691; break; /* madd --> mul. */ + case 692: value = 693; break; /* msub --> mneg. */ + case 694: value = 695; break; /* smaddl --> smull. */ + case 696: value = 697; break; /* smsubl --> smnegl. */ + case 699: value = 700; break; /* umaddl --> umull. */ + case 701: value = 702; break; /* umsubl --> umnegl. */ + case 712: value = 713; break; /* extr --> ror. */ + case 919: value = 920; break; /* and --> bic. */ + case 921: value = 922; break; /* orr --> mov. */ + case 924: value = 925; break; /* ands --> tst. */ + case 928: value = 930; break; /* orr --> uxtw. */ + case 931: value = 932; break; /* orn --> mvn. */ + case 935: value = 936; break; /* ands --> tst. */ + case 966: value = 1062; break; /* ldaddb --> staddb. */ + case 967: value = 1063; break; /* ldaddh --> staddh. */ + case 968: value = 1064; break; /* ldadd --> stadd. */ + case 970: value = 1065; break; /* ldaddlb --> staddlb. */ + case 973: value = 1066; break; /* ldaddlh --> staddlh. */ + case 976: value = 1067; break; /* ldaddl --> staddl. */ + case 978: value = 1068; break; /* ldclrb --> stclrb. */ + case 979: value = 1069; break; /* ldclrh --> stclrh. */ + case 980: value = 1070; break; /* ldclr --> stclr. */ + case 982: value = 1071; break; /* ldclrlb --> stclrlb. */ + case 985: value = 1072; break; /* ldclrlh --> stclrlh. */ + case 988: value = 1073; break; /* ldclrl --> stclrl. */ + case 990: value = 1074; break; /* ldeorb --> steorb. */ + case 991: value = 1075; break; /* ldeorh --> steorh. */ + case 992: value = 1076; break; /* ldeor --> steor. */ + case 994: value = 1077; break; /* ldeorlb --> steorlb. */ + case 997: value = 1078; break; /* ldeorlh --> steorlh. */ + case 1000: value = 1079; break; /* ldeorl --> steorl. */ + case 1002: value = 1080; break; /* ldsetb --> stsetb. */ + case 1003: value = 1081; break; /* ldseth --> stseth. */ + case 1004: value = 1082; break; /* ldset --> stset. */ + case 1006: value = 1083; break; /* ldsetlb --> stsetlb. */ + case 1009: value = 1084; break; /* ldsetlh --> stsetlh. */ + case 1012: value = 1085; break; /* ldsetl --> stsetl. */ + case 1014: value = 1086; break; /* ldsmaxb --> stsmaxb. */ + case 1015: value = 1087; break; /* ldsmaxh --> stsmaxh. */ + case 1016: value = 1088; break; /* ldsmax --> stsmax. */ + case 1018: value = 1089; break; /* ldsmaxlb --> stsmaxlb. */ + case 1021: value = 1090; break; /* ldsmaxlh --> stsmaxlh. */ + case 1024: value = 1091; break; /* ldsmaxl --> stsmaxl. */ + case 1026: value = 1092; break; /* ldsminb --> stsminb. */ + case 1027: value = 1093; break; /* ldsminh --> stsminh. */ + case 1028: value = 1094; break; /* ldsmin --> stsmin. */ + case 1030: value = 1095; break; /* ldsminlb --> stsminlb. */ + case 1033: value = 1096; break; /* ldsminlh --> stsminlh. */ + case 1036: value = 1097; break; /* ldsminl --> stsminl. */ + case 1038: value = 1098; break; /* ldumaxb --> stumaxb. */ + case 1039: value = 1099; break; /* ldumaxh --> stumaxh. */ + case 1040: value = 1100; break; /* ldumax --> stumax. */ + case 1042: value = 1101; break; /* ldumaxlb --> stumaxlb. */ + case 1045: value = 1102; break; /* ldumaxlh --> stumaxlh. */ + case 1048: value = 1103; break; /* ldumaxl --> stumaxl. */ + case 1050: value = 1104; break; /* lduminb --> stuminb. */ + case 1051: value = 1105; break; /* lduminh --> stuminh. */ + case 1052: value = 1106; break; /* ldumin --> stumin. */ + case 1054: value = 1107; break; /* lduminlb --> stuminlb. */ + case 1057: value = 1108; break; /* lduminlh --> stuminlh. */ + case 1060: value = 1109; break; /* lduminl --> stuminl. */ + case 1110: value = 1111; break; /* movn --> mov. */ + case 1112: value = 1113; break; /* movz --> mov. */ + case 1118: value = 1126; break; /* hint --> psb. */ + case 1131: value = 1135; break; /* sys --> tlbi. */ default: return NULL; } @@ -8972,29 +10265,128 @@ aarch64_find_next_alias_opcode (const aarch64_opcode *opcode) int value; switch (key) { + case 3: value = 2; break; /* ngc --> sbc. */ + case 5: value = 4; break; /* ngcs --> sbcs. */ + case 8: value = 7; break; /* cmn --> adds. */ + case 11: value = 10; break; /* cmp --> subs. */ + case 13: value = 12; break; /* mov --> add. */ + case 15: value = 14; break; /* cmn --> adds. */ + case 18: value = 17; break; /* cmp --> subs. */ + case 21: value = 20; break; /* cmn --> adds. */ + case 23: value = 22; break; /* neg --> sub. */ case 26: value = 25; break; /* negs --> cmp. */ - case 498: value = 497; break; /* sxtw --> sxth. */ - case 497: value = 496; break; /* sxth --> sxtb. */ - case 496: value = 499; break; /* sxtb --> asr. */ - case 499: value = 495; break; /* asr --> sbfx. */ - case 495: value = 494; break; /* sbfx --> sbfiz. */ - case 502: value = 501; break; /* bfxil --> bfi. */ - case 507: value = 506; break; /* uxth --> uxtb. */ - case 506: value = 509; break; /* uxtb --> lsr. */ - case 509: value = 508; break; /* lsr --> lsl. */ - case 508: value = 505; break; /* lsl --> ubfx. */ - case 505: value = 504; break; /* ubfx --> ubfiz. */ - case 527: value = 526; break; /* cset --> cinc. */ - case 530: value = 529; break; /* csetm --> cinv. */ - case 762: value = 761; break; /* uxtw --> mov. */ - case 956: value = 955; break; /* sevl --> sev. */ - case 955: value = 954; break; /* sev --> wfi. */ - case 954: value = 953; break; /* wfi --> wfe. */ - case 953: value = 952; break; /* wfe --> yield. */ - case 952: value = 951; break; /* yield --> nop. */ - case 965: value = 964; break; /* tlbi --> ic. */ - case 964: value = 963; break; /* ic --> dc. */ - case 963: value = 962; break; /* dc --> at. */ + case 25: value = 24; break; /* cmp --> subs. */ + case 150: value = 149; break; /* mov --> umov. */ + case 152: value = 151; break; /* mov --> ins. */ + case 154: value = 153; break; /* mov --> ins. */ + case 236: value = 235; break; /* mvn --> not. */ + case 311: value = 310; break; /* mov --> orr. */ + case 380: value = 379; break; /* sxtl --> sshll. */ + case 382: value = 381; break; /* sxtl2 --> sshll2. */ + case 404: value = 403; break; /* uxtl --> ushll. */ + case 406: value = 405; break; /* uxtl2 --> ushll2. */ + case 527: value = 526; break; /* mov --> dup. */ + case 614: value = 613; break; /* sxtw --> sxth. */ + case 613: value = 612; break; /* sxth --> sxtb. */ + case 612: value = 615; break; /* sxtb --> asr. */ + case 615: value = 611; break; /* asr --> sbfx. */ + case 611: value = 610; break; /* sbfx --> sbfiz. */ + case 610: value = 609; break; /* sbfiz --> sbfm. */ + case 618: value = 619; break; /* bfc --> bfxil. */ + case 619: value = 617; break; /* bfxil --> bfi. */ + case 617: value = 616; break; /* bfi --> bfm. */ + case 624: value = 623; break; /* uxth --> uxtb. */ + case 623: value = 626; break; /* uxtb --> lsr. */ + case 626: value = 625; break; /* lsr --> lsl. */ + case 625: value = 622; break; /* lsl --> ubfx. */ + case 622: value = 621; break; /* ubfx --> ubfiz. */ + case 621: value = 620; break; /* ubfiz --> ubfm. */ + case 644: value = 643; break; /* cset --> cinc. */ + case 643: value = 642; break; /* cinc --> csinc. */ + case 647: value = 646; break; /* csetm --> cinv. */ + case 646: value = 645; break; /* cinv --> csinv. */ + case 649: value = 648; break; /* cneg --> csneg. */ + case 667: value = 668; break; /* rev --> rev64. */ + case 675: value = 674; break; /* lsl --> lslv. */ + case 677: value = 676; break; /* lsr --> lsrv. */ + case 679: value = 678; break; /* asr --> asrv. */ + case 681: value = 680; break; /* ror --> rorv. */ + case 691: value = 690; break; /* mul --> madd. */ + case 693: value = 692; break; /* mneg --> msub. */ + case 695: value = 694; break; /* smull --> smaddl. */ + case 697: value = 696; break; /* smnegl --> smsubl. */ + case 700: value = 699; break; /* umull --> umaddl. */ + case 702: value = 701; break; /* umnegl --> umsubl. */ + case 713: value = 712; break; /* ror --> extr. */ + case 920: value = 919; break; /* bic --> and. */ + case 922: value = 921; break; /* mov --> orr. */ + case 925: value = 924; break; /* tst --> ands. */ + case 930: value = 929; break; /* uxtw --> mov. */ + case 929: value = 928; break; /* mov --> orr. */ + case 932: value = 931; break; /* mvn --> orn. */ + case 936: value = 935; break; /* tst --> ands. */ + case 1062: value = 966; break; /* staddb --> ldaddb. */ + case 1063: value = 967; break; /* staddh --> ldaddh. */ + case 1064: value = 968; break; /* stadd --> ldadd. */ + case 1065: value = 970; break; /* staddlb --> ldaddlb. */ + case 1066: value = 973; break; /* staddlh --> ldaddlh. */ + case 1067: value = 976; break; /* staddl --> ldaddl. */ + case 1068: value = 978; break; /* stclrb --> ldclrb. */ + case 1069: value = 979; break; /* stclrh --> ldclrh. */ + case 1070: value = 980; break; /* stclr --> ldclr. */ + case 1071: value = 982; break; /* stclrlb --> ldclrlb. */ + case 1072: value = 985; break; /* stclrlh --> ldclrlh. */ + case 1073: value = 988; break; /* stclrl --> ldclrl. */ + case 1074: value = 990; break; /* steorb --> ldeorb. */ + case 1075: value = 991; break; /* steorh --> ldeorh. */ + case 1076: value = 992; break; /* steor --> ldeor. */ + case 1077: value = 994; break; /* steorlb --> ldeorlb. */ + case 1078: value = 997; break; /* steorlh --> ldeorlh. */ + case 1079: value = 1000; break; /* steorl --> ldeorl. */ + case 1080: value = 1002; break; /* stsetb --> ldsetb. */ + case 1081: value = 1003; break; /* stseth --> ldseth. */ + case 1082: value = 1004; break; /* stset --> ldset. */ + case 1083: value = 1006; break; /* stsetlb --> ldsetlb. */ + case 1084: value = 1009; break; /* stsetlh --> ldsetlh. */ + case 1085: value = 1012; break; /* stsetl --> ldsetl. */ + case 1086: value = 1014; break; /* stsmaxb --> ldsmaxb. */ + case 1087: value = 1015; break; /* stsmaxh --> ldsmaxh. */ + case 1088: value = 1016; break; /* stsmax --> ldsmax. */ + case 1089: value = 1018; break; /* stsmaxlb --> ldsmaxlb. */ + case 1090: value = 1021; break; /* stsmaxlh --> ldsmaxlh. */ + case 1091: value = 1024; break; /* stsmaxl --> ldsmaxl. */ + case 1092: value = 1026; break; /* stsminb --> ldsminb. */ + case 1093: value = 1027; break; /* stsminh --> ldsminh. */ + case 1094: value = 1028; break; /* stsmin --> ldsmin. */ + case 1095: value = 1030; break; /* stsminlb --> ldsminlb. */ + case 1096: value = 1033; break; /* stsminlh --> ldsminlh. */ + case 1097: value = 1036; break; /* stsminl --> ldsminl. */ + case 1098: value = 1038; break; /* stumaxb --> ldumaxb. */ + case 1099: value = 1039; break; /* stumaxh --> ldumaxh. */ + case 1100: value = 1040; break; /* stumax --> ldumax. */ + case 1101: value = 1042; break; /* stumaxlb --> ldumaxlb. */ + case 1102: value = 1045; break; /* stumaxlh --> ldumaxlh. */ + case 1103: value = 1048; break; /* stumaxl --> ldumaxl. */ + case 1104: value = 1050; break; /* stuminb --> lduminb. */ + case 1105: value = 1051; break; /* stuminh --> lduminh. */ + case 1106: value = 1052; break; /* stumin --> ldumin. */ + case 1107: value = 1054; break; /* stuminlb --> lduminlb. */ + case 1108: value = 1057; break; /* stuminlh --> lduminlh. */ + case 1109: value = 1060; break; /* stuminl --> lduminl. */ + case 1111: value = 1110; break; /* mov --> movn. */ + case 1113: value = 1112; break; /* mov --> movz. */ + case 1126: value = 1125; break; /* psb --> esb. */ + case 1125: value = 1124; break; /* esb --> sevl. */ + case 1124: value = 1123; break; /* sevl --> sev. */ + case 1123: value = 1122; break; /* sev --> wfi. */ + case 1122: value = 1121; break; /* wfi --> wfe. */ + case 1121: value = 1120; break; /* wfe --> yield. */ + case 1120: value = 1119; break; /* yield --> nop. */ + case 1119: value = 1118; break; /* nop --> hint. */ + case 1135: value = 1134; break; /* tlbi --> ic. */ + case 1134: value = 1133; break; /* ic --> dc. */ + case 1133: value = 1132; break; /* dc --> at. */ + case 1132: value = 1131; break; /* at --> sys. */ default: return NULL; } @@ -9124,6 +10516,8 @@ aarch64_extract_operand (const aarch64_operand *self, return aarch64_ext_barrier (self, info, code, inst); case 87: return aarch64_ext_prfop (self, info, code, inst); + case 88: + return aarch64_ext_hint (self, info, code, inst); default: assert (0); abort (); } }