/* This file is automatically generated by aarch64-gen. Do not edit! */
-/* Copyright (C) 2012-2014 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.
switch (key)
{
case 3: /* ngc */
+ case 2: /* sbc */
value = 2; /* --> sbc. */
break;
case 5: /* ngcs */
+ case 4: /* sbcs */
value = 4; /* --> sbcs. */
break;
case 8: /* cmn */
+ case 7: /* adds */
value = 7; /* --> adds. */
break;
case 11: /* cmp */
+ case 10: /* subs */
value = 10; /* --> subs. */
break;
case 13: /* mov */
+ case 12: /* add */
value = 12; /* --> add. */
break;
case 15: /* cmn */
+ case 14: /* adds */
value = 14; /* --> adds. */
break;
case 18: /* cmp */
+ case 17: /* subs */
value = 17; /* --> subs. */
break;
case 21: /* cmn */
+ case 20: /* adds */
value = 20; /* --> adds. */
break;
case 23: /* neg */
+ case 22: /* sub */
value = 22; /* --> sub. */
break;
case 26: /* negs */
case 25: /* cmp */
+ case 24: /* subs */
value = 24; /* --> subs. */
break;
- case 139: /* mov */
- value = 138; /* --> umov. */
+ case 150: /* mov */
+ case 149: /* umov */
+ value = 149; /* --> umov. */
+ break;
+ case 152: /* mov */
+ case 151: /* ins */
+ value = 151; /* --> ins. */
+ break;
+ case 154: /* mov */
+ case 153: /* ins */
+ value = 153; /* --> ins. */
+ break;
+ case 236: /* mvn */
+ case 235: /* not */
+ value = 235; /* --> not. */
+ break;
+ case 311: /* mov */
+ case 310: /* orr */
+ value = 310; /* --> orr. */
+ break;
+ case 380: /* sxtl */
+ case 379: /* sshll */
+ value = 379; /* --> sshll. */
+ break;
+ case 382: /* sxtl2 */
+ case 381: /* sshll2 */
+ value = 381; /* --> sshll2. */
+ break;
+ case 404: /* uxtl */
+ case 403: /* ushll */
+ value = 403; /* --> ushll. */
+ break;
+ case 406: /* uxtl2 */
+ case 405: /* ushll2 */
+ value = 405; /* --> ushll2. */
+ break;
+ case 527: /* mov */
+ case 526: /* dup */
+ value = 526; /* --> dup. */
+ break;
+ case 614: /* sxtw */
+ case 613: /* sxth */
+ case 612: /* sxtb */
+ case 615: /* asr */
+ case 611: /* sbfx */
+ case 610: /* sbfiz */
+ case 609: /* sbfm */
+ value = 609; /* --> sbfm. */
+ break;
+ case 618: /* bfc */
+ case 619: /* bfxil */
+ case 617: /* bfi */
+ case 616: /* bfm */
+ value = 616; /* --> bfm. */
+ break;
+ case 624: /* uxth */
+ case 623: /* uxtb */
+ case 626: /* lsr */
+ case 625: /* lsl */
+ case 622: /* ubfx */
+ case 621: /* ubfiz */
+ case 620: /* ubfm */
+ value = 620; /* --> ubfm. */
+ break;
+ case 644: /* cset */
+ case 643: /* cinc */
+ case 642: /* csinc */
+ value = 642; /* --> csinc. */
+ break;
+ case 647: /* csetm */
+ case 646: /* cinv */
+ case 645: /* csinv */
+ value = 645; /* --> csinv. */
+ break;
+ case 649: /* cneg */
+ case 648: /* csneg */
+ value = 648; /* --> csneg. */
+ break;
+ case 667: /* rev */
+ case 668: /* rev64 */
+ value = 667; /* --> rev. */
+ break;
+ case 675: /* lsl */
+ case 674: /* lslv */
+ value = 674; /* --> lslv. */
+ break;
+ case 677: /* lsr */
+ case 676: /* lsrv */
+ value = 676; /* --> lsrv. */
+ break;
+ case 679: /* asr */
+ case 678: /* asrv */
+ value = 678; /* --> asrv. */
+ break;
+ case 681: /* ror */
+ case 680: /* rorv */
+ value = 680; /* --> rorv. */
+ break;
+ case 691: /* mul */
+ case 690: /* madd */
+ value = 690; /* --> madd. */
+ break;
+ case 693: /* mneg */
+ case 692: /* msub */
+ value = 692; /* --> msub. */
+ break;
+ case 695: /* smull */
+ case 694: /* smaddl */
+ value = 694; /* --> smaddl. */
+ break;
+ case 697: /* smnegl */
+ case 696: /* smsubl */
+ value = 696; /* --> smsubl. */
+ break;
+ case 700: /* umull */
+ case 699: /* umaddl */
+ value = 699; /* --> umaddl. */
+ break;
+ case 702: /* umnegl */
+ case 701: /* umsubl */
+ value = 701; /* --> umsubl. */
+ break;
+ case 713: /* ror */
+ case 712: /* extr */
+ value = 712; /* --> extr. */
+ break;
+ case 920: /* bic */
+ case 919: /* and */
+ value = 919; /* --> and. */
+ break;
+ case 922: /* mov */
+ case 921: /* orr */
+ value = 921; /* --> orr. */
+ break;
+ case 925: /* tst */
+ case 924: /* ands */
+ value = 924; /* --> ands. */
+ break;
+ case 930: /* uxtw */
+ case 929: /* mov */
+ case 928: /* orr */
+ value = 928; /* --> orr. */
+ break;
+ case 932: /* mvn */
+ case 931: /* orn */
+ value = 931; /* --> orn. */
+ break;
+ case 936: /* tst */
+ case 935: /* ands */
+ value = 935; /* --> ands. */
+ break;
+ case 1062: /* staddb */
+ case 966: /* ldaddb */
+ value = 966; /* --> ldaddb. */
+ break;
+ case 1063: /* staddh */
+ case 967: /* ldaddh */
+ value = 967; /* --> ldaddh. */
+ break;
+ case 1064: /* stadd */
+ case 968: /* ldadd */
+ value = 968; /* --> ldadd. */
break;
- case 141: /* mov */
- value = 140; /* --> ins. */
+ case 1065: /* staddlb */
+ case 970: /* ldaddlb */
+ value = 970; /* --> ldaddlb. */
break;
- case 143: /* mov */
- value = 142; /* --> ins. */
+ case 1066: /* staddlh */
+ case 973: /* ldaddlh */
+ value = 973; /* --> ldaddlh. */
break;
- case 204: /* mvn */
- value = 203; /* --> not. */
+ case 1067: /* staddl */
+ case 976: /* ldaddl */
+ value = 976; /* --> ldaddl. */
break;
- case 259: /* mov */
- value = 258; /* --> orr. */
+ case 1068: /* stclrb */
+ case 978: /* ldclrb */
+ value = 978; /* --> ldclrb. */
break;
- case 314: /* sxtl */
- value = 313; /* --> sshll. */
+ case 1069: /* stclrh */
+ case 979: /* ldclrh */
+ value = 979; /* --> ldclrh. */
break;
- case 316: /* sxtl2 */
- value = 315; /* --> sshll2. */
+ case 1070: /* stclr */
+ case 980: /* ldclr */
+ value = 980; /* --> ldclr. */
break;
- case 336: /* uxtl */
- value = 335; /* --> ushll. */
+ case 1071: /* stclrlb */
+ case 982: /* ldclrlb */
+ value = 982; /* --> ldclrlb. */
break;
- case 338: /* uxtl2 */
- value = 337; /* --> ushll2. */
+ case 1072: /* stclrlh */
+ case 985: /* ldclrlh */
+ value = 985; /* --> ldclrlh. */
break;
- case 431: /* mov */
- value = 430; /* --> dup. */
+ case 1073: /* stclrl */
+ case 988: /* ldclrl */
+ value = 988; /* --> ldclrl. */
break;
- case 498: /* sxtw */
- case 497: /* sxth */
- case 496: /* sxtb */
- case 499: /* asr */
- case 495: /* sbfx */
- case 494: /* sbfiz */
- value = 493; /* --> sbfm. */
+ case 1074: /* steorb */
+ case 990: /* ldeorb */
+ value = 990; /* --> ldeorb. */
break;
- case 502: /* bfxil */
- case 501: /* bfi */
- value = 500; /* --> bfm. */
+ case 1075: /* steorh */
+ case 991: /* ldeorh */
+ value = 991; /* --> ldeorh. */
break;
- case 507: /* uxth */
- case 506: /* uxtb */
- case 509: /* lsr */
- case 508: /* lsl */
- case 505: /* ubfx */
- case 504: /* ubfiz */
- value = 503; /* --> ubfm. */
+ case 1076: /* steor */
+ case 992: /* ldeor */
+ value = 992; /* --> ldeor. */
break;
- case 527: /* cset */
- case 526: /* cinc */
- value = 525; /* --> csinc. */
+ case 1077: /* steorlb */
+ case 994: /* ldeorlb */
+ value = 994; /* --> ldeorlb. */
break;
- case 530: /* csetm */
- case 529: /* cinv */
- value = 528; /* --> csinv. */
+ case 1078: /* steorlh */
+ case 997: /* ldeorlh */
+ value = 997; /* --> ldeorlh. */
break;
- case 532: /* cneg */
- value = 531; /* --> csneg. */
+ case 1079: /* steorl */
+ case 1000: /* ldeorl */
+ value = 1000; /* --> ldeorl. */
break;
- case 557: /* lsl */
- value = 556; /* --> lslv. */
+ case 1080: /* stsetb */
+ case 1002: /* ldsetb */
+ value = 1002; /* --> ldsetb. */
break;
- case 559: /* lsr */
- value = 558; /* --> lsrv. */
+ case 1081: /* stseth */
+ case 1003: /* ldseth */
+ value = 1003; /* --> ldseth. */
break;
- case 561: /* asr */
- value = 560; /* --> asrv. */
+ case 1082: /* stset */
+ case 1004: /* ldset */
+ value = 1004; /* --> ldset. */
break;
- case 563: /* ror */
- value = 562; /* --> rorv. */
+ case 1083: /* stsetlb */
+ case 1006: /* ldsetlb */
+ value = 1006; /* --> ldsetlb. */
break;
- case 573: /* mul */
- value = 572; /* --> madd. */
+ case 1084: /* stsetlh */
+ case 1009: /* ldsetlh */
+ value = 1009; /* --> ldsetlh. */
break;
- case 575: /* mneg */
- value = 574; /* --> msub. */
+ case 1085: /* stsetl */
+ case 1012: /* ldsetl */
+ value = 1012; /* --> ldsetl. */
break;
- case 577: /* smull */
- value = 576; /* --> smaddl. */
+ case 1086: /* stsmaxb */
+ case 1014: /* ldsmaxb */
+ value = 1014; /* --> ldsmaxb. */
break;
- case 579: /* smnegl */
- value = 578; /* --> smsubl. */
+ case 1087: /* stsmaxh */
+ case 1015: /* ldsmaxh */
+ value = 1015; /* --> ldsmaxh. */
break;
- case 582: /* umull */
- value = 581; /* --> umaddl. */
- break;
- case 584: /* umnegl */
- value = 583; /* --> umsubl. */
- break;
- case 595: /* ror */
- value = 594; /* --> extr. */
- break;
- case 695: /* strb */
- value = 693; /* --> sturb. */
- break;
- case 696: /* ldrb */
- value = 694; /* --> ldurb. */
- break;
- case 698: /* ldrsb */
- value = 697; /* --> ldursb. */
- break;
- case 701: /* str */
- value = 699; /* --> stur. */
- break;
- case 702: /* ldr */
- value = 700; /* --> ldur. */
- break;
- case 705: /* strh */
- value = 703; /* --> sturh. */
- break;
- case 706: /* ldrh */
- value = 704; /* --> ldurh. */
- break;
- case 708: /* ldrsh */
- value = 707; /* --> ldursh. */
- break;
- case 711: /* str */
- value = 709; /* --> stur. */
- break;
- case 712: /* ldr */
- value = 710; /* --> ldur. */
- break;
- case 714: /* ldrsw */
- value = 713; /* --> ldursw. */
- break;
- case 716: /* prfm */
- value = 715; /* --> prfum. */
- break;
- case 758: /* bic */
- value = 757; /* --> and. */
- break;
- case 760: /* mov */
- value = 759; /* --> orr. */
- break;
- case 763: /* tst */
- value = 762; /* --> ands. */
- break;
- case 768: /* uxtw */
- case 767: /* mov */
- value = 766; /* --> orr. */
- break;
- case 770: /* mvn */
- value = 769; /* --> orn. */
- break;
- case 774: /* tst */
- value = 773; /* --> ands. */
- break;
- case 777: /* mov */
- value = 776; /* --> movn. */
- break;
- case 779: /* mov */
- value = 778; /* --> movz. */
- break;
- case 790: /* sevl */
- case 789: /* sev */
- case 788: /* wfi */
- case 787: /* wfe */
- case 786: /* yield */
- case 785: /* nop */
- value = 784; /* --> hint. */
- break;
- case 799: /* tlbi */
- case 798: /* ic */
- case 797: /* dc */
- case 796: /* at */
- value = 795; /* --> sys. */
+ case 1088: /* stsmax */
+ case 1016: /* ldsmax */
+ value = 1016; /* --> ldsmax. */
+ break;
+ case 1089: /* stsmaxlb */
+ case 1018: /* ldsmaxlb */
+ value = 1018; /* --> ldsmaxlb. */
+ break;
+ case 1090: /* stsmaxlh */
+ case 1021: /* ldsmaxlh */
+ value = 1021; /* --> ldsmaxlh. */
+ break;
+ case 1091: /* stsmaxl */
+ case 1024: /* ldsmaxl */
+ value = 1024; /* --> ldsmaxl. */
+ break;
+ case 1092: /* stsminb */
+ case 1026: /* ldsminb */
+ value = 1026; /* --> ldsminb. */
+ break;
+ case 1093: /* stsminh */
+ case 1027: /* ldsminh */
+ value = 1027; /* --> ldsminh. */
+ break;
+ case 1094: /* stsmin */
+ case 1028: /* ldsmin */
+ value = 1028; /* --> ldsmin. */
+ break;
+ case 1095: /* stsminlb */
+ case 1030: /* ldsminlb */
+ value = 1030; /* --> ldsminlb. */
+ break;
+ case 1096: /* stsminlh */
+ case 1033: /* ldsminlh */
+ value = 1033; /* --> ldsminlh. */
+ break;
+ case 1097: /* stsminl */
+ case 1036: /* ldsminl */
+ value = 1036; /* --> ldsminl. */
+ break;
+ case 1098: /* stumaxb */
+ case 1038: /* ldumaxb */
+ value = 1038; /* --> ldumaxb. */
+ break;
+ case 1099: /* stumaxh */
+ case 1039: /* ldumaxh */
+ value = 1039; /* --> ldumaxh. */
+ break;
+ case 1100: /* stumax */
+ case 1040: /* ldumax */
+ value = 1040; /* --> ldumax. */
+ break;
+ case 1101: /* stumaxlb */
+ case 1042: /* ldumaxlb */
+ value = 1042; /* --> ldumaxlb. */
+ break;
+ case 1102: /* stumaxlh */
+ case 1045: /* ldumaxlh */
+ value = 1045; /* --> ldumaxlh. */
+ break;
+ case 1103: /* stumaxl */
+ case 1048: /* ldumaxl */
+ value = 1048; /* --> ldumaxl. */
+ break;
+ case 1104: /* stuminb */
+ case 1050: /* lduminb */
+ value = 1050; /* --> lduminb. */
+ break;
+ case 1105: /* stuminh */
+ case 1051: /* lduminh */
+ value = 1051; /* --> lduminh. */
+ break;
+ case 1106: /* stumin */
+ case 1052: /* ldumin */
+ value = 1052; /* --> ldumin. */
+ break;
+ case 1107: /* stuminlb */
+ case 1054: /* lduminlb */
+ value = 1054; /* --> lduminlb. */
+ break;
+ case 1108: /* stuminlh */
+ case 1057: /* lduminlh */
+ value = 1057; /* --> lduminlh. */
+ break;
+ case 1109: /* stuminl */
+ case 1060: /* lduminl */
+ value = 1060; /* --> lduminl. */
+ break;
+ case 1111: /* mov */
+ case 1110: /* movn */
+ value = 1110; /* --> movn. */
+ break;
+ case 1113: /* mov */
+ case 1112: /* movz */
+ value = 1112; /* --> movz. */
+ break;
+ case 1126: /* psb */
+ case 1125: /* esb */
+ case 1124: /* sevl */
+ case 1123: /* sev */
+ case 1122: /* wfi */
+ case 1121: /* wfe */
+ case 1120: /* yield */
+ case 1119: /* nop */
+ case 1118: /* hint */
+ value = 1118; /* --> hint. */
+ break;
+ case 1135: /* tlbi */
+ case 1134: /* ic */
+ case 1133: /* dc */
+ case 1132: /* at */
+ case 1131: /* sys */
+ value = 1131; /* --> sys. */
break;
default: return NULL;
}
case 8:
case 9:
case 10:
- case 13:
case 14:
case 15:
case 16:
- case 18:
+ case 17:
case 19:
case 20:
case 21:
case 24:
case 25:
case 26:
- case 34:
+ case 27:
case 35:
+ case 36:
+ case 91:
+ case 92:
+ case 93:
+ case 94:
+ case 95:
+ case 96:
+ case 97:
+ case 98:
+ case 99:
+ case 100:
+ case 101:
+ case 102:
+ case 103:
+ case 104:
+ case 107:
return aarch64_ins_regno (self, info, code, inst);
- case 11:
- return aarch64_ins_reg_extended (self, info, code, inst);
case 12:
+ return aarch64_ins_reg_extended (self, info, code, inst);
+ case 13:
return aarch64_ins_reg_shifted (self, info, code, inst);
- case 17:
+ case 18:
return aarch64_ins_ft (self, info, code, inst);
- case 27:
case 28:
case 29:
- return aarch64_ins_reglane (self, info, code, inst);
case 30:
- return aarch64_ins_reglist (self, info, code, inst);
+ return aarch64_ins_reglane (self, info, code, inst);
case 31:
- return aarch64_ins_ldst_reglist (self, info, code, inst);
+ return aarch64_ins_reglist (self, info, code, inst);
case 32:
- return aarch64_ins_ldst_reglist_r (self, info, code, inst);
+ return aarch64_ins_ldst_reglist (self, info, code, inst);
case 33:
+ return aarch64_ins_ldst_reglist_r (self, info, code, inst);
+ case 34:
return aarch64_ins_ldst_elemlist (self, info, code, inst);
- case 36:
- case 45:
- case 46:
+ case 37:
case 47:
case 48:
case 49:
case 55:
case 56:
case 57:
- case 66:
+ case 58:
case 67:
case 68:
case 69:
+ case 70:
+ case 89:
+ case 90:
return aarch64_ins_imm (self, info, code, inst);
- case 37:
case 38:
- return aarch64_ins_advsimd_imm_shift (self, info, code, inst);
case 39:
+ return aarch64_ins_advsimd_imm_shift (self, info, code, inst);
case 40:
case 41:
+ case 42:
return aarch64_ins_advsimd_imm_modified (self, info, code, inst);
- case 58:
- return aarch64_ins_limm (self, info, code, inst);
+ case 46:
+ return aarch64_ins_fpimm (self, info, code, inst);
case 59:
- return aarch64_ins_aimm (self, info, code, inst);
+ return aarch64_ins_limm (self, info, code, inst);
case 60:
- return aarch64_ins_imm_half (self, info, code, inst);
+ return aarch64_ins_aimm (self, info, code, inst);
case 61:
+ return aarch64_ins_imm_half (self, info, code, inst);
+ case 62:
return aarch64_ins_fbits (self, info, code, inst);
- case 63:
case 64:
+ case 65:
return aarch64_ins_cond (self, info, code, inst);
- case 70:
- case 76:
- return aarch64_ins_addr_simple (self, info, code, inst);
case 71:
- return aarch64_ins_addr_regoff (self, info, code, inst);
+ case 77:
+ return aarch64_ins_addr_simple (self, info, code, inst);
case 72:
+ return aarch64_ins_addr_regoff (self, info, code, inst);
case 73:
case 74:
- return aarch64_ins_addr_simm (self, info, code, inst);
case 75:
+ return aarch64_ins_addr_simm (self, info, code, inst);
+ case 76:
return aarch64_ins_addr_uimm12 (self, info, code, inst);
- case 77:
- return aarch64_ins_simd_addr_post (self, info, code, inst);
case 78:
- return aarch64_ins_sysreg (self, info, code, inst);
+ return aarch64_ins_simd_addr_post (self, info, code, inst);
case 79:
- return aarch64_ins_pstatefield (self, info, code, inst);
+ return aarch64_ins_sysreg (self, info, code, inst);
case 80:
+ return aarch64_ins_pstatefield (self, info, code, inst);
case 81:
case 82:
case 83:
- return aarch64_ins_sysins_op (self, info, code, inst);
case 84:
+ return aarch64_ins_sysins_op (self, info, code, inst);
case 85:
- return aarch64_ins_barrier (self, info, code, inst);
case 86:
+ return aarch64_ins_barrier (self, info, code, inst);
+ case 87:
return aarch64_ins_prfop (self, info, code, inst);
+ case 88:
+ return aarch64_ins_hint (self, info, code, inst);
+ case 105:
+ return aarch64_ins_sve_index (self, info, code, inst);
+ case 106:
+ case 108:
+ return aarch64_ins_sve_reglist (self, info, code, inst);
default: assert (0); abort ();
}
}