[AArch64][SVE 21/32] Add Zn and Pn registers
[deliverable/binutils-gdb.git] / opcodes / aarch64-asm-2.c
index 4894f348b34eb7fe41985a2606cd8cff00b6244d..9c797b2ea5af2ca822a93ac76dbcee7551e18561 100644 (file)
@@ -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.
@@ -31,312 +31,414 @@ aarch64_find_real_opcode (const aarch64_opcode *opcode)
   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 752:  /* bic */
-      value = 751;     /* --> and.  */
-      break;
-    case 754:  /* mov */
-      value = 753;     /* --> orr.  */
-      break;
-    case 757:  /* tst */
-      value = 756;     /* --> ands.  */
-      break;
-    case 762:  /* uxtw */
-    case 761:  /* mov */
-      value = 760;     /* --> orr.  */
-      break;
-    case 764:  /* mvn */
-      value = 763;     /* --> orn.  */
-      break;
-    case 768:  /* tst */
-      value = 767;     /* --> ands.  */
-      break;
-    case 894:  /* staddb */
-      value = 798;     /* --> ldaddb.  */
-      break;
-    case 895:  /* staddh */
-      value = 799;     /* --> ldaddh.  */
-      break;
-    case 896:  /* stadd */
-      value = 800;     /* --> ldadd.  */
-      break;
-    case 897:  /* staddlb */
-      value = 802;     /* --> ldaddlb.  */
-      break;
-    case 898:  /* staddlh */
-      value = 805;     /* --> ldaddlh.  */
-      break;
-    case 899:  /* staddl */
-      value = 808;     /* --> ldaddl.  */
-      break;
-    case 900:  /* stclrb */
-      value = 810;     /* --> ldclrb.  */
-      break;
-    case 901:  /* stclrh */
-      value = 811;     /* --> ldclrh.  */
-      break;
-    case 902:  /* stclr */
-      value = 812;     /* --> ldclr.  */
-      break;
-    case 903:  /* stclrlb */
-      value = 814;     /* --> ldclrlb.  */
-      break;
-    case 904:  /* stclrlh */
-      value = 817;     /* --> ldclrlh.  */
-      break;
-    case 905:  /* stclrl */
-      value = 820;     /* --> ldclrl.  */
-      break;
-    case 906:  /* steorb */
-      value = 822;     /* --> ldeorb.  */
-      break;
-    case 907:  /* steorh */
-      value = 823;     /* --> ldeorh.  */
-      break;
-    case 908:  /* steor */
-      value = 824;     /* --> ldeor.  */
-      break;
-    case 909:  /* steorlb */
-      value = 826;     /* --> ldeorlb.  */
-      break;
-    case 910:  /* steorlh */
-      value = 829;     /* --> ldeorlh.  */
-      break;
-    case 911:  /* steorl */
-      value = 832;     /* --> ldeorl.  */
-      break;
-    case 912:  /* stsetb */
-      value = 834;     /* --> ldsetb.  */
-      break;
-    case 913:  /* stseth */
-      value = 835;     /* --> ldseth.  */
-      break;
-    case 914:  /* stset */
-      value = 836;     /* --> ldset.  */
-      break;
-    case 915:  /* stsetlb */
-      value = 838;     /* --> ldsetlb.  */
-      break;
-    case 916:  /* stsetlh */
-      value = 841;     /* --> ldsetlh.  */
-      break;
-    case 917:  /* stsetl */
-      value = 844;     /* --> ldsetl.  */
-      break;
-    case 918:  /* stsmaxb */
-      value = 846;     /* --> ldsmaxb.  */
-      break;
-    case 919:  /* stsmaxh */
-      value = 847;     /* --> ldsmaxh.  */
-      break;
-    case 920:  /* stsmax */
-      value = 848;     /* --> ldsmax.  */
-      break;
-    case 921:  /* stsmaxlb */
-      value = 850;     /* --> ldsmaxlb.  */
-      break;
-    case 922:  /* stsmaxlh */
-      value = 853;     /* --> ldsmaxlh.  */
-      break;
-    case 923:  /* stsmaxl */
-      value = 856;     /* --> ldsmaxl.  */
-      break;
-    case 924:  /* stsminb */
-      value = 858;     /* --> ldsminb.  */
-      break;
-    case 925:  /* stsminh */
-      value = 859;     /* --> ldsminh.  */
-      break;
-    case 926:  /* stsmin */
-      value = 860;     /* --> ldsmin.  */
-      break;
-    case 927:  /* stsminlb */
-      value = 862;     /* --> ldsminlb.  */
-      break;
-    case 928:  /* stsminlh */
-      value = 865;     /* --> ldsminlh.  */
-      break;
-    case 929:  /* stsminl */
-      value = 868;     /* --> ldsminl.  */
-      break;
-    case 930:  /* stumaxb */
-      value = 870;     /* --> ldumaxb.  */
-      break;
-    case 931:  /* stumaxh */
-      value = 871;     /* --> ldumaxh.  */
-      break;
-    case 932:  /* stumax */
-      value = 872;     /* --> ldumax.  */
-      break;
-    case 933:  /* stumaxlb */
-      value = 874;     /* --> ldumaxlb.  */
-      break;
-    case 934:  /* stumaxlh */
-      value = 877;     /* --> ldumaxlh.  */
-      break;
-    case 935:  /* stumaxl */
-      value = 880;     /* --> ldumaxl.  */
-      break;
-    case 936:  /* stuminb */
-      value = 882;     /* --> lduminb.  */
-      break;
-    case 937:  /* stuminh */
-      value = 883;     /* --> lduminh.  */
-      break;
-    case 938:  /* stumin */
-      value = 884;     /* --> ldumin.  */
-      break;
-    case 939:  /* stuminlb */
-      value = 886;     /* --> lduminlb.  */
-      break;
-    case 940:  /* stuminlh */
-      value = 889;     /* --> lduminlh.  */
-      break;
-    case 941:  /* stuminl */
-      value = 892;     /* --> lduminl.  */
-      break;
-    case 943:  /* mov */
-      value = 942;     /* --> movn.  */
-      break;
-    case 945:  /* mov */
-      value = 944;     /* --> movz.  */
-      break;
-    case 956:  /* sevl */
-    case 955:  /* sev */
-    case 954:  /* wfi */
-    case 953:  /* wfe */
-    case 952:  /* yield */
-    case 951:  /* nop */
-      value = 950;     /* --> hint.  */
-      break;
-    case 965:  /* tlbi */
-    case 964:  /* ic */
-    case 963:  /* dc */
-    case 962:  /* at */
-      value = 961;     /* --> 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;
     }
@@ -378,6 +480,21 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 27:
     case 35:
     case 36:
+    case 89:
+    case 90:
+    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 105:
       return aarch64_ins_regno (self, info, code, inst);
     case 12:
       return aarch64_ins_reg_extended (self, info, code, inst);
@@ -398,7 +515,6 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 34:
       return aarch64_ins_ldst_elemlist (self, info, code, inst);
     case 37:
-    case 46:
     case 47:
     case 48:
     case 49:
@@ -423,6 +539,8 @@ aarch64_insert_operand (const aarch64_operand *self,
     case 41:
     case 42:
       return aarch64_ins_advsimd_imm_modified (self, info, code, inst);
+    case 46:
+      return aarch64_ins_fpimm (self, info, code, inst);
     case 59:
       return aarch64_ins_limm (self, info, code, inst);
     case 60:
@@ -461,6 +579,13 @@ aarch64_insert_operand (const aarch64_operand *self,
       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 103:
+      return aarch64_ins_sve_index (self, info, code, inst);
+    case 104:
+    case 106:
+      return aarch64_ins_sve_reglist (self, info, code, inst);
     default: assert (0); abort ();
     }
 }
This page took 0.031978 seconds and 4 git commands to generate.