/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |* *| |* Machine Code Emitter *| |* *| |* Automatically generated file, do not edit! *| |* *| \*===----------------------------------------------------------------------===*/ uint64_t PPCMCCodeEmitter::getBinaryCodeForInstr(const MCInst &MI, SmallVectorImpl &Fixups, const MCSubtargetInfo &STI) const { static const uint64_t InstBits[] = { UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(0), UINT64_C(2080375316), // ADD4 UINT64_C(2080376340), // ADD4O UINT64_C(2080376341), // ADD4O_rec UINT64_C(2080375316), // ADD4TLS UINT64_C(2080375317), // ADD4_rec UINT64_C(2080375316), // ADD8 UINT64_C(2080376340), // ADD8O UINT64_C(2080376341), // ADD8O_rec UINT64_C(2080375316), // ADD8TLS UINT64_C(2080375316), // ADD8TLS_ UINT64_C(2080375317), // ADD8_rec UINT64_C(2080374804), // ADDC UINT64_C(2080374804), // ADDC8 UINT64_C(2080375828), // ADDC8O UINT64_C(2080375829), // ADDC8O_rec UINT64_C(2080374805), // ADDC8_rec UINT64_C(2080375828), // ADDCO UINT64_C(2080375829), // ADDCO_rec UINT64_C(2080374805), // ADDC_rec UINT64_C(2080375060), // ADDE UINT64_C(2080375060), // ADDE8 UINT64_C(2080376084), // ADDE8O UINT64_C(2080376085), // ADDE8O_rec UINT64_C(2080375061), // ADDE8_rec UINT64_C(2080376084), // ADDEO UINT64_C(2080376085), // ADDEO_rec UINT64_C(2080375124), // ADDEX UINT64_C(2080375124), // ADDEX8 UINT64_C(2080375061), // ADDE_rec UINT64_C(939524096), // ADDI UINT64_C(939524096), // ADDI8 UINT64_C(805306368), // ADDIC UINT64_C(805306368), // ADDIC8 UINT64_C(872415232), // ADDIC_rec UINT64_C(1006632960), // ADDIS UINT64_C(1006632960), // ADDIS8 UINT64_C(0), // ADDISdtprelHA UINT64_C(0), // ADDISdtprelHA32 UINT64_C(0), // ADDISgotTprelHA UINT64_C(0), // ADDIStlsgdHA UINT64_C(0), // ADDIStlsldHA UINT64_C(0), // ADDIStocHA UINT64_C(0), // ADDIStocHA8 UINT64_C(0), // ADDIdtprelL UINT64_C(0), // ADDIdtprelL32 UINT64_C(0), // ADDItlsgdL UINT64_C(0), // ADDItlsgdL32 UINT64_C(0), // ADDItlsgdLADDR UINT64_C(0), // ADDItlsgdLADDR32 UINT64_C(0), // ADDItlsldL UINT64_C(0), // ADDItlsldL32 UINT64_C(0), // ADDItlsldLADDR UINT64_C(0), // ADDItlsldLADDR32 UINT64_C(0), // ADDItoc UINT64_C(0), // ADDItoc8 UINT64_C(0), // ADDItocL UINT64_C(2080375252), // ADDME UINT64_C(2080375252), // ADDME8 UINT64_C(2080376276), // ADDME8O UINT64_C(2080376277), // ADDME8O_rec UINT64_C(2080375253), // ADDME8_rec UINT64_C(2080376276), // ADDMEO UINT64_C(2080376277), // ADDMEO_rec UINT64_C(2080375253), // ADDME_rec UINT64_C(1275068420), // ADDPCIS UINT64_C(2080375188), // ADDZE UINT64_C(2080375188), // ADDZE8 UINT64_C(2080376212), // ADDZE8O UINT64_C(2080376213), // ADDZE8O_rec UINT64_C(2080375189), // ADDZE8_rec UINT64_C(2080376212), // ADDZEO UINT64_C(2080376213), // ADDZEO_rec UINT64_C(2080375189), // ADDZE_rec UINT64_C(0), // ADJCALLSTACKDOWN UINT64_C(0), // ADJCALLSTACKUP UINT64_C(2080374840), // AND UINT64_C(2080374840), // AND8 UINT64_C(2080374841), // AND8_rec UINT64_C(2080374904), // ANDC UINT64_C(2080374904), // ANDC8 UINT64_C(2080374905), // ANDC8_rec UINT64_C(2080374905), // ANDC_rec UINT64_C(1879048192), // ANDI8_rec UINT64_C(1946157056), // ANDIS8_rec UINT64_C(1946157056), // ANDIS_rec UINT64_C(1879048192), // ANDI_rec UINT64_C(0), // ANDI_rec_1_EQ_BIT UINT64_C(0), // ANDI_rec_1_EQ_BIT8 UINT64_C(0), // ANDI_rec_1_GT_BIT UINT64_C(0), // ANDI_rec_1_GT_BIT8 UINT64_C(2080374841), // AND_rec UINT64_C(0), // ATOMIC_CMP_SWAP_I16 UINT64_C(0), // ATOMIC_CMP_SWAP_I32 UINT64_C(0), // ATOMIC_CMP_SWAP_I64 UINT64_C(0), // ATOMIC_CMP_SWAP_I8 UINT64_C(0), // ATOMIC_LOAD_ADD_I16 UINT64_C(0), // ATOMIC_LOAD_ADD_I32 UINT64_C(0), // ATOMIC_LOAD_ADD_I64 UINT64_C(0), // ATOMIC_LOAD_ADD_I8 UINT64_C(0), // ATOMIC_LOAD_AND_I16 UINT64_C(0), // ATOMIC_LOAD_AND_I32 UINT64_C(0), // ATOMIC_LOAD_AND_I64 UINT64_C(0), // ATOMIC_LOAD_AND_I8 UINT64_C(0), // ATOMIC_LOAD_MAX_I16 UINT64_C(0), // ATOMIC_LOAD_MAX_I32 UINT64_C(0), // ATOMIC_LOAD_MAX_I64 UINT64_C(0), // ATOMIC_LOAD_MAX_I8 UINT64_C(0), // ATOMIC_LOAD_MIN_I16 UINT64_C(0), // ATOMIC_LOAD_MIN_I32 UINT64_C(0), // ATOMIC_LOAD_MIN_I64 UINT64_C(0), // ATOMIC_LOAD_MIN_I8 UINT64_C(0), // ATOMIC_LOAD_NAND_I16 UINT64_C(0), // ATOMIC_LOAD_NAND_I32 UINT64_C(0), // ATOMIC_LOAD_NAND_I64 UINT64_C(0), // ATOMIC_LOAD_NAND_I8 UINT64_C(0), // ATOMIC_LOAD_OR_I16 UINT64_C(0), // ATOMIC_LOAD_OR_I32 UINT64_C(0), // ATOMIC_LOAD_OR_I64 UINT64_C(0), // ATOMIC_LOAD_OR_I8 UINT64_C(0), // ATOMIC_LOAD_SUB_I16 UINT64_C(0), // ATOMIC_LOAD_SUB_I32 UINT64_C(0), // ATOMIC_LOAD_SUB_I64 UINT64_C(0), // ATOMIC_LOAD_SUB_I8 UINT64_C(0), // ATOMIC_LOAD_UMAX_I16 UINT64_C(0), // ATOMIC_LOAD_UMAX_I32 UINT64_C(0), // ATOMIC_LOAD_UMAX_I64 UINT64_C(0), // ATOMIC_LOAD_UMAX_I8 UINT64_C(0), // ATOMIC_LOAD_UMIN_I16 UINT64_C(0), // ATOMIC_LOAD_UMIN_I32 UINT64_C(0), // ATOMIC_LOAD_UMIN_I64 UINT64_C(0), // ATOMIC_LOAD_UMIN_I8 UINT64_C(0), // ATOMIC_LOAD_XOR_I16 UINT64_C(0), // ATOMIC_LOAD_XOR_I32 UINT64_C(0), // ATOMIC_LOAD_XOR_I64 UINT64_C(0), // ATOMIC_LOAD_XOR_I8 UINT64_C(0), // ATOMIC_SWAP_I16 UINT64_C(0), // ATOMIC_SWAP_I32 UINT64_C(0), // ATOMIC_SWAP_I64 UINT64_C(0), // ATOMIC_SWAP_I8 UINT64_C(512), // ATTN UINT64_C(1207959552), // B UINT64_C(1207959554), // BA UINT64_C(1098907648), // BC UINT64_C(1073741824), // BCC UINT64_C(1073741826), // BCCA UINT64_C(1275069472), // BCCCTR UINT64_C(1275069472), // BCCCTR8 UINT64_C(1275069473), // BCCCTRL UINT64_C(1275069473), // BCCCTRL8 UINT64_C(1073741825), // BCCL UINT64_C(1073741827), // BCCLA UINT64_C(1275068448), // BCCLR UINT64_C(1275068449), // BCCLRL UINT64_C(1300235296), // BCCTR UINT64_C(1300235296), // BCCTR8 UINT64_C(1283458080), // BCCTR8n UINT64_C(1300235297), // BCCTRL UINT64_C(1300235297), // BCCTRL8 UINT64_C(1283458081), // BCCTRL8n UINT64_C(1283458081), // BCCTRLn UINT64_C(1283458080), // BCCTRn UINT64_C(268436481), // BCDADD_rec UINT64_C(268895617), // BCDCFN_rec UINT64_C(268567937), // BCDCFSQ_rec UINT64_C(268830081), // BCDCFZ_rec UINT64_C(268436289), // BCDCPSGN_rec UINT64_C(268764545), // BCDCTN_rec UINT64_C(268436865), // BCDCTSQ_rec UINT64_C(268699009), // BCDCTZ_rec UINT64_C(270468481), // BCDSETSGN_rec UINT64_C(268436929), // BCDSR_rec UINT64_C(268436545), // BCDSUB_rec UINT64_C(268436673), // BCDS_rec UINT64_C(268436737), // BCDTRUNC_rec UINT64_C(268436609), // BCDUS_rec UINT64_C(268436801), // BCDUTRUNC_rec UINT64_C(1098907649), // BCL UINT64_C(1300234272), // BCLR UINT64_C(1300234273), // BCLRL UINT64_C(1283457057), // BCLRLn UINT64_C(1283457056), // BCLRn UINT64_C(1117716481), // BCLalways UINT64_C(1082130433), // BCLn UINT64_C(1317012512), // BCTR UINT64_C(1317012512), // BCTR8 UINT64_C(1317012513), // BCTRL UINT64_C(1317012513), // BCTRL8 UINT64_C(5656525675654283264), // BCTRL8_LDinto_toc UINT64_C(5656525675654283264), // BCTRL8_LDinto_toc_RM UINT64_C(1317012513), // BCTRL8_RM UINT64_C(5656525673909452800), // BCTRL_LWZinto_toc UINT64_C(5656525673909452800), // BCTRL_LWZinto_toc_RM UINT64_C(1317012513), // BCTRL_RM UINT64_C(1082130432), // BCn UINT64_C(1107296256), // BDNZ UINT64_C(1107296256), // BDNZ8 UINT64_C(1107296258), // BDNZA UINT64_C(1124073474), // BDNZAm UINT64_C(1126170626), // BDNZAp UINT64_C(1107296257), // BDNZL UINT64_C(1107296259), // BDNZLA UINT64_C(1124073475), // BDNZLAm UINT64_C(1126170627), // BDNZLAp UINT64_C(1308622880), // BDNZLR UINT64_C(1308622880), // BDNZLR8 UINT64_C(1308622881), // BDNZLRL UINT64_C(1325400097), // BDNZLRLm UINT64_C(1327497249), // BDNZLRLp UINT64_C(1325400096), // BDNZLRm UINT64_C(1327497248), // BDNZLRp UINT64_C(1124073473), // BDNZLm UINT64_C(1126170625), // BDNZLp UINT64_C(1124073472), // BDNZm UINT64_C(1126170624), // BDNZp UINT64_C(1111490560), // BDZ UINT64_C(1111490560), // BDZ8 UINT64_C(1111490562), // BDZA UINT64_C(1128267778), // BDZAm UINT64_C(1130364930), // BDZAp UINT64_C(1111490561), // BDZL UINT64_C(1111490563), // BDZLA UINT64_C(1128267779), // BDZLAm UINT64_C(1130364931), // BDZLAp UINT64_C(1312817184), // BDZLR UINT64_C(1312817184), // BDZLR8 UINT64_C(1312817185), // BDZLRL UINT64_C(1329594401), // BDZLRLm UINT64_C(1331691553), // BDZLRLp UINT64_C(1329594400), // BDZLRm UINT64_C(1331691552), // BDZLRp UINT64_C(1128267777), // BDZLm UINT64_C(1130364929), // BDZLp UINT64_C(1128267776), // BDZm UINT64_C(1130364928), // BDZp UINT64_C(1207959553), // BL UINT64_C(1207959553), // BL8 UINT64_C(5188146776636391424), // BL8_NOP UINT64_C(5188146776636391424), // BL8_NOP_RM UINT64_C(5188146776636391424), // BL8_NOP_TLS UINT64_C(1207959553), // BL8_NOTOC UINT64_C(1207959553), // BL8_NOTOC_RM UINT64_C(1207959553), // BL8_NOTOC_TLS UINT64_C(1207959553), // BL8_RM UINT64_C(1207959553), // BL8_TLS UINT64_C(1207959553), // BL8_TLS_ UINT64_C(1207959555), // BLA UINT64_C(1207959555), // BLA8 UINT64_C(5188146785226326016), // BLA8_NOP UINT64_C(5188146785226326016), // BLA8_NOP_RM UINT64_C(1207959555), // BLA8_RM UINT64_C(1207959555), // BLA_RM UINT64_C(1317011488), // BLR UINT64_C(1317011488), // BLR8 UINT64_C(1317011489), // BLRL UINT64_C(5188146776636391424), // BL_NOP UINT64_C(5188146776636391424), // BL_NOP_RM UINT64_C(1207959553), // BL_RM UINT64_C(1207959553), // BL_TLS UINT64_C(2080375288), // BPERMD UINT64_C(2080375158), // BRD UINT64_C(2080375222), // BRH UINT64_C(2080375222), // BRH8 UINT64_C(268435983), // BRINC UINT64_C(2080375094), // BRW UINT64_C(2080375094), // BRW8 UINT64_C(2080375224), // CFUGED UINT64_C(2080375644), // CLRBHRB UINT64_C(2080375800), // CMPB UINT64_C(2080375800), // CMPB8 UINT64_C(2082471936), // CMPD UINT64_C(740294656), // CMPDI UINT64_C(2080375232), // CMPEQB UINT64_C(2082472000), // CMPLD UINT64_C(673185792), // CMPLDI UINT64_C(2080374848), // CMPLW UINT64_C(671088640), // CMPLWI UINT64_C(2080375168), // CMPRB UINT64_C(2080375168), // CMPRB8 UINT64_C(2080374784), // CMPW UINT64_C(738197504), // CMPWI UINT64_C(2080374900), // CNTLZD UINT64_C(2080374902), // CNTLZDM UINT64_C(2080374901), // CNTLZD_rec UINT64_C(2080374836), // CNTLZW UINT64_C(2080374836), // CNTLZW8 UINT64_C(2080374837), // CNTLZW8_rec UINT64_C(2080374837), // CNTLZW_rec UINT64_C(2080375924), // CNTTZD UINT64_C(2080375926), // CNTTZDM UINT64_C(2080375925), // CNTTZD_rec UINT64_C(2080375860), // CNTTZW UINT64_C(2080375860), // CNTTZW8 UINT64_C(2080375861), // CNTTZW8_rec UINT64_C(2080375861), // CNTTZW_rec UINT64_C(2080376460), // CP_ABORT UINT64_C(2082473484), // CP_COPY UINT64_C(2082473484), // CP_COPY8 UINT64_C(2080376589), // CP_PASTE8_rec UINT64_C(2080376589), // CP_PASTE_rec UINT64_C(1288057410), // CR6SET UINT64_C(1288057218), // CR6UNSET UINT64_C(1275068930), // CRAND UINT64_C(1275068674), // CRANDC UINT64_C(1275068994), // CREQV UINT64_C(1275068866), // CRNAND UINT64_C(1275068482), // CRNOR UINT64_C(1275068482), // CRNOT UINT64_C(1275069314), // CROR UINT64_C(1275069250), // CRORC UINT64_C(1275068994), // CRSET UINT64_C(1275068802), // CRUNSET UINT64_C(1275068802), // CRXOR UINT64_C(1073741824), // CTRL_DEP UINT64_C(2080376294), // DARN UINT64_C(2080376300), // DCBA UINT64_C(2080374956), // DCBF UINT64_C(2080375038), // DCBFEP UINT64_C(2080375724), // DCBI UINT64_C(2080374892), // DCBST UINT64_C(2080374910), // DCBSTEP UINT64_C(2080375340), // DCBT UINT64_C(2080375422), // DCBTEP UINT64_C(2080375276), // DCBTST UINT64_C(2080375294), // DCBTSTEP UINT64_C(2080376812), // DCBZ UINT64_C(2080376830), // DCBZEP UINT64_C(2082473964), // DCBZL UINT64_C(2082473982), // DCBZLEP UINT64_C(2080375692), // DCCCI UINT64_C(2080375762), // DIVD UINT64_C(2080375634), // DIVDE UINT64_C(2080376658), // DIVDEO UINT64_C(2080376659), // DIVDEO_rec UINT64_C(2080375570), // DIVDEU UINT64_C(2080376594), // DIVDEUO UINT64_C(2080376595), // DIVDEUO_rec UINT64_C(2080375571), // DIVDEU_rec UINT64_C(2080375635), // DIVDE_rec UINT64_C(2080376786), // DIVDO UINT64_C(2080376787), // DIVDO_rec UINT64_C(2080375698), // DIVDU UINT64_C(2080376722), // DIVDUO UINT64_C(2080376723), // DIVDUO_rec UINT64_C(2080375699), // DIVDU_rec UINT64_C(2080375763), // DIVD_rec UINT64_C(2080375766), // DIVW UINT64_C(2080375638), // DIVWE UINT64_C(2080376662), // DIVWEO UINT64_C(2080376663), // DIVWEO_rec UINT64_C(2080375574), // DIVWEU UINT64_C(2080376598), // DIVWEUO UINT64_C(2080376599), // DIVWEUO_rec UINT64_C(2080375575), // DIVWEU_rec UINT64_C(2080375639), // DIVWE_rec UINT64_C(2080376790), // DIVWO UINT64_C(2080376791), // DIVWO_rec UINT64_C(2080375702), // DIVWU UINT64_C(2080376726), // DIVWUO UINT64_C(2080376727), // DIVWUO_rec UINT64_C(2080375703), // DIVWU_rec UINT64_C(2080375767), // DIVW_rec UINT64_C(2080768354), // DMMR UINT64_C(2080506210), // DMSETDMRZ UINT64_C(2080833890), // DMXOR UINT64_C(4026533776), // DMXXEXTFDMR256 UINT64_C(4026533648), // DMXXEXTFDMR512 UINT64_C(4026599184), // DMXXEXTFDMR512_HI UINT64_C(4026533780), // DMXXINSTFDMR256 UINT64_C(4026533712), // DMXXINSTFDMR512 UINT64_C(4026599248), // DMXXINSTFDMR512_HI UINT64_C(2080376428), // DSS UINT64_C(2113930860), // DSSALL UINT64_C(2080375468), // DST UINT64_C(2080375468), // DST64 UINT64_C(2080375532), // DSTST UINT64_C(2080375532), // DSTST64 UINT64_C(2113929964), // DSTSTT UINT64_C(2113929964), // DSTSTT64 UINT64_C(2113929900), // DSTT UINT64_C(2113929900), // DSTT64 UINT64_C(0), // DYNALLOC UINT64_C(0), // DYNALLOC8 UINT64_C(0), // DYNAREAOFFSET UINT64_C(0), // DYNAREAOFFSET8 UINT64_C(0), // DecreaseCTR8loop UINT64_C(0), // DecreaseCTRloop UINT64_C(268436196), // EFDABS UINT64_C(268436192), // EFDADD UINT64_C(268436207), // EFDCFS UINT64_C(268436211), // EFDCFSF UINT64_C(268436209), // EFDCFSI UINT64_C(268436195), // EFDCFSID UINT64_C(268436210), // EFDCFUF UINT64_C(268436208), // EFDCFUI UINT64_C(268436194), // EFDCFUID UINT64_C(268436206), // EFDCMPEQ UINT64_C(268436204), // EFDCMPGT UINT64_C(268436205), // EFDCMPLT UINT64_C(268436215), // EFDCTSF UINT64_C(268436213), // EFDCTSI UINT64_C(268436203), // EFDCTSIDZ UINT64_C(268436218), // EFDCTSIZ UINT64_C(268436214), // EFDCTUF UINT64_C(268436212), // EFDCTUI UINT64_C(268436202), // EFDCTUIDZ UINT64_C(268436216), // EFDCTUIZ UINT64_C(268436201), // EFDDIV UINT64_C(268436200), // EFDMUL UINT64_C(268436197), // EFDNABS UINT64_C(268436198), // EFDNEG UINT64_C(268436193), // EFDSUB UINT64_C(268436222), // EFDTSTEQ UINT64_C(268436220), // EFDTSTGT UINT64_C(268436221), // EFDTSTLT UINT64_C(268436164), // EFSABS UINT64_C(268436160), // EFSADD UINT64_C(268436175), // EFSCFD UINT64_C(268436179), // EFSCFSF UINT64_C(268436177), // EFSCFSI UINT64_C(268436178), // EFSCFUF UINT64_C(268436176), // EFSCFUI UINT64_C(268436174), // EFSCMPEQ UINT64_C(268436172), // EFSCMPGT UINT64_C(268436173), // EFSCMPLT UINT64_C(268436183), // EFSCTSF UINT64_C(268436181), // EFSCTSI UINT64_C(268436186), // EFSCTSIZ UINT64_C(268436182), // EFSCTUF UINT64_C(268436180), // EFSCTUI UINT64_C(268436184), // EFSCTUIZ UINT64_C(268436169), // EFSDIV UINT64_C(268436168), // EFSMUL UINT64_C(268436165), // EFSNABS UINT64_C(268436166), // EFSNEG UINT64_C(268436161), // EFSSUB UINT64_C(268436190), // EFSTSTEQ UINT64_C(268436188), // EFSTSTGT UINT64_C(268436189), // EFSTSTLT UINT64_C(0), // EH_SjLj_LongJmp32 UINT64_C(0), // EH_SjLj_LongJmp64 UINT64_C(0), // EH_SjLj_SetJmp32 UINT64_C(0), // EH_SjLj_SetJmp64 UINT64_C(0), // EH_SjLj_Setup UINT64_C(2080375352), // EQV UINT64_C(2080375352), // EQV8 UINT64_C(2080375353), // EQV8_rec UINT64_C(2080375353), // EQV_rec UINT64_C(268435976), // EVABS UINT64_C(268435970), // EVADDIW UINT64_C(268436681), // EVADDSMIAAW UINT64_C(268436673), // EVADDSSIAAW UINT64_C(268436680), // EVADDUMIAAW UINT64_C(268436672), // EVADDUSIAAW UINT64_C(268435968), // EVADDW UINT64_C(268435985), // EVAND UINT64_C(268435986), // EVANDC UINT64_C(268436020), // EVCMPEQ UINT64_C(268436017), // EVCMPGTS UINT64_C(268436016), // EVCMPGTU UINT64_C(268436019), // EVCMPLTS UINT64_C(268436018), // EVCMPLTU UINT64_C(268435982), // EVCNTLSW UINT64_C(268435981), // EVCNTLZW UINT64_C(268436678), // EVDIVWS UINT64_C(268436679), // EVDIVWU UINT64_C(268435993), // EVEQV UINT64_C(268435978), // EVEXTSB UINT64_C(268435979), // EVEXTSH UINT64_C(268436100), // EVFSABS UINT64_C(268436096), // EVFSADD UINT64_C(268436115), // EVFSCFSF UINT64_C(268436113), // EVFSCFSI UINT64_C(268436114), // EVFSCFUF UINT64_C(268436106), // EVFSCFUI UINT64_C(268436110), // EVFSCMPEQ UINT64_C(268436108), // EVFSCMPGT UINT64_C(268436109), // EVFSCMPLT UINT64_C(268436119), // EVFSCTSF UINT64_C(268436117), // EVFSCTSI UINT64_C(268436122), // EVFSCTSIZ UINT64_C(268436118), // EVFSCTUF UINT64_C(268436116), // EVFSCTUI UINT64_C(268436120), // EVFSCTUIZ UINT64_C(268436105), // EVFSDIV UINT64_C(268436104), // EVFSMUL UINT64_C(268436101), // EVFSNABS UINT64_C(268436102), // EVFSNEG UINT64_C(268436097), // EVFSSUB UINT64_C(268436126), // EVFSTSTEQ UINT64_C(268436124), // EVFSTSTGT UINT64_C(268436125), // EVFSTSTLT UINT64_C(268436225), // EVLDD UINT64_C(268436224), // EVLDDX UINT64_C(268436229), // EVLDH UINT64_C(268436228), // EVLDHX UINT64_C(268436227), // EVLDW UINT64_C(268436226), // EVLDWX UINT64_C(268436233), // EVLHHESPLAT UINT64_C(268436232), // EVLHHESPLATX UINT64_C(268436239), // EVLHHOSSPLAT UINT64_C(268436238), // EVLHHOSSPLATX UINT64_C(268436237), // EVLHHOUSPLAT UINT64_C(268436236), // EVLHHOUSPLATX UINT64_C(268436241), // EVLWHE UINT64_C(268436240), // EVLWHEX UINT64_C(268436247), // EVLWHOS UINT64_C(268436246), // EVLWHOSX UINT64_C(268436245), // EVLWHOU UINT64_C(268436244), // EVLWHOUX UINT64_C(268436253), // EVLWHSPLAT UINT64_C(268436252), // EVLWHSPLATX UINT64_C(268436249), // EVLWWSPLAT UINT64_C(268436248), // EVLWWSPLATX UINT64_C(268436012), // EVMERGEHI UINT64_C(268436014), // EVMERGEHILO UINT64_C(268436013), // EVMERGELO UINT64_C(268436015), // EVMERGELOHI UINT64_C(268436779), // EVMHEGSMFAA UINT64_C(268436907), // EVMHEGSMFAN UINT64_C(268436777), // EVMHEGSMIAA UINT64_C(268436905), // EVMHEGSMIAN UINT64_C(268436776), // EVMHEGUMIAA UINT64_C(268436904), // EVMHEGUMIAN UINT64_C(268436491), // EVMHESMF UINT64_C(268436523), // EVMHESMFA UINT64_C(268436747), // EVMHESMFAAW UINT64_C(268436875), // EVMHESMFANW UINT64_C(268436489), // EVMHESMI UINT64_C(268436521), // EVMHESMIA UINT64_C(268436745), // EVMHESMIAAW UINT64_C(268436873), // EVMHESMIANW UINT64_C(268436483), // EVMHESSF UINT64_C(268436515), // EVMHESSFA UINT64_C(268436739), // EVMHESSFAAW UINT64_C(268436867), // EVMHESSFANW UINT64_C(268436737), // EVMHESSIAAW UINT64_C(268436865), // EVMHESSIANW UINT64_C(268436488), // EVMHEUMI UINT64_C(268436520), // EVMHEUMIA UINT64_C(268436744), // EVMHEUMIAAW UINT64_C(268436872), // EVMHEUMIANW UINT64_C(268436736), // EVMHEUSIAAW UINT64_C(268436864), // EVMHEUSIANW UINT64_C(268436783), // EVMHOGSMFAA UINT64_C(268436911), // EVMHOGSMFAN UINT64_C(268436781), // EVMHOGSMIAA UINT64_C(268436909), // EVMHOGSMIAN UINT64_C(268436780), // EVMHOGUMIAA UINT64_C(268436908), // EVMHOGUMIAN UINT64_C(268436495), // EVMHOSMF UINT64_C(268436527), // EVMHOSMFA UINT64_C(268436751), // EVMHOSMFAAW UINT64_C(268436879), // EVMHOSMFANW UINT64_C(268436493), // EVMHOSMI UINT64_C(268436525), // EVMHOSMIA UINT64_C(268436749), // EVMHOSMIAAW UINT64_C(268436877), // EVMHOSMIANW UINT64_C(268436487), // EVMHOSSF UINT64_C(268436519), // EVMHOSSFA UINT64_C(268436743), // EVMHOSSFAAW UINT64_C(268436871), // EVMHOSSFANW UINT64_C(268436741), // EVMHOSSIAAW UINT64_C(268436869), // EVMHOSSIANW UINT64_C(268436492), // EVMHOUMI UINT64_C(268436524), // EVMHOUMIA UINT64_C(268436748), // EVMHOUMIAAW UINT64_C(268436876), // EVMHOUMIANW UINT64_C(268436740), // EVMHOUSIAAW UINT64_C(268436868), // EVMHOUSIANW UINT64_C(268436676), // EVMRA UINT64_C(268436559), // EVMWHSMF UINT64_C(268436591), // EVMWHSMFA UINT64_C(268436557), // EVMWHSMI UINT64_C(268436589), // EVMWHSMIA UINT64_C(268436551), // EVMWHSSF UINT64_C(268436583), // EVMWHSSFA UINT64_C(268436556), // EVMWHUMI UINT64_C(268436588), // EVMWHUMIA UINT64_C(268436809), // EVMWLSMIAAW UINT64_C(268436937), // EVMWLSMIANW UINT64_C(268436801), // EVMWLSSIAAW UINT64_C(268436929), // EVMWLSSIANW UINT64_C(268436552), // EVMWLUMI UINT64_C(268436584), // EVMWLUMIA UINT64_C(268436808), // EVMWLUMIAAW UINT64_C(268436936), // EVMWLUMIANW UINT64_C(268436800), // EVMWLUSIAAW UINT64_C(268436928), // EVMWLUSIANW UINT64_C(268436571), // EVMWSMF UINT64_C(268436603), // EVMWSMFA UINT64_C(268436827), // EVMWSMFAA UINT64_C(268436955), // EVMWSMFAN UINT64_C(268436569), // EVMWSMI UINT64_C(268436601), // EVMWSMIA UINT64_C(268436825), // EVMWSMIAA UINT64_C(268436953), // EVMWSMIAN UINT64_C(268436563), // EVMWSSF UINT64_C(268436595), // EVMWSSFA UINT64_C(268436819), // EVMWSSFAA UINT64_C(268436947), // EVMWSSFAN UINT64_C(268436568), // EVMWUMI UINT64_C(268436600), // EVMWUMIA UINT64_C(268436824), // EVMWUMIAA UINT64_C(268436952), // EVMWUMIAN UINT64_C(268435998), // EVNAND UINT64_C(268435977), // EVNEG UINT64_C(268435992), // EVNOR UINT64_C(268435991), // EVOR UINT64_C(268435995), // EVORC UINT64_C(268436008), // EVRLW UINT64_C(268436010), // EVRLWI UINT64_C(268435980), // EVRNDW UINT64_C(268436088), // EVSEL UINT64_C(268436004), // EVSLW UINT64_C(268436006), // EVSLWI UINT64_C(268436011), // EVSPLATFI UINT64_C(268436009), // EVSPLATI UINT64_C(268436003), // EVSRWIS UINT64_C(268436002), // EVSRWIU UINT64_C(268436001), // EVSRWS UINT64_C(268436000), // EVSRWU UINT64_C(268436257), // EVSTDD UINT64_C(268436256), // EVSTDDX UINT64_C(268436261), // EVSTDH UINT64_C(268436260), // EVSTDHX UINT64_C(268436259), // EVSTDW UINT64_C(268436258), // EVSTDWX UINT64_C(268436273), // EVSTWHE UINT64_C(268436272), // EVSTWHEX UINT64_C(268436277), // EVSTWHO UINT64_C(268436276), // EVSTWHOX UINT64_C(268436281), // EVSTWWE UINT64_C(268436280), // EVSTWWEX UINT64_C(268436285), // EVSTWWO UINT64_C(268436284), // EVSTWWOX UINT64_C(268436683), // EVSUBFSMIAAW UINT64_C(268436675), // EVSUBFSSIAAW UINT64_C(268436682), // EVSUBFUMIAAW UINT64_C(268436674), // EVSUBFUSIAAW UINT64_C(268435972), // EVSUBFW UINT64_C(268435974), // EVSUBIFW UINT64_C(268435990), // EVXOR UINT64_C(2080376692), // EXTSB UINT64_C(2080376692), // EXTSB8 UINT64_C(2080376692), // EXTSB8_32_64 UINT64_C(2080376693), // EXTSB8_rec UINT64_C(2080376693), // EXTSB_rec UINT64_C(2080376628), // EXTSH UINT64_C(2080376628), // EXTSH8 UINT64_C(2080376628), // EXTSH8_32_64 UINT64_C(2080376629), // EXTSH8_rec UINT64_C(2080376629), // EXTSH_rec UINT64_C(2080376756), // EXTSW UINT64_C(2080376564), // EXTSWSLI UINT64_C(2080376564), // EXTSWSLI_32_64 UINT64_C(2080376565), // EXTSWSLI_32_64_rec UINT64_C(2080376565), // EXTSWSLI_rec UINT64_C(2080376756), // EXTSW_32 UINT64_C(2080376756), // EXTSW_32_64 UINT64_C(2080376757), // EXTSW_32_64_rec UINT64_C(2080376757), // EXTSW_rec UINT64_C(2080376492), // EnforceIEIO UINT64_C(4227858960), // FABSD UINT64_C(4227858961), // FABSD_rec UINT64_C(4227858960), // FABSS UINT64_C(4227858961), // FABSS_rec UINT64_C(4227858474), // FADD UINT64_C(3959423018), // FADDS UINT64_C(3959423019), // FADDS_rec UINT64_C(4227858475), // FADD_rec UINT64_C(0), // FADDrtz UINT64_C(4227860124), // FCFID UINT64_C(3959424668), // FCFIDS UINT64_C(3959424669), // FCFIDS_rec UINT64_C(4227860380), // FCFIDU UINT64_C(3959424924), // FCFIDUS UINT64_C(3959424925), // FCFIDUS_rec UINT64_C(4227860381), // FCFIDU_rec UINT64_C(4227860125), // FCFID_rec UINT64_C(4227858496), // FCMPOD UINT64_C(4227858496), // FCMPOS UINT64_C(4227858432), // FCMPUD UINT64_C(4227858432), // FCMPUS UINT64_C(4227858448), // FCPSGND UINT64_C(4227858449), // FCPSGND_rec UINT64_C(4227858448), // FCPSGNS UINT64_C(4227858449), // FCPSGNS_rec UINT64_C(4227860060), // FCTID UINT64_C(4227860316), // FCTIDU UINT64_C(4227860318), // FCTIDUZ UINT64_C(4227860319), // FCTIDUZ_rec UINT64_C(4227860317), // FCTIDU_rec UINT64_C(4227860062), // FCTIDZ UINT64_C(4227860063), // FCTIDZ_rec UINT64_C(4227860061), // FCTID_rec UINT64_C(4227858460), // FCTIW UINT64_C(4227858716), // FCTIWU UINT64_C(4227858718), // FCTIWUZ UINT64_C(4227858719), // FCTIWUZ_rec UINT64_C(4227858717), // FCTIWU_rec UINT64_C(4227858462), // FCTIWZ UINT64_C(4227858463), // FCTIWZ_rec UINT64_C(4227858461), // FCTIW_rec UINT64_C(4227858468), // FDIV UINT64_C(3959423012), // FDIVS UINT64_C(3959423013), // FDIVS_rec UINT64_C(4227858469), // FDIV_rec UINT64_C(4227858490), // FMADD UINT64_C(3959423034), // FMADDS UINT64_C(3959423035), // FMADDS_rec UINT64_C(4227858491), // FMADD_rec UINT64_C(4227858576), // FMR UINT64_C(4227858577), // FMR_rec UINT64_C(4227858488), // FMSUB UINT64_C(3959423032), // FMSUBS UINT64_C(3959423033), // FMSUBS_rec UINT64_C(4227858489), // FMSUB_rec UINT64_C(4227858482), // FMUL UINT64_C(3959423026), // FMULS UINT64_C(3959423027), // FMULS_rec UINT64_C(4227858483), // FMUL_rec UINT64_C(4227858704), // FNABSD UINT64_C(4227858705), // FNABSD_rec UINT64_C(4227858704), // FNABSS UINT64_C(4227858705), // FNABSS_rec UINT64_C(4227858512), // FNEGD UINT64_C(4227858513), // FNEGD_rec UINT64_C(4227858512), // FNEGS UINT64_C(4227858513), // FNEGS_rec UINT64_C(4227858494), // FNMADD UINT64_C(3959423038), // FNMADDS UINT64_C(3959423039), // FNMADDS_rec UINT64_C(4227858495), // FNMADD_rec UINT64_C(4227858492), // FNMSUB UINT64_C(3959423036), // FNMSUBS UINT64_C(3959423037), // FNMSUBS_rec UINT64_C(4227858493), // FNMSUB_rec UINT64_C(4227858480), // FRE UINT64_C(3959423024), // FRES UINT64_C(3959423025), // FRES_rec UINT64_C(4227858481), // FRE_rec UINT64_C(4227859408), // FRIMD UINT64_C(4227859409), // FRIMD_rec UINT64_C(4227859408), // FRIMS UINT64_C(4227859409), // FRIMS_rec UINT64_C(4227859216), // FRIND UINT64_C(4227859217), // FRIND_rec UINT64_C(4227859216), // FRINS UINT64_C(4227859217), // FRINS_rec UINT64_C(4227859344), // FRIPD UINT64_C(4227859345), // FRIPD_rec UINT64_C(4227859344), // FRIPS UINT64_C(4227859345), // FRIPS_rec UINT64_C(4227859280), // FRIZD UINT64_C(4227859281), // FRIZD_rec UINT64_C(4227859280), // FRIZS UINT64_C(4227859281), // FRIZS_rec UINT64_C(4227858456), // FRSP UINT64_C(4227858457), // FRSP_rec UINT64_C(4227858484), // FRSQRTE UINT64_C(3959423028), // FRSQRTES UINT64_C(3959423029), // FRSQRTES_rec UINT64_C(4227858485), // FRSQRTE_rec UINT64_C(4227858478), // FSELD UINT64_C(4227858479), // FSELD_rec UINT64_C(4227858478), // FSELS UINT64_C(4227858479), // FSELS_rec UINT64_C(4227858476), // FSQRT UINT64_C(3959423020), // FSQRTS UINT64_C(3959423021), // FSQRTS_rec UINT64_C(4227858477), // FSQRT_rec UINT64_C(4227858472), // FSUB UINT64_C(3959423016), // FSUBS UINT64_C(3959423017), // FSUBS_rec UINT64_C(4227858473), // FSUB_rec UINT64_C(4227858688), // FTDIV UINT64_C(4227858752), // FTSQRT UINT64_C(0), // GETtlsADDR UINT64_C(0), // GETtlsADDR32 UINT64_C(0), // GETtlsADDR32AIX UINT64_C(0), // GETtlsADDR64AIX UINT64_C(0), // GETtlsADDRPCREL UINT64_C(0), // GETtlsldADDR UINT64_C(0), // GETtlsldADDR32 UINT64_C(0), // GETtlsldADDRPCREL UINT64_C(2080376292), // HASHCHK UINT64_C(2080376292), // HASHCHK8 UINT64_C(2080376164), // HASHCHKP UINT64_C(2080376164), // HASHCHKP8 UINT64_C(2080376228), // HASHST UINT64_C(2080376228), // HASHST8 UINT64_C(2080376100), // HASHSTP UINT64_C(2080376100), // HASHSTP8 UINT64_C(1275068964), // HRFID UINT64_C(2080376748), // ICBI UINT64_C(2080376766), // ICBIEP UINT64_C(2080375244), // ICBLC UINT64_C(2080375180), // ICBLQ UINT64_C(2080374828), // ICBT UINT64_C(2080375756), // ICBTLS UINT64_C(2080376716), // ICCCI UINT64_C(2080374814), // ISEL UINT64_C(2080374814), // ISEL8 UINT64_C(1275068716), // ISYNC UINT64_C(939524096), // LA UINT64_C(939524096), // LA8 UINT64_C(2080374888), // LBARX UINT64_C(2080374889), // LBARXL UINT64_C(2080374974), // LBEPX UINT64_C(2281701376), // LBZ UINT64_C(2281701376), // LBZ8 UINT64_C(2080376490), // LBZCIX UINT64_C(2348810240), // LBZU UINT64_C(2348810240), // LBZU8 UINT64_C(2080375022), // LBZUX UINT64_C(2080375022), // LBZUX8 UINT64_C(2080374958), // LBZX UINT64_C(2080374958), // LBZX8 UINT64_C(2080374958), // LBZXTLS UINT64_C(2080374958), // LBZXTLS_ UINT64_C(2080374958), // LBZXTLS_32 UINT64_C(3892314112), // LD UINT64_C(2080374952), // LDARX UINT64_C(2080374953), // LDARXL UINT64_C(2080376012), // LDAT UINT64_C(2080375848), // LDBRX UINT64_C(2080376554), // LDCIX UINT64_C(3892314113), // LDU UINT64_C(2080374890), // LDUX UINT64_C(2080374826), // LDX UINT64_C(2080374826), // LDXTLS UINT64_C(2080374826), // LDXTLS_ UINT64_C(0), // LDgotTprelL UINT64_C(0), // LDgotTprelL32 UINT64_C(0), // LDtoc UINT64_C(0), // LDtocBA UINT64_C(0), // LDtocCPT UINT64_C(0), // LDtocJTI UINT64_C(0), // LDtocL UINT64_C(3355443200), // LFD UINT64_C(2080375998), // LFDEPX UINT64_C(3422552064), // LFDU UINT64_C(2080376046), // LFDUX UINT64_C(2080375982), // LFDX UINT64_C(2080376494), // LFIWAX UINT64_C(2080376558), // LFIWZX UINT64_C(3221225472), // LFS UINT64_C(3288334336), // LFSU UINT64_C(2080375918), // LFSUX UINT64_C(2080375854), // LFSX UINT64_C(2818572288), // LHA UINT64_C(2818572288), // LHA8 UINT64_C(2080375016), // LHARX UINT64_C(2080375017), // LHARXL UINT64_C(2885681152), // LHAU UINT64_C(2885681152), // LHAU8 UINT64_C(2080375534), // LHAUX UINT64_C(2080375534), // LHAUX8 UINT64_C(2080375470), // LHAX UINT64_C(2080375470), // LHAX8 UINT64_C(2080376364), // LHBRX UINT64_C(2080376364), // LHBRX8 UINT64_C(2080375358), // LHEPX UINT64_C(2684354560), // LHZ UINT64_C(2684354560), // LHZ8 UINT64_C(2080376426), // LHZCIX UINT64_C(2751463424), // LHZU UINT64_C(2751463424), // LHZU8 UINT64_C(2080375406), // LHZUX UINT64_C(2080375406), // LHZUX8 UINT64_C(2080375342), // LHZX UINT64_C(2080375342), // LHZX8 UINT64_C(2080375342), // LHZXTLS UINT64_C(2080375342), // LHZXTLS_ UINT64_C(2080375342), // LHZXTLS_32 UINT64_C(939524096), // LI UINT64_C(939524096), // LI8 UINT64_C(1006632960), // LIS UINT64_C(1006632960), // LIS8 UINT64_C(3087007744), // LMW UINT64_C(3758096384), // LQ UINT64_C(2080375336), // LQARX UINT64_C(2080375337), // LQARXL UINT64_C(0), // LQX_PSEUDO UINT64_C(2080375978), // LSWI UINT64_C(2080374798), // LVEBX UINT64_C(2080374862), // LVEHX UINT64_C(2080374926), // LVEWX UINT64_C(2080374796), // LVSL UINT64_C(2080374860), // LVSR UINT64_C(2080374990), // LVX UINT64_C(2080375502), // LVXL UINT64_C(3892314114), // LWA UINT64_C(2080374824), // LWARX UINT64_C(2080374825), // LWARXL UINT64_C(2080375948), // LWAT UINT64_C(2080375530), // LWAUX UINT64_C(2080375466), // LWAX UINT64_C(2080375466), // LWAX_32 UINT64_C(3892314114), // LWA_32 UINT64_C(2080375852), // LWBRX UINT64_C(2080375852), // LWBRX8 UINT64_C(2080374846), // LWEPX UINT64_C(2147483648), // LWZ UINT64_C(2147483648), // LWZ8 UINT64_C(2080376362), // LWZCIX UINT64_C(2214592512), // LWZU UINT64_C(2214592512), // LWZU8 UINT64_C(2080374894), // LWZUX UINT64_C(2080374894), // LWZUX8 UINT64_C(2080374830), // LWZX UINT64_C(2080374830), // LWZX8 UINT64_C(2080374830), // LWZXTLS UINT64_C(2080374830), // LWZXTLS_ UINT64_C(2080374830), // LWZXTLS_32 UINT64_C(0), // LWZtoc UINT64_C(0), // LWZtocL UINT64_C(3825205250), // LXSD UINT64_C(2080375960), // LXSDX UINT64_C(2080376346), // LXSIBZX UINT64_C(2080376410), // LXSIHZX UINT64_C(2080374936), // LXSIWAX UINT64_C(2080374808), // LXSIWZX UINT64_C(3825205251), // LXSSP UINT64_C(2080375832), // LXSSPX UINT64_C(4093640705), // LXV UINT64_C(2080376536), // LXVB16X UINT64_C(2080376472), // LXVD2X UINT64_C(2080375448), // LXVDSX UINT64_C(2080376408), // LXVH8X UINT64_C(4028564176), // LXVKQ UINT64_C(2080375322), // LXVL UINT64_C(2080375386), // LXVLL UINT64_C(402653184), // LXVP UINT64_C(2080375962), // LXVPRL UINT64_C(2080376026), // LXVPRLL UINT64_C(2080375450), // LXVPX UINT64_C(2080374810), // LXVRBX UINT64_C(2080375002), // LXVRDX UINT64_C(2080374874), // LXVRHX UINT64_C(2080375834), // LXVRL UINT64_C(2080375898), // LXVRLL UINT64_C(2080374938), // LXVRWX UINT64_C(2080376344), // LXVW4X UINT64_C(2080375512), // LXVWSX UINT64_C(2080375320), // LXVX UINT64_C(268435504), // MADDHD UINT64_C(268435505), // MADDHDU UINT64_C(268435507), // MADDLD UINT64_C(268435507), // MADDLD8 UINT64_C(2080376492), // MBAR UINT64_C(1275068416), // MCRF UINT64_C(4227858560), // MCRFS UINT64_C(2080375936), // MCRXRX UINT64_C(2080375388), // MFBHRBE UINT64_C(2080374822), // MFCR UINT64_C(2080374822), // MFCR8 UINT64_C(2080965286), // MFCTR UINT64_C(2080965286), // MFCTR8 UINT64_C(2080375430), // MFDCR UINT64_C(4227859598), // MFFS UINT64_C(4229170318), // MFFSCDRN UINT64_C(4229235854), // MFFSCDRNI UINT64_C(4227925134), // MFFSCE UINT64_C(4229301390), // MFFSCRN UINT64_C(4229366926), // MFFSCRNI UINT64_C(4229432462), // MFFSL UINT64_C(4227859599), // MFFS_rec UINT64_C(2080899750), // MFLR UINT64_C(2080899750), // MFLR8 UINT64_C(2080374950), // MFMSR UINT64_C(2081423398), // MFOCRF UINT64_C(2081423398), // MFOCRF8 UINT64_C(2080375452), // MFPMR UINT64_C(2080375462), // MFSPR UINT64_C(2080375462), // MFSPR8 UINT64_C(2080375974), // MFSR UINT64_C(2080376102), // MFSRIN UINT64_C(2080375526), // MFTB UINT64_C(2081178278), // MFTB8 UINT64_C(2080572070), // MFUDSCR UINT64_C(2080374886), // MFVRD UINT64_C(2080391846), // MFVRSAVE UINT64_C(2080391846), // MFVRSAVEv UINT64_C(2080375014), // MFVRWZ UINT64_C(268436996), // MFVSCR UINT64_C(2080374886), // MFVSRD UINT64_C(2080375398), // MFVSRLD UINT64_C(2080375014), // MFVSRWZ UINT64_C(2080376338), // MODSD UINT64_C(2080376342), // MODSW UINT64_C(2080375314), // MODUD UINT64_C(2080375318), // MODUW UINT64_C(2080376556), // MSGSYNC UINT64_C(2080375980), // MSYNC UINT64_C(2080375072), // MTCRF UINT64_C(2080375072), // MTCRF8 UINT64_C(2080965542), // MTCTR UINT64_C(2080965542), // MTCTR8 UINT64_C(2080965542), // MTCTR8loop UINT64_C(2080965542), // MTCTRloop UINT64_C(2080375686), // MTDCR UINT64_C(4227858572), // MTFSB0 UINT64_C(4227858508), // MTFSB1 UINT64_C(4227859854), // MTFSF UINT64_C(4227858700), // MTFSFI UINT64_C(4227858701), // MTFSFI_rec UINT64_C(4227858700), // MTFSFIb UINT64_C(4227859855), // MTFSF_rec UINT64_C(4227859854), // MTFSFb UINT64_C(2080900006), // MTLR UINT64_C(2080900006), // MTLR8 UINT64_C(2080375076), // MTMSR UINT64_C(2080375140), // MTMSRD UINT64_C(2081423648), // MTOCRF UINT64_C(2081423648), // MTOCRF8 UINT64_C(2080375708), // MTPMR UINT64_C(2080375718), // MTSPR UINT64_C(2080375718), // MTSPR8 UINT64_C(2080375204), // MTSR UINT64_C(2080375268), // MTSRIN UINT64_C(2080572326), // MTUDSCR UINT64_C(2080375142), // MTVRD UINT64_C(2080392102), // MTVRSAVE UINT64_C(2080392102), // MTVRSAVEv UINT64_C(2080375206), // MTVRWA UINT64_C(2080375270), // MTVRWZ UINT64_C(268437060), // MTVSCR UINT64_C(269485634), // MTVSRBM UINT64_C(268435476), // MTVSRBMI UINT64_C(2080375142), // MTVSRD UINT64_C(2080375654), // MTVSRDD UINT64_C(269682242), // MTVSRDM UINT64_C(269551170), // MTVSRHM UINT64_C(269747778), // MTVSRQM UINT64_C(2080375206), // MTVSRWA UINT64_C(269616706), // MTVSRWM UINT64_C(2080375590), // MTVSRWS UINT64_C(2080375270), // MTVSRWZ UINT64_C(2080374930), // MULHD UINT64_C(2080374802), // MULHDU UINT64_C(2080374803), // MULHDU_rec UINT64_C(2080374931), // MULHD_rec UINT64_C(2080374934), // MULHW UINT64_C(2080374806), // MULHWU UINT64_C(2080374807), // MULHWU_rec UINT64_C(2080374935), // MULHW_rec UINT64_C(2080375250), // MULLD UINT64_C(2080376274), // MULLDO UINT64_C(2080376275), // MULLDO_rec UINT64_C(2080375251), // MULLD_rec UINT64_C(469762048), // MULLI UINT64_C(469762048), // MULLI8 UINT64_C(2080375254), // MULLW UINT64_C(2080376278), // MULLWO UINT64_C(2080376279), // MULLWO_rec UINT64_C(2080375255), // MULLW_rec UINT64_C(0), // MoveGOTtoLR UINT64_C(0), // MovePCtoLR UINT64_C(0), // MovePCtoLR8 UINT64_C(2080375736), // NAND UINT64_C(2080375736), // NAND8 UINT64_C(2080375737), // NAND8_rec UINT64_C(2080375737), // NAND_rec UINT64_C(1275069284), // NAP UINT64_C(2080374992), // NEG UINT64_C(2080374992), // NEG8 UINT64_C(2080376016), // NEG8O UINT64_C(2080376017), // NEG8O_rec UINT64_C(2080374993), // NEG8_rec UINT64_C(2080376016), // NEGO UINT64_C(2080376017), // NEGO_rec UINT64_C(2080374993), // NEG_rec UINT64_C(1610612736), // NOP UINT64_C(1612775424), // NOP_GT_PWR6 UINT64_C(1614938112), // NOP_GT_PWR7 UINT64_C(2080375032), // NOR UINT64_C(2080375032), // NOR8 UINT64_C(2080375033), // NOR8_rec UINT64_C(2080375033), // NOR_rec UINT64_C(2080375672), // OR UINT64_C(2080375672), // OR8 UINT64_C(2080375673), // OR8_rec UINT64_C(2080375608), // ORC UINT64_C(2080375608), // ORC8 UINT64_C(2080375609), // ORC8_rec UINT64_C(2080375609), // ORC_rec UINT64_C(1610612736), // ORI UINT64_C(1610612736), // ORI8 UINT64_C(1677721600), // ORIS UINT64_C(1677721600), // ORIS8 UINT64_C(2080375673), // OR_rec UINT64_C(432345565167091712), // PADDI UINT64_C(432345565167091712), // PADDI8 UINT64_C(436849164794462208), // PADDI8pc UINT64_C(0), // PADDIdtprel UINT64_C(436849164794462208), // PADDIpc UINT64_C(2080375096), // PDEPD UINT64_C(2080375160), // PEXTD UINT64_C(432345566509268992), // PLBZ UINT64_C(432345566509268992), // PLBZ8 UINT64_C(436849166136639488), // PLBZ8pc UINT64_C(436849166136639488), // PLBZpc UINT64_C(288230379976916992), // PLD UINT64_C(292733979604287488), // PLDpc UINT64_C(432345567583010816), // PLFD UINT64_C(436849167210381312), // PLFDpc UINT64_C(432345567448793088), // PLFS UINT64_C(436849167076163584), // PLFSpc UINT64_C(432345567046139904), // PLHA UINT64_C(432345567046139904), // PLHA8 UINT64_C(436849166673510400), // PLHA8pc UINT64_C(436849166673510400), // PLHApc UINT64_C(432345566911922176), // PLHZ UINT64_C(432345566911922176), // PLHZ8 UINT64_C(436849166539292672), // PLHZ8pc UINT64_C(436849166539292672), // PLHZpc UINT64_C(432345565167091712), // PLI UINT64_C(432345565167091712), // PLI8 UINT64_C(288230378903175168), // PLWA UINT64_C(288230378903175168), // PLWA8 UINT64_C(292733978530545664), // PLWA8pc UINT64_C(292733978530545664), // PLWApc UINT64_C(432345566375051264), // PLWZ UINT64_C(432345566375051264), // PLWZ8 UINT64_C(436849166002421760), // PLWZ8pc UINT64_C(436849166002421760), // PLWZpc UINT64_C(288230378970284032), // PLXSD UINT64_C(292733978597654528), // PLXSDpc UINT64_C(288230379037392896), // PLXSSP UINT64_C(292733978664763392), // PLXSSPpc UINT64_C(288230379507154944), // PLXV UINT64_C(288230380044025856), // PLXVP UINT64_C(292733979671396352), // PLXVPpc UINT64_C(292733979134525440), // PLXVpc UINT64_C(544935558871253400), // PMXVBF16GER2 UINT64_C(544935558871254928), // PMXVBF16GER2NN UINT64_C(544935558871253904), // PMXVBF16GER2NP UINT64_C(544935558871254416), // PMXVBF16GER2PN UINT64_C(544935558871253392), // PMXVBF16GER2PP UINT64_C(544935558871253400), // PMXVBF16GER2W UINT64_C(544935558871254928), // PMXVBF16GER2WNN UINT64_C(544935558871253904), // PMXVBF16GER2WNP UINT64_C(544935558871254416), // PMXVBF16GER2WPN UINT64_C(544935558871253392), // PMXVBF16GER2WPP UINT64_C(544935558871253144), // PMXVF16GER2 UINT64_C(544935558871254672), // PMXVF16GER2NN UINT64_C(544935558871253648), // PMXVF16GER2NP UINT64_C(544935558871254160), // PMXVF16GER2PN UINT64_C(544935558871253136), // PMXVF16GER2PP UINT64_C(544935558871253144), // PMXVF16GER2W UINT64_C(544935558871254672), // PMXVF16GER2WNN UINT64_C(544935558871253648), // PMXVF16GER2WNP UINT64_C(544935558871254160), // PMXVF16GER2WPN UINT64_C(544935558871253136), // PMXVF16GER2WPP UINT64_C(544935558871253208), // PMXVF32GER UINT64_C(544935558871254736), // PMXVF32GERNN UINT64_C(544935558871253712), // PMXVF32GERNP UINT64_C(544935558871254224), // PMXVF32GERPN UINT64_C(544935558871253200), // PMXVF32GERPP UINT64_C(544935558871253208), // PMXVF32GERW UINT64_C(544935558871254736), // PMXVF32GERWNN UINT64_C(544935558871253712), // PMXVF32GERWNP UINT64_C(544935558871254224), // PMXVF32GERWPN UINT64_C(544935558871253200), // PMXVF32GERWPP UINT64_C(544935558871253464), // PMXVF64GER UINT64_C(544935558871254992), // PMXVF64GERNN UINT64_C(544935558871253968), // PMXVF64GERNP UINT64_C(544935558871254480), // PMXVF64GERPN UINT64_C(544935558871253456), // PMXVF64GERPP UINT64_C(544935558871253464), // PMXVF64GERW UINT64_C(544935558871254992), // PMXVF64GERWNN UINT64_C(544935558871253968), // PMXVF64GERWNP UINT64_C(544935558871254480), // PMXVF64GERWPN UINT64_C(544935558871253456), // PMXVF64GERWPP UINT64_C(544935558871253592), // PMXVI16GER2 UINT64_C(544935558871253848), // PMXVI16GER2PP UINT64_C(544935558871253336), // PMXVI16GER2S UINT64_C(544935558871253328), // PMXVI16GER2SPP UINT64_C(544935558871253336), // PMXVI16GER2SW UINT64_C(544935558871253328), // PMXVI16GER2SWPP UINT64_C(544935558871253592), // PMXVI16GER2W UINT64_C(544935558871253848), // PMXVI16GER2WPP UINT64_C(544935558871253272), // PMXVI4GER8 UINT64_C(544935558871253264), // PMXVI4GER8PP UINT64_C(544935558871253272), // PMXVI4GER8W UINT64_C(544935558871253264), // PMXVI4GER8WPP UINT64_C(544935558871253016), // PMXVI8GER4 UINT64_C(544935558871253008), // PMXVI8GER4PP UINT64_C(544935558871253784), // PMXVI8GER4SPP UINT64_C(544935558871253016), // PMXVI8GER4W UINT64_C(544935558871253008), // PMXVI8GER4WPP UINT64_C(544935558871253784), // PMXVI8GER4WSPP UINT64_C(2080375028), // POPCNTB UINT64_C(2080375028), // POPCNTB8 UINT64_C(2080375796), // POPCNTD UINT64_C(2080375540), // POPCNTW UINT64_C(0), // PPC32GOT UINT64_C(0), // PPC32PICGOT UINT64_C(0), // PREPARE_PROBED_ALLOCA_32 UINT64_C(0), // PREPARE_PROBED_ALLOCA_64 UINT64_C(0), // PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_32 UINT64_C(0), // PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_64 UINT64_C(0), // PROBED_ALLOCA_32 UINT64_C(0), // PROBED_ALLOCA_64 UINT64_C(0), // PROBED_STACKALLOC_32 UINT64_C(0), // PROBED_STACKALLOC_64 UINT64_C(432345566777704448), // PSTB UINT64_C(432345566777704448), // PSTB8 UINT64_C(436849166405074944), // PSTB8pc UINT64_C(436849166405074944), // PSTBpc UINT64_C(288230380245352448), // PSTD UINT64_C(292733979872722944), // PSTDpc UINT64_C(432345567851446272), // PSTFD UINT64_C(436849167478816768), // PSTFDpc UINT64_C(432345567717228544), // PSTFS UINT64_C(436849167344599040), // PSTFSpc UINT64_C(432345567180357632), // PSTH UINT64_C(432345567180357632), // PSTH8 UINT64_C(436849166807728128), // PSTH8pc UINT64_C(436849166807728128), // PSTHpc UINT64_C(432345566643486720), // PSTW UINT64_C(432345566643486720), // PSTW8 UINT64_C(436849166270857216), // PSTW8pc UINT64_C(436849166270857216), // PSTWpc UINT64_C(288230379238719488), // PSTXSD UINT64_C(292733978866089984), // PSTXSDpc UINT64_C(288230379305828352), // PSTXSSP UINT64_C(292733978933198848), // PSTXSSPpc UINT64_C(288230379775590400), // PSTXV UINT64_C(288230380312461312), // PSTXVP UINT64_C(292733979939831808), // PSTXVPpc UINT64_C(292733979402960896), // PSTXVpc UINT64_C(0), // PseudoEIEIO UINT64_C(0), // RESTORE_ACC UINT64_C(0), // RESTORE_CR UINT64_C(0), // RESTORE_CRBIT UINT64_C(0), // RESTORE_QUADWORD UINT64_C(0), // RESTORE_UACC UINT64_C(0), // RESTORE_WACC UINT64_C(1275068518), // RFCI UINT64_C(1275068494), // RFDI UINT64_C(1275068708), // RFEBB UINT64_C(1275068516), // RFI UINT64_C(1275068452), // RFID UINT64_C(1275068492), // RFMCI UINT64_C(2013265936), // RLDCL UINT64_C(2013265937), // RLDCL_rec UINT64_C(2013265938), // RLDCR UINT64_C(2013265939), // RLDCR_rec UINT64_C(2013265928), // RLDIC UINT64_C(2013265920), // RLDICL UINT64_C(2013265920), // RLDICL_32 UINT64_C(2013265920), // RLDICL_32_64 UINT64_C(2013265921), // RLDICL_32_rec UINT64_C(2013265921), // RLDICL_rec UINT64_C(2013265924), // RLDICR UINT64_C(2013265924), // RLDICR_32 UINT64_C(2013265925), // RLDICR_rec UINT64_C(2013265929), // RLDIC_rec UINT64_C(2013265932), // RLDIMI UINT64_C(2013265933), // RLDIMI_rec UINT64_C(1342177280), // RLWIMI UINT64_C(1342177280), // RLWIMI8 UINT64_C(1342177281), // RLWIMI8_rec UINT64_C(1342177281), // RLWIMI_rec UINT64_C(1409286144), // RLWINM UINT64_C(1409286144), // RLWINM8 UINT64_C(1409286145), // RLWINM8_rec UINT64_C(1409286145), // RLWINM_rec UINT64_C(1543503872), // RLWNM UINT64_C(1543503872), // RLWNM8 UINT64_C(1543503873), // RLWNM8_rec UINT64_C(1543503873), // RLWNM_rec UINT64_C(0), // ReadTB UINT64_C(1140850690), // SC UINT64_C(0), // SELECT_CC_F16 UINT64_C(0), // SELECT_CC_F4 UINT64_C(0), // SELECT_CC_F8 UINT64_C(0), // SELECT_CC_I4 UINT64_C(0), // SELECT_CC_I8 UINT64_C(0), // SELECT_CC_SPE UINT64_C(0), // SELECT_CC_SPE4 UINT64_C(0), // SELECT_CC_VRRC UINT64_C(0), // SELECT_CC_VSFRC UINT64_C(0), // SELECT_CC_VSRC UINT64_C(0), // SELECT_CC_VSSRC UINT64_C(0), // SELECT_F16 UINT64_C(0), // SELECT_F4 UINT64_C(0), // SELECT_F8 UINT64_C(0), // SELECT_I4 UINT64_C(0), // SELECT_I8 UINT64_C(0), // SELECT_SPE UINT64_C(0), // SELECT_SPE4 UINT64_C(0), // SELECT_VRRC UINT64_C(0), // SELECT_VSFRC UINT64_C(0), // SELECT_VSRC UINT64_C(0), // SELECT_VSSRC UINT64_C(2080375040), // SETB UINT64_C(2080375040), // SETB8 UINT64_C(2080375552), // SETBC UINT64_C(2080375552), // SETBC8 UINT64_C(2080375616), // SETBCR UINT64_C(2080375616), // SETBCR8 UINT64_C(0), // SETFLM UINT64_C(2080375680), // SETNBC UINT64_C(2080375680), // SETNBC8 UINT64_C(2080375744), // SETNBCR UINT64_C(2080375744), // SETNBCR8 UINT64_C(0), // SETRND UINT64_C(0), // SETRNDi UINT64_C(2080376743), // SLBFEE_rec UINT64_C(2080375780), // SLBIA UINT64_C(2080375652), // SLBIE UINT64_C(2080375716), // SLBIEG UINT64_C(2080376614), // SLBMFEE UINT64_C(2080376486), // SLBMFEV UINT64_C(2080375588), // SLBMTE UINT64_C(2080375460), // SLBSYNC UINT64_C(2080374838), // SLD UINT64_C(2080374839), // SLD_rec UINT64_C(2080374832), // SLW UINT64_C(2080374832), // SLW8 UINT64_C(2080374833), // SLW8_rec UINT64_C(2080374833), // SLW_rec UINT64_C(2147483648), // SPELWZ UINT64_C(2080374830), // SPELWZX UINT64_C(2415919104), // SPESTW UINT64_C(2080375086), // SPESTWX UINT64_C(0), // SPILL_ACC UINT64_C(0), // SPILL_CR UINT64_C(0), // SPILL_CRBIT UINT64_C(0), // SPILL_QUADWORD UINT64_C(0), // SPILL_UACC UINT64_C(0), // SPILL_WACC UINT64_C(0), // SPLIT_QUADWORD UINT64_C(2080376372), // SRAD UINT64_C(2080376436), // SRADI UINT64_C(2080376436), // SRADI_32 UINT64_C(2080376437), // SRADI_rec UINT64_C(2080376373), // SRAD_rec UINT64_C(2080376368), // SRAW UINT64_C(2080376432), // SRAWI UINT64_C(2080376433), // SRAWI_rec UINT64_C(2080376369), // SRAW_rec UINT64_C(2080375862), // SRD UINT64_C(2080375863), // SRD_rec UINT64_C(2080375856), // SRW UINT64_C(2080375856), // SRW8 UINT64_C(2080375857), // SRW8_rec UINT64_C(2080375857), // SRW_rec UINT64_C(2550136832), // STB UINT64_C(2550136832), // STB8 UINT64_C(2080376746), // STBCIX UINT64_C(2080376173), // STBCX UINT64_C(2080375230), // STBEPX UINT64_C(2617245696), // STBU UINT64_C(2617245696), // STBU8 UINT64_C(2080375278), // STBUX UINT64_C(2080375278), // STBUX8 UINT64_C(2080375214), // STBX UINT64_C(2080375214), // STBX8 UINT64_C(2080375214), // STBXTLS UINT64_C(2080375214), // STBXTLS_ UINT64_C(2080375214), // STBXTLS_32 UINT64_C(4160749568), // STD UINT64_C(2080376268), // STDAT UINT64_C(2080376104), // STDBRX UINT64_C(2080376810), // STDCIX UINT64_C(2080375213), // STDCX UINT64_C(4160749569), // STDU UINT64_C(2080375146), // STDUX UINT64_C(2080375082), // STDX UINT64_C(2080375082), // STDXTLS UINT64_C(2080375082), // STDXTLS_ UINT64_C(3623878656), // STFD UINT64_C(2080376254), // STFDEPX UINT64_C(3690987520), // STFDU UINT64_C(2080376302), // STFDUX UINT64_C(2080376238), // STFDX UINT64_C(2080376750), // STFIWX UINT64_C(3489660928), // STFS UINT64_C(3556769792), // STFSU UINT64_C(2080376174), // STFSUX UINT64_C(2080376110), // STFSX UINT64_C(2952790016), // STH UINT64_C(2952790016), // STH8 UINT64_C(2080376620), // STHBRX UINT64_C(2080376682), // STHCIX UINT64_C(2080376237), // STHCX UINT64_C(2080375614), // STHEPX UINT64_C(3019898880), // STHU UINT64_C(3019898880), // STHU8 UINT64_C(2080375662), // STHUX UINT64_C(2080375662), // STHUX8 UINT64_C(2080375598), // STHX UINT64_C(2080375598), // STHX8 UINT64_C(2080375598), // STHXTLS UINT64_C(2080375598), // STHXTLS_ UINT64_C(2080375598), // STHXTLS_32 UINT64_C(3154116608), // STMW UINT64_C(1275069156), // STOP UINT64_C(4160749570), // STQ UINT64_C(2080375149), // STQCX UINT64_C(0), // STQX_PSEUDO UINT64_C(2080376234), // STSWI UINT64_C(2080375054), // STVEBX UINT64_C(2080375118), // STVEHX UINT64_C(2080375182), // STVEWX UINT64_C(2080375246), // STVX UINT64_C(2080375758), // STVXL UINT64_C(2415919104), // STW UINT64_C(2415919104), // STW8 UINT64_C(2080376204), // STWAT UINT64_C(2080376108), // STWBRX UINT64_C(2080376618), // STWCIX UINT64_C(2080375085), // STWCX UINT64_C(2080375102), // STWEPX UINT64_C(2483027968), // STWU UINT64_C(2483027968), // STWU8 UINT64_C(2080375150), // STWUX UINT64_C(2080375150), // STWUX8 UINT64_C(2080375086), // STWX UINT64_C(2080375086), // STWX8 UINT64_C(2080375086), // STWXTLS UINT64_C(2080375086), // STWXTLS_ UINT64_C(2080375086), // STWXTLS_32 UINT64_C(4093640706), // STXSD UINT64_C(2080376216), // STXSDX UINT64_C(2080376602), // STXSIBX UINT64_C(2080376602), // STXSIBXv UINT64_C(2080376666), // STXSIHX UINT64_C(2080376666), // STXSIHXv UINT64_C(2080375064), // STXSIWX UINT64_C(4093640707), // STXSSP UINT64_C(2080376088), // STXSSPX UINT64_C(4093640709), // STXV UINT64_C(2080376792), // STXVB16X UINT64_C(2080376728), // STXVD2X UINT64_C(2080376664), // STXVH8X UINT64_C(2080375578), // STXVL UINT64_C(2080375642), // STXVLL UINT64_C(402653185), // STXVP UINT64_C(2080376218), // STXVPRL UINT64_C(2080376282), // STXVPRLL UINT64_C(2080375706), // STXVPX UINT64_C(2080375066), // STXVRBX UINT64_C(2080375258), // STXVRDX UINT64_C(2080375130), // STXVRHX UINT64_C(2080376090), // STXVRL UINT64_C(2080376154), // STXVRLL UINT64_C(2080375194), // STXVRWX UINT64_C(2080376600), // STXVW4X UINT64_C(2080375576), // STXVX UINT64_C(2080374864), // SUBF UINT64_C(2080374864), // SUBF8 UINT64_C(2080375888), // SUBF8O UINT64_C(2080375889), // SUBF8O_rec UINT64_C(2080374865), // SUBF8_rec UINT64_C(2080374800), // SUBFC UINT64_C(2080374800), // SUBFC8 UINT64_C(2080375824), // SUBFC8O UINT64_C(2080375825), // SUBFC8O_rec UINT64_C(2080374801), // SUBFC8_rec UINT64_C(2080375824), // SUBFCO UINT64_C(2080375825), // SUBFCO_rec UINT64_C(2080374801), // SUBFC_rec UINT64_C(2080375056), // SUBFE UINT64_C(2080375056), // SUBFE8 UINT64_C(2080376080), // SUBFE8O UINT64_C(2080376081), // SUBFE8O_rec UINT64_C(2080375057), // SUBFE8_rec UINT64_C(2080376080), // SUBFEO UINT64_C(2080376081), // SUBFEO_rec UINT64_C(2080375057), // SUBFE_rec UINT64_C(536870912), // SUBFIC UINT64_C(536870912), // SUBFIC8 UINT64_C(2080375248), // SUBFME UINT64_C(2080375248), // SUBFME8 UINT64_C(2080376272), // SUBFME8O UINT64_C(2080376273), // SUBFME8O_rec UINT64_C(2080375249), // SUBFME8_rec UINT64_C(2080376272), // SUBFMEO UINT64_C(2080376273), // SUBFMEO_rec UINT64_C(2080375249), // SUBFME_rec UINT64_C(2080375888), // SUBFO UINT64_C(2080375889), // SUBFO_rec UINT64_C(2080374928), // SUBFUS UINT64_C(2080374929), // SUBFUS_rec UINT64_C(2080375184), // SUBFZE UINT64_C(2080375184), // SUBFZE8 UINT64_C(2080376208), // SUBFZE8O UINT64_C(2080376209), // SUBFZE8O_rec UINT64_C(2080375185), // SUBFZE8_rec UINT64_C(2080376208), // SUBFZEO UINT64_C(2080376209), // SUBFZEO_rec UINT64_C(2080375185), // SUBFZE_rec UINT64_C(2080374865), // SUBF_rec UINT64_C(2080375980), // SYNC UINT64_C(2080376605), // TABORT UINT64_C(2080376413), // TABORTDC UINT64_C(2080376541), // TABORTDCI UINT64_C(2080376349), // TABORTWC UINT64_C(2080376477), // TABORTWCI UINT64_C(1207959552), // TAILB UINT64_C(1207959552), // TAILB8 UINT64_C(1207959552), // TAILBA UINT64_C(1207959552), // TAILBA8 UINT64_C(1317012512), // TAILBCTR UINT64_C(1317012512), // TAILBCTR8 UINT64_C(2080376093), // TBEGIN UINT64_C(0), // TBEGIN_RET UINT64_C(2080376220), // TCHECK UINT64_C(0), // TCHECK_RET UINT64_C(0), // TCRETURNai UINT64_C(0), // TCRETURNai8 UINT64_C(0), // TCRETURNdi UINT64_C(0), // TCRETURNdi8 UINT64_C(0), // TCRETURNri UINT64_C(0), // TCRETURNri8 UINT64_C(2080374920), // TD UINT64_C(134217728), // TDI UINT64_C(2080376157), // TEND UINT64_C(2080375524), // TLBIA UINT64_C(2080375396), // TLBIE UINT64_C(2080375332), // TLBIEL UINT64_C(2080376356), // TLBIVAX UINT64_C(2080376740), // TLBLD UINT64_C(2080376804), // TLBLI UINT64_C(2080376676), // TLBRE UINT64_C(2080376676), // TLBRE2 UINT64_C(2080376612), // TLBSX UINT64_C(2080376612), // TLBSX2 UINT64_C(2080376613), // TLBSX2D UINT64_C(2080375916), // TLBSYNC UINT64_C(2080376740), // TLBWE UINT64_C(2080376740), // TLBWE2 UINT64_C(0), // TLSGDAIX UINT64_C(0), // TLSGDAIX8 UINT64_C(2145386504), // TRAP UINT64_C(2080376797), // TRECHKPT UINT64_C(2080376669), // TRECLAIM UINT64_C(2080376285), // TSR UINT64_C(2080374792), // TW UINT64_C(201326592), // TWI UINT64_C(0), // UNENCODED_NOP UINT64_C(0), // UpdateGBR UINT64_C(268436483), // VABSDUB UINT64_C(268436547), // VABSDUH UINT64_C(268436611), // VABSDUW UINT64_C(268435776), // VADDCUQ UINT64_C(268435840), // VADDCUW UINT64_C(268435517), // VADDECUQ UINT64_C(268435516), // VADDEUQM UINT64_C(268435466), // VADDFP UINT64_C(268436224), // VADDSBS UINT64_C(268436288), // VADDSHS UINT64_C(268436352), // VADDSWS UINT64_C(268435456), // VADDUBM UINT64_C(268435968), // VADDUBS UINT64_C(268435648), // VADDUDM UINT64_C(268435520), // VADDUHM UINT64_C(268436032), // VADDUHS UINT64_C(268435712), // VADDUQM UINT64_C(268435584), // VADDUWM UINT64_C(268436096), // VADDUWS UINT64_C(268436484), // VAND UINT64_C(268436548), // VANDC UINT64_C(268436738), // VAVGSB UINT64_C(268436802), // VAVGSH UINT64_C(268436866), // VAVGSW UINT64_C(268436482), // VAVGUB UINT64_C(268436546), // VAVGUH UINT64_C(268436610), // VAVGUW UINT64_C(268436940), // VBPERMD UINT64_C(268436812), // VBPERMQ UINT64_C(268436298), // VCFSX UINT64_C(268436298), // VCFSX_0 UINT64_C(268436813), // VCFUGED UINT64_C(268436234), // VCFUX UINT64_C(268436234), // VCFUX_0 UINT64_C(268436744), // VCIPHER UINT64_C(268436745), // VCIPHERLAST UINT64_C(268435853), // VCLRLB UINT64_C(268435917), // VCLRRB UINT64_C(268437250), // VCLZB UINT64_C(268437442), // VCLZD UINT64_C(268437380), // VCLZDM UINT64_C(268437314), // VCLZH UINT64_C(268436994), // VCLZLSBB UINT64_C(268437378), // VCLZW UINT64_C(268436422), // VCMPBFP UINT64_C(268437446), // VCMPBFP_rec UINT64_C(268435654), // VCMPEQFP UINT64_C(268436678), // VCMPEQFP_rec UINT64_C(268435462), // VCMPEQUB UINT64_C(268436486), // VCMPEQUB_rec UINT64_C(268435655), // VCMPEQUD UINT64_C(268436679), // VCMPEQUD_rec UINT64_C(268435526), // VCMPEQUH UINT64_C(268436550), // VCMPEQUH_rec UINT64_C(268435911), // VCMPEQUQ UINT64_C(268436935), // VCMPEQUQ_rec UINT64_C(268435590), // VCMPEQUW UINT64_C(268436614), // VCMPEQUW_rec UINT64_C(268435910), // VCMPGEFP UINT64_C(268436934), // VCMPGEFP_rec UINT64_C(268436166), // VCMPGTFP UINT64_C(268437190), // VCMPGTFP_rec UINT64_C(268436230), // VCMPGTSB UINT64_C(268437254), // VCMPGTSB_rec UINT64_C(268436423), // VCMPGTSD UINT64_C(268437447), // VCMPGTSD_rec UINT64_C(268436294), // VCMPGTSH UINT64_C(268437318), // VCMPGTSH_rec UINT64_C(268436359), // VCMPGTSQ UINT64_C(268437383), // VCMPGTSQ_rec UINT64_C(268436358), // VCMPGTSW UINT64_C(268437382), // VCMPGTSW_rec UINT64_C(268435974), // VCMPGTUB UINT64_C(268436998), // VCMPGTUB_rec UINT64_C(268436167), // VCMPGTUD UINT64_C(268437191), // VCMPGTUD_rec UINT64_C(268436038), // VCMPGTUH UINT64_C(268437062), // VCMPGTUH_rec UINT64_C(268436103), // VCMPGTUQ UINT64_C(268437127), // VCMPGTUQ_rec UINT64_C(268436102), // VCMPGTUW UINT64_C(268437126), // VCMPGTUW_rec UINT64_C(268435463), // VCMPNEB UINT64_C(268436487), // VCMPNEB_rec UINT64_C(268435527), // VCMPNEH UINT64_C(268436551), // VCMPNEH_rec UINT64_C(268435591), // VCMPNEW UINT64_C(268436615), // VCMPNEW_rec UINT64_C(268435719), // VCMPNEZB UINT64_C(268436743), // VCMPNEZB_rec UINT64_C(268435783), // VCMPNEZH UINT64_C(268436807), // VCMPNEZH_rec UINT64_C(268435847), // VCMPNEZW UINT64_C(268436871), // VCMPNEZW_rec UINT64_C(268435777), // VCMPSQ UINT64_C(268435713), // VCMPUQ UINT64_C(270009922), // VCNTMBB UINT64_C(270403138), // VCNTMBD UINT64_C(270140994), // VCNTMBH UINT64_C(270272066), // VCNTMBW UINT64_C(268436426), // VCTSXS UINT64_C(268436426), // VCTSXS_0 UINT64_C(268436362), // VCTUXS UINT64_C(268436362), // VCTUXS_0 UINT64_C(270272002), // VCTZB UINT64_C(270468610), // VCTZD UINT64_C(268437444), // VCTZDM UINT64_C(270337538), // VCTZH UINT64_C(268502530), // VCTZLSBB UINT64_C(270403074), // VCTZW UINT64_C(268436427), // VDIVESD UINT64_C(268436235), // VDIVESQ UINT64_C(268436363), // VDIVESW UINT64_C(268436171), // VDIVEUD UINT64_C(268435979), // VDIVEUQ UINT64_C(268436107), // VDIVEUW UINT64_C(268435915), // VDIVSD UINT64_C(268435723), // VDIVSQ UINT64_C(268435851), // VDIVSW UINT64_C(268435659), // VDIVUD UINT64_C(268435467), // VDIVUQ UINT64_C(268435595), // VDIVUW UINT64_C(268437124), // VEQV UINT64_C(268437058), // VEXPANDBM UINT64_C(268633666), // VEXPANDDM UINT64_C(268502594), // VEXPANDHM UINT64_C(268699202), // VEXPANDQM UINT64_C(268568130), // VEXPANDWM UINT64_C(268435850), // VEXPTEFP UINT64_C(268435486), // VEXTDDVLX UINT64_C(268435487), // VEXTDDVRX UINT64_C(268435480), // VEXTDUBVLX UINT64_C(268435481), // VEXTDUBVRX UINT64_C(268435482), // VEXTDUHVLX UINT64_C(268435483), // VEXTDUHVRX UINT64_C(268435484), // VEXTDUWVLX UINT64_C(268435485), // VEXTDUWVRX UINT64_C(268961346), // VEXTRACTBM UINT64_C(268436173), // VEXTRACTD UINT64_C(269157954), // VEXTRACTDM UINT64_C(269026882), // VEXTRACTHM UINT64_C(269223490), // VEXTRACTQM UINT64_C(268435981), // VEXTRACTUB UINT64_C(268436045), // VEXTRACTUH UINT64_C(268436109), // VEXTRACTUW UINT64_C(269092418), // VEXTRACTWM UINT64_C(270009858), // VEXTSB2D UINT64_C(270009858), // VEXTSB2Ds UINT64_C(269485570), // VEXTSB2W UINT64_C(269485570), // VEXTSB2Ws UINT64_C(270206466), // VEXTSD2Q UINT64_C(270075394), // VEXTSH2D UINT64_C(270075394), // VEXTSH2Ds UINT64_C(269551106), // VEXTSH2W UINT64_C(269551106), // VEXTSH2Ws UINT64_C(270140930), // VEXTSW2D UINT64_C(270140930), // VEXTSW2Ds UINT64_C(268437005), // VEXTUBLX UINT64_C(268437261), // VEXTUBRX UINT64_C(268437069), // VEXTUHLX UINT64_C(268437325), // VEXTUHRX UINT64_C(268437133), // VEXTUWLX UINT64_C(268437389), // VEXTUWRX UINT64_C(268436748), // VGBBD UINT64_C(268436684), // VGNB UINT64_C(268435983), // VINSBLX UINT64_C(268436239), // VINSBRX UINT64_C(268435471), // VINSBVLX UINT64_C(268435727), // VINSBVRX UINT64_C(268435919), // VINSD UINT64_C(268436175), // VINSDLX UINT64_C(268436431), // VINSDRX UINT64_C(268436237), // VINSERTB UINT64_C(268436429), // VINSERTD UINT64_C(268436301), // VINSERTH UINT64_C(268436365), // VINSERTW UINT64_C(268436047), // VINSHLX UINT64_C(268436303), // VINSHRX UINT64_C(268435535), // VINSHVLX UINT64_C(268435791), // VINSHVRX UINT64_C(268435663), // VINSW UINT64_C(268436111), // VINSWLX UINT64_C(268436367), // VINSWRX UINT64_C(268435599), // VINSWVLX UINT64_C(268435855), // VINSWVRX UINT64_C(268435914), // VLOGEFP UINT64_C(268435502), // VMADDFP UINT64_C(268436490), // VMAXFP UINT64_C(268435714), // VMAXSB UINT64_C(268435906), // VMAXSD UINT64_C(268435778), // VMAXSH UINT64_C(268435842), // VMAXSW UINT64_C(268435458), // VMAXUB UINT64_C(268435650), // VMAXUD UINT64_C(268435522), // VMAXUH UINT64_C(268435586), // VMAXUW UINT64_C(268435488), // VMHADDSHS UINT64_C(268435489), // VMHRADDSHS UINT64_C(268436554), // VMINFP UINT64_C(268436226), // VMINSB UINT64_C(268436418), // VMINSD UINT64_C(268436290), // VMINSH UINT64_C(268436354), // VMINSW UINT64_C(268435970), // VMINUB UINT64_C(268436162), // VMINUD UINT64_C(268436034), // VMINUH UINT64_C(268436098), // VMINUW UINT64_C(268435490), // VMLADDUHM UINT64_C(268437451), // VMODSD UINT64_C(268437259), // VMODSQ UINT64_C(268437387), // VMODSW UINT64_C(268437195), // VMODUD UINT64_C(268437003), // VMODUQ UINT64_C(268437131), // VMODUW UINT64_C(268437388), // VMRGEW UINT64_C(268435468), // VMRGHB UINT64_C(268435532), // VMRGHH UINT64_C(268435596), // VMRGHW UINT64_C(268435724), // VMRGLB UINT64_C(268435788), // VMRGLH UINT64_C(268435852), // VMRGLW UINT64_C(268437132), // VMRGOW UINT64_C(268435479), // VMSUMCUD UINT64_C(268435493), // VMSUMMBM UINT64_C(268435496), // VMSUMSHM UINT64_C(268435497), // VMSUMSHS UINT64_C(268435492), // VMSUMUBM UINT64_C(268435491), // VMSUMUDM UINT64_C(268435494), // VMSUMUHM UINT64_C(268435495), // VMSUMUHS UINT64_C(268435457), // VMUL10CUQ UINT64_C(268435521), // VMUL10ECUQ UINT64_C(268436033), // VMUL10EUQ UINT64_C(268435969), // VMUL10UQ UINT64_C(268436232), // VMULESB UINT64_C(268436424), // VMULESD UINT64_C(268436296), // VMULESH UINT64_C(268436360), // VMULESW UINT64_C(268435976), // VMULEUB UINT64_C(268436168), // VMULEUD UINT64_C(268436040), // VMULEUH UINT64_C(268436104), // VMULEUW UINT64_C(268436425), // VMULHSD UINT64_C(268436361), // VMULHSW UINT64_C(268436169), // VMULHUD UINT64_C(268436105), // VMULHUW UINT64_C(268435913), // VMULLD UINT64_C(268435720), // VMULOSB UINT64_C(268435912), // VMULOSD UINT64_C(268435784), // VMULOSH UINT64_C(268435848), // VMULOSW UINT64_C(268435464), // VMULOUB UINT64_C(268435656), // VMULOUD UINT64_C(268435528), // VMULOUH UINT64_C(268435592), // VMULOUW UINT64_C(268435593), // VMULUWM UINT64_C(268436868), // VNAND UINT64_C(268436808), // VNCIPHER UINT64_C(268436809), // VNCIPHERLAST UINT64_C(268895746), // VNEGD UINT64_C(268830210), // VNEGW UINT64_C(268435503), // VNMSUBFP UINT64_C(268436740), // VNOR UINT64_C(268436612), // VOR UINT64_C(268436804), // VORC UINT64_C(268436941), // VPDEPD UINT64_C(268435499), // VPERM UINT64_C(268435515), // VPERMR UINT64_C(268435501), // VPERMXOR UINT64_C(268436877), // VPEXTD UINT64_C(268436238), // VPKPX UINT64_C(268436942), // VPKSDSS UINT64_C(268436814), // VPKSDUS UINT64_C(268435854), // VPKSHSS UINT64_C(268435726), // VPKSHUS UINT64_C(268435918), // VPKSWSS UINT64_C(268435790), // VPKSWUS UINT64_C(268436558), // VPKUDUM UINT64_C(268436686), // VPKUDUS UINT64_C(268435470), // VPKUHUM UINT64_C(268435598), // VPKUHUS UINT64_C(268435534), // VPKUWUM UINT64_C(268435662), // VPKUWUS UINT64_C(268436488), // VPMSUMB UINT64_C(268436680), // VPMSUMD UINT64_C(268436552), // VPMSUMH UINT64_C(268436616), // VPMSUMW UINT64_C(268437251), // VPOPCNTB UINT64_C(268437443), // VPOPCNTD UINT64_C(268437315), // VPOPCNTH UINT64_C(268437379), // VPOPCNTW UINT64_C(269026818), // VPRTYBD UINT64_C(269092354), // VPRTYBQ UINT64_C(268961282), // VPRTYBW UINT64_C(268435722), // VREFP UINT64_C(268436170), // VRFIM UINT64_C(268435978), // VRFIN UINT64_C(268436106), // VRFIP UINT64_C(268436042), // VRFIZ UINT64_C(268435460), // VRLB UINT64_C(268435652), // VRLD UINT64_C(268435653), // VRLDMI UINT64_C(268435909), // VRLDNM UINT64_C(268435524), // VRLH UINT64_C(268435461), // VRLQ UINT64_C(268435525), // VRLQMI UINT64_C(268435781), // VRLQNM UINT64_C(268435588), // VRLW UINT64_C(268435589), // VRLWMI UINT64_C(268435845), // VRLWNM UINT64_C(268435786), // VRSQRTEFP UINT64_C(268436936), // VSBOX UINT64_C(268435498), // VSEL UINT64_C(268437186), // VSHASIGMAD UINT64_C(268437122), // VSHASIGMAW UINT64_C(268435908), // VSL UINT64_C(268435716), // VSLB UINT64_C(268436932), // VSLD UINT64_C(268435478), // VSLDBI UINT64_C(268435500), // VSLDOI UINT64_C(268435780), // VSLH UINT64_C(268436492), // VSLO UINT64_C(268435717), // VSLQ UINT64_C(268437316), // VSLV UINT64_C(268435844), // VSLW UINT64_C(268435980), // VSPLTB UINT64_C(268435980), // VSPLTBs UINT64_C(268436044), // VSPLTH UINT64_C(268436044), // VSPLTHs UINT64_C(268436236), // VSPLTISB UINT64_C(268436300), // VSPLTISH UINT64_C(268436364), // VSPLTISW UINT64_C(268436108), // VSPLTW UINT64_C(268436164), // VSR UINT64_C(268436228), // VSRAB UINT64_C(268436420), // VSRAD UINT64_C(268436292), // VSRAH UINT64_C(268436229), // VSRAQ UINT64_C(268436356), // VSRAW UINT64_C(268435972), // VSRB UINT64_C(268437188), // VSRD UINT64_C(268435990), // VSRDBI UINT64_C(268436036), // VSRH UINT64_C(268436556), // VSRO UINT64_C(268435973), // VSRQ UINT64_C(268437252), // VSRV UINT64_C(268436100), // VSRW UINT64_C(268435469), // VSTRIBL UINT64_C(268436493), // VSTRIBL_rec UINT64_C(268501005), // VSTRIBR UINT64_C(268502029), // VSTRIBR_rec UINT64_C(268566541), // VSTRIHL UINT64_C(268567565), // VSTRIHL_rec UINT64_C(268632077), // VSTRIHR UINT64_C(268633101), // VSTRIHR_rec UINT64_C(268436800), // VSUBCUQ UINT64_C(268436864), // VSUBCUW UINT64_C(268435519), // VSUBECUQ UINT64_C(268435518), // VSUBEUQM UINT64_C(268435530), // VSUBFP UINT64_C(268437248), // VSUBSBS UINT64_C(268437312), // VSUBSHS UINT64_C(268437376), // VSUBSWS UINT64_C(268436480), // VSUBUBM UINT64_C(268436992), // VSUBUBS UINT64_C(268436672), // VSUBUDM UINT64_C(268436544), // VSUBUHM UINT64_C(268437056), // VSUBUHS UINT64_C(268436736), // VSUBUQM UINT64_C(268436608), // VSUBUWM UINT64_C(268437120), // VSUBUWS UINT64_C(268437128), // VSUM2SWS UINT64_C(268437256), // VSUM4SBS UINT64_C(268437064), // VSUM4SHS UINT64_C(268437000), // VSUM4UBS UINT64_C(268437384), // VSUMSWS UINT64_C(268436302), // VUPKHPX UINT64_C(268435982), // VUPKHSB UINT64_C(268436046), // VUPKHSH UINT64_C(268437070), // VUPKHSW UINT64_C(268436430), // VUPKLPX UINT64_C(268436110), // VUPKLSB UINT64_C(268436174), // VUPKLSH UINT64_C(268437198), // VUPKLSW UINT64_C(268436676), // VXOR UINT64_C(268436676), // V_SET0 UINT64_C(268436676), // V_SET0B UINT64_C(268436676), // V_SET0H UINT64_C(270467980), // V_SETALLONES UINT64_C(270467980), // V_SETALLONESB UINT64_C(270467980), // V_SETALLONESH UINT64_C(2080374844), // WAIT UINT64_C(2080375046), // WRTEE UINT64_C(2080375110), // WRTEEI UINT64_C(2080375416), // XOR UINT64_C(2080375416), // XOR8 UINT64_C(2080375417), // XOR8_rec UINT64_C(1744830464), // XORI UINT64_C(1744830464), // XORI8 UINT64_C(1811939328), // XORIS UINT64_C(1811939328), // XORIS8 UINT64_C(2080375417), // XOR_rec UINT64_C(4026533220), // XSABSDP UINT64_C(4227860040), // XSABSQP UINT64_C(4026532096), // XSADDDP UINT64_C(4227858440), // XSADDQP UINT64_C(4227858441), // XSADDQPO UINT64_C(4026531840), // XSADDSP UINT64_C(4026531864), // XSCMPEQDP UINT64_C(4227858568), // XSCMPEQQP UINT64_C(4026532312), // XSCMPEXPDP UINT64_C(4227858760), // XSCMPEXPQP UINT64_C(4026531992), // XSCMPGEDP UINT64_C(4227858824), // XSCMPGEQP UINT64_C(4026531928), // XSCMPGTDP UINT64_C(4227858888), // XSCMPGTQP UINT64_C(4026532184), // XSCMPODP UINT64_C(4227858696), // XSCMPOQP UINT64_C(4026532120), // XSCMPUDP UINT64_C(4227859720), // XSCMPUQP UINT64_C(4026533248), // XSCPSGNDP UINT64_C(4227858632), // XSCPSGNQP UINT64_C(4027647340), // XSCVDPHP UINT64_C(4229301896), // XSCVDPQP UINT64_C(4026532900), // XSCVDPSP UINT64_C(4026532908), // XSCVDPSPN UINT64_C(4026533216), // XSCVDPSXDS UINT64_C(4026533216), // XSCVDPSXDSs UINT64_C(4026532192), // XSCVDPSXWS UINT64_C(4026532192), // XSCVDPSXWSs UINT64_C(4026533152), // XSCVDPUXDS UINT64_C(4026533152), // XSCVDPUXDSs UINT64_C(4026532128), // XSCVDPUXWS UINT64_C(4026532128), // XSCVDPUXWSs UINT64_C(4027581804), // XSCVHPDP UINT64_C(4229170824), // XSCVQPDP UINT64_C(4229170825), // XSCVQPDPO UINT64_C(4229498504), // XSCVQPSDZ UINT64_C(4228384392), // XSCVQPSQZ UINT64_C(4228449928), // XSCVQPSWZ UINT64_C(4228974216), // XSCVQPUDZ UINT64_C(4227860104), // XSCVQPUQZ UINT64_C(4227925640), // XSCVQPUWZ UINT64_C(4228515464), // XSCVSDQP UINT64_C(4026533156), // XSCVSPDP UINT64_C(4026533164), // XSCVSPDPN UINT64_C(4228581000), // XSCVSQQP UINT64_C(4026533344), // XSCVSXDDP UINT64_C(4026533088), // XSCVSXDSP UINT64_C(4227991176), // XSCVUDQP UINT64_C(4228056712), // XSCVUQQP UINT64_C(4026533280), // XSCVUXDDP UINT64_C(4026533024), // XSCVUXDSP UINT64_C(4026532288), // XSDIVDP UINT64_C(4227859528), // XSDIVQP UINT64_C(4227859529), // XSDIVQPO UINT64_C(4026532032), // XSDIVSP UINT64_C(4026533676), // XSIEXPDP UINT64_C(4227860168), // XSIEXPQP UINT64_C(4026532104), // XSMADDADP UINT64_C(4026531848), // XSMADDASP UINT64_C(4026532168), // XSMADDMDP UINT64_C(4026531912), // XSMADDMSP UINT64_C(4227859208), // XSMADDQP UINT64_C(4227859209), // XSMADDQPO UINT64_C(4026532864), // XSMAXCDP UINT64_C(4227859784), // XSMAXCQP UINT64_C(4026533120), // XSMAXDP UINT64_C(4026532992), // XSMAXJDP UINT64_C(4026532928), // XSMINCDP UINT64_C(4227859912), // XSMINCQP UINT64_C(4026533184), // XSMINDP UINT64_C(4026533056), // XSMINJDP UINT64_C(4026532232), // XSMSUBADP UINT64_C(4026531976), // XSMSUBASP UINT64_C(4026532296), // XSMSUBMDP UINT64_C(4026532040), // XSMSUBMSP UINT64_C(4227859272), // XSMSUBQP UINT64_C(4227859273), // XSMSUBQPO UINT64_C(4026532224), // XSMULDP UINT64_C(4227858504), // XSMULQP UINT64_C(4227858505), // XSMULQPO UINT64_C(4026531968), // XSMULSP UINT64_C(4026533284), // XSNABSDP UINT64_C(4026533284), // XSNABSDPs UINT64_C(4228384328), // XSNABSQP UINT64_C(4026533348), // XSNEGDP UINT64_C(4228908616), // XSNEGQP UINT64_C(4026533128), // XSNMADDADP UINT64_C(4026532872), // XSNMADDASP UINT64_C(4026533192), // XSNMADDMDP UINT64_C(4026532936), // XSNMADDMSP UINT64_C(4227859336), // XSNMADDQP UINT64_C(4227859337), // XSNMADDQPO UINT64_C(4026533256), // XSNMSUBADP UINT64_C(4026533000), // XSNMSUBASP UINT64_C(4026533320), // XSNMSUBMDP UINT64_C(4026533064), // XSNMSUBMSP UINT64_C(4227859400), // XSNMSUBQP UINT64_C(4227859401), // XSNMSUBQPO UINT64_C(4026532132), // XSRDPI UINT64_C(4026532268), // XSRDPIC UINT64_C(4026532324), // XSRDPIM UINT64_C(4026532260), // XSRDPIP UINT64_C(4026532196), // XSRDPIZ UINT64_C(4026532200), // XSREDP UINT64_C(4026531944), // XSRESP UINT64_C(4227858442), // XSRQPI UINT64_C(4227858443), // XSRQPIX UINT64_C(4227858506), // XSRQPXP UINT64_C(4026532964), // XSRSP UINT64_C(4026532136), // XSRSQRTEDP UINT64_C(4026531880), // XSRSQRTESP UINT64_C(4026532140), // XSSQRTDP UINT64_C(4229629512), // XSSQRTQP UINT64_C(4229629513), // XSSQRTQPO UINT64_C(4026531884), // XSSQRTSP UINT64_C(4026532160), // XSSUBDP UINT64_C(4227859464), // XSSUBQP UINT64_C(4227859465), // XSSUBQPO UINT64_C(4026531904), // XSSUBSP UINT64_C(4026532328), // XSTDIVDP UINT64_C(4026532264), // XSTSQRTDP UINT64_C(4026533288), // XSTSTDCDP UINT64_C(4227859848), // XSTSTDCQP UINT64_C(4026533032), // XSTSTDCSP UINT64_C(4026533228), // XSXEXPDP UINT64_C(4227991112), // XSXEXPQP UINT64_C(4026598764), // XSXSIGDP UINT64_C(4229039688), // XSXSIGQP UINT64_C(4026533732), // XVABSDP UINT64_C(4026533476), // XVABSSP UINT64_C(4026532608), // XVADDDP UINT64_C(4026532352), // XVADDSP UINT64_C(3959423384), // XVBF16GER2 UINT64_C(3959424912), // XVBF16GER2NN UINT64_C(3959423888), // XVBF16GER2NP UINT64_C(3959424400), // XVBF16GER2PN UINT64_C(3959423376), // XVBF16GER2PP UINT64_C(3959423384), // XVBF16GER2W UINT64_C(3959424912), // XVBF16GER2WNN UINT64_C(3959423888), // XVBF16GER2WNP UINT64_C(3959424400), // XVBF16GER2WPN UINT64_C(3959423376), // XVBF16GER2WPP UINT64_C(4026532632), // XVCMPEQDP UINT64_C(4026533656), // XVCMPEQDP_rec UINT64_C(4026532376), // XVCMPEQSP UINT64_C(4026533400), // XVCMPEQSP_rec UINT64_C(4026532760), // XVCMPGEDP UINT64_C(4026533784), // XVCMPGEDP_rec UINT64_C(4026532504), // XVCMPGESP UINT64_C(4026533528), // XVCMPGESP_rec UINT64_C(4026532696), // XVCMPGTDP UINT64_C(4026533720), // XVCMPGTDP_rec UINT64_C(4026532440), // XVCMPGTSP UINT64_C(4026533464), // XVCMPGTSP_rec UINT64_C(4026533760), // XVCPSGNDP UINT64_C(4026533504), // XVCPSGNSP UINT64_C(4027582316), // XVCVBF16SPN UINT64_C(4026533412), // XVCVDPSP UINT64_C(4026533728), // XVCVDPSXDS UINT64_C(4026532704), // XVCVDPSXWS UINT64_C(4026533664), // XVCVDPUXDS UINT64_C(4026532640), // XVCVDPUXWS UINT64_C(4028106604), // XVCVHPSP UINT64_C(4027647852), // XVCVSPBF16 UINT64_C(4026533668), // XVCVSPDP UINT64_C(4028172140), // XVCVSPHP UINT64_C(4026533472), // XVCVSPSXDS UINT64_C(4026532448), // XVCVSPSXWS UINT64_C(4026533408), // XVCVSPUXDS UINT64_C(4026532384), // XVCVSPUXWS UINT64_C(4026533856), // XVCVSXDDP UINT64_C(4026533600), // XVCVSXDSP UINT64_C(4026532832), // XVCVSXWDP UINT64_C(4026532576), // XVCVSXWSP UINT64_C(4026533792), // XVCVUXDDP UINT64_C(4026533536), // XVCVUXDSP UINT64_C(4026532768), // XVCVUXWDP UINT64_C(4026532512), // XVCVUXWSP UINT64_C(4026532800), // XVDIVDP UINT64_C(4026532544), // XVDIVSP UINT64_C(3959423128), // XVF16GER2 UINT64_C(3959424656), // XVF16GER2NN UINT64_C(3959423632), // XVF16GER2NP UINT64_C(3959424144), // XVF16GER2PN UINT64_C(3959423120), // XVF16GER2PP UINT64_C(3959423128), // XVF16GER2W UINT64_C(3959424656), // XVF16GER2WNN UINT64_C(3959423632), // XVF16GER2WNP UINT64_C(3959424144), // XVF16GER2WPN UINT64_C(3959423120), // XVF16GER2WPP UINT64_C(3959423192), // XVF32GER UINT64_C(3959424720), // XVF32GERNN UINT64_C(3959423696), // XVF32GERNP UINT64_C(3959424208), // XVF32GERPN UINT64_C(3959423184), // XVF32GERPP UINT64_C(3959423192), // XVF32GERW UINT64_C(3959424720), // XVF32GERWNN UINT64_C(3959423696), // XVF32GERWNP UINT64_C(3959424208), // XVF32GERWPN UINT64_C(3959423184), // XVF32GERWPP UINT64_C(3959423448), // XVF64GER UINT64_C(3959424976), // XVF64GERNN UINT64_C(3959423952), // XVF64GERNP UINT64_C(3959424464), // XVF64GERPN UINT64_C(3959423440), // XVF64GERPP UINT64_C(3959423448), // XVF64GERW UINT64_C(3959424976), // XVF64GERWNN UINT64_C(3959423952), // XVF64GERWNP UINT64_C(3959424464), // XVF64GERWPN UINT64_C(3959423440), // XVF64GERWPP UINT64_C(3959423576), // XVI16GER2 UINT64_C(3959423832), // XVI16GER2PP UINT64_C(3959423320), // XVI16GER2S UINT64_C(3959423312), // XVI16GER2SPP UINT64_C(3959423320), // XVI16GER2SW UINT64_C(3959423312), // XVI16GER2SWPP UINT64_C(3959423576), // XVI16GER2W UINT64_C(3959423832), // XVI16GER2WPP UINT64_C(3959423256), // XVI4GER8 UINT64_C(3959423248), // XVI4GER8PP UINT64_C(3959423256), // XVI4GER8W UINT64_C(3959423248), // XVI4GER8WPP UINT64_C(3959423000), // XVI8GER4 UINT64_C(3959422992), // XVI8GER4PP UINT64_C(3959423768), // XVI8GER4SPP UINT64_C(3959423000), // XVI8GER4W UINT64_C(3959422992), // XVI8GER4WPP UINT64_C(3959423768), // XVI8GER4WSPP UINT64_C(4026533824), // XVIEXPDP UINT64_C(4026533568), // XVIEXPSP UINT64_C(4026532616), // XVMADDADP UINT64_C(4026532360), // XVMADDASP UINT64_C(4026532680), // XVMADDMDP UINT64_C(4026532424), // XVMADDMSP UINT64_C(4026533632), // XVMAXDP UINT64_C(4026533376), // XVMAXSP UINT64_C(4026533696), // XVMINDP UINT64_C(4026533440), // XVMINSP UINT64_C(4026532744), // XVMSUBADP UINT64_C(4026532488), // XVMSUBASP UINT64_C(4026532808), // XVMSUBMDP UINT64_C(4026532552), // XVMSUBMSP UINT64_C(4026532736), // XVMULDP UINT64_C(4026532480), // XVMULSP UINT64_C(4026533796), // XVNABSDP UINT64_C(4026533540), // XVNABSSP UINT64_C(4026533860), // XVNEGDP UINT64_C(4026533604), // XVNEGSP UINT64_C(4026533640), // XVNMADDADP UINT64_C(4026533384), // XVNMADDASP UINT64_C(4026533704), // XVNMADDMDP UINT64_C(4026533448), // XVNMADDMSP UINT64_C(4026533768), // XVNMSUBADP UINT64_C(4026533512), // XVNMSUBASP UINT64_C(4026533832), // XVNMSUBMDP UINT64_C(4026533576), // XVNMSUBMSP UINT64_C(4026532644), // XVRDPI UINT64_C(4026532780), // XVRDPIC UINT64_C(4026532836), // XVRDPIM UINT64_C(4026532772), // XVRDPIP UINT64_C(4026532708), // XVRDPIZ UINT64_C(4026532712), // XVREDP UINT64_C(4026532456), // XVRESP UINT64_C(4026532388), // XVRSPI UINT64_C(4026532524), // XVRSPIC UINT64_C(4026532580), // XVRSPIM UINT64_C(4026532516), // XVRSPIP UINT64_C(4026532452), // XVRSPIZ UINT64_C(4026532648), // XVRSQRTEDP UINT64_C(4026532392), // XVRSQRTESP UINT64_C(4026532652), // XVSQRTDP UINT64_C(4026532396), // XVSQRTSP UINT64_C(4026532672), // XVSUBDP UINT64_C(4026532416), // XVSUBSP UINT64_C(4026532840), // XVTDIVDP UINT64_C(4026532584), // XVTDIVSP UINT64_C(4026664812), // XVTLSBB UINT64_C(4026532776), // XVTSQRTDP UINT64_C(4026532520), // XVTSQRTSP UINT64_C(4026533800), // XVTSTDCDP UINT64_C(4026533544), // XVTSTDCSP UINT64_C(4026533740), // XVXEXPDP UINT64_C(4027058028), // XVXEXPSP UINT64_C(4026599276), // XVXSIGDP UINT64_C(4027123564), // XVXSIGSP UINT64_C(360287972404232192), // XXBLENDVB UINT64_C(360287972404232240), // XXBLENDVD UINT64_C(360287972404232208), // XXBLENDVH UINT64_C(360287972404232224), // XXBLENDVW UINT64_C(4028041068), // XXBRD UINT64_C(4026992492), // XXBRH UINT64_C(4028565356), // XXBRQ UINT64_C(4027516780), // XXBRW UINT64_C(360287972471341072), // XXEVAL UINT64_C(4026532500), // XXEXTRACTUW UINT64_C(4026533672), // XXGENPCVBM UINT64_C(4026533738), // XXGENPCVDM UINT64_C(4026533674), // XXGENPCVHM UINT64_C(4026533736), // XXGENPCVWM UINT64_C(4026532564), // XXINSERTW UINT64_C(4026532880), // XXLAND UINT64_C(4026532944), // XXLANDC UINT64_C(4026533328), // XXLEQV UINT64_C(4026533328), // XXLEQVOnes UINT64_C(4026533264), // XXLNAND UINT64_C(4026533136), // XXLNOR UINT64_C(4026533008), // XXLOR UINT64_C(4026533200), // XXLORC UINT64_C(4026533008), // XXLORf UINT64_C(4026533072), // XXLXOR UINT64_C(4026533072), // XXLXORdpz UINT64_C(4026533072), // XXLXORspz UINT64_C(4026533072), // XXLXORz UINT64_C(2080375138), // XXMFACC UINT64_C(2080375138), // XXMFACCW UINT64_C(4026531984), // XXMRGHW UINT64_C(4026532240), // XXMRGLW UINT64_C(2080440674), // XXMTACC UINT64_C(2080440674), // XXMTACCW UINT64_C(4026532048), // XXPERM UINT64_C(4026531920), // XXPERMDI UINT64_C(4026531920), // XXPERMDIs UINT64_C(4026532304), // XXPERMR UINT64_C(360287972471341056), // XXPERMX UINT64_C(4026531888), // XXSEL UINT64_C(2080571746), // XXSETACCZ UINT64_C(2080571746), // XXSETACCZW UINT64_C(4026531856), // XXSLDWI UINT64_C(4026531856), // XXSLDWIs UINT64_C(360287972337123328), // XXSPLTI32DX UINT64_C(4026532560), // XXSPLTIB UINT64_C(360287972337385472), // XXSPLTIDP UINT64_C(360287972337516544), // XXSPLTIW UINT64_C(4026532496), // XXSPLTW UINT64_C(4026532496), // XXSPLTWs UINT64_C(1073741824), // gBC UINT64_C(1073741826), // gBCA UINT64_C(1073741826), // gBCAat UINT64_C(1275069472), // gBCCTR UINT64_C(1275069473), // gBCCTRL UINT64_C(1073741825), // gBCL UINT64_C(1073741827), // gBCLA UINT64_C(1073741827), // gBCLAat UINT64_C(1275068448), // gBCLR UINT64_C(1275068449), // gBCLRL UINT64_C(1073741825), // gBCLat UINT64_C(1073741824), // gBCat UINT64_C(0) }; const unsigned opcode = MI.getOpcode(); uint64_t Value = InstBits[opcode]; uint64_t op = 0; (void)op; // suppress warning switch (opcode) { case PPC::ADDISdtprelHA: case PPC::ADDISdtprelHA32: case PPC::ADDISgotTprelHA: case PPC::ADDIStlsgdHA: case PPC::ADDIStlsldHA: case PPC::ADDIStocHA: case PPC::ADDIStocHA8: case PPC::ADDIdtprelL: case PPC::ADDIdtprelL32: case PPC::ADDItlsgdL: case PPC::ADDItlsgdL32: case PPC::ADDItlsgdLADDR: case PPC::ADDItlsgdLADDR32: case PPC::ADDItlsldL: case PPC::ADDItlsldL32: case PPC::ADDItlsldLADDR: case PPC::ADDItlsldLADDR32: case PPC::ADDItoc: case PPC::ADDItoc8: case PPC::ADDItocL: case PPC::ADJCALLSTACKDOWN: case PPC::ADJCALLSTACKUP: case PPC::ANDI_rec_1_EQ_BIT: case PPC::ANDI_rec_1_EQ_BIT8: case PPC::ANDI_rec_1_GT_BIT: case PPC::ANDI_rec_1_GT_BIT8: case PPC::ATOMIC_CMP_SWAP_I16: case PPC::ATOMIC_CMP_SWAP_I32: case PPC::ATOMIC_CMP_SWAP_I64: case PPC::ATOMIC_CMP_SWAP_I8: case PPC::ATOMIC_LOAD_ADD_I16: case PPC::ATOMIC_LOAD_ADD_I32: case PPC::ATOMIC_LOAD_ADD_I64: case PPC::ATOMIC_LOAD_ADD_I8: case PPC::ATOMIC_LOAD_AND_I16: case PPC::ATOMIC_LOAD_AND_I32: case PPC::ATOMIC_LOAD_AND_I64: case PPC::ATOMIC_LOAD_AND_I8: case PPC::ATOMIC_LOAD_MAX_I16: case PPC::ATOMIC_LOAD_MAX_I32: case PPC::ATOMIC_LOAD_MAX_I64: case PPC::ATOMIC_LOAD_MAX_I8: case PPC::ATOMIC_LOAD_MIN_I16: case PPC::ATOMIC_LOAD_MIN_I32: case PPC::ATOMIC_LOAD_MIN_I64: case PPC::ATOMIC_LOAD_MIN_I8: case PPC::ATOMIC_LOAD_NAND_I16: case PPC::ATOMIC_LOAD_NAND_I32: case PPC::ATOMIC_LOAD_NAND_I64: case PPC::ATOMIC_LOAD_NAND_I8: case PPC::ATOMIC_LOAD_OR_I16: case PPC::ATOMIC_LOAD_OR_I32: case PPC::ATOMIC_LOAD_OR_I64: case PPC::ATOMIC_LOAD_OR_I8: case PPC::ATOMIC_LOAD_SUB_I16: case PPC::ATOMIC_LOAD_SUB_I32: case PPC::ATOMIC_LOAD_SUB_I64: case PPC::ATOMIC_LOAD_SUB_I8: case PPC::ATOMIC_LOAD_UMAX_I16: case PPC::ATOMIC_LOAD_UMAX_I32: case PPC::ATOMIC_LOAD_UMAX_I64: case PPC::ATOMIC_LOAD_UMAX_I8: case PPC::ATOMIC_LOAD_UMIN_I16: case PPC::ATOMIC_LOAD_UMIN_I32: case PPC::ATOMIC_LOAD_UMIN_I64: case PPC::ATOMIC_LOAD_UMIN_I8: case PPC::ATOMIC_LOAD_XOR_I16: case PPC::ATOMIC_LOAD_XOR_I32: case PPC::ATOMIC_LOAD_XOR_I64: case PPC::ATOMIC_LOAD_XOR_I8: case PPC::ATOMIC_SWAP_I16: case PPC::ATOMIC_SWAP_I32: case PPC::ATOMIC_SWAP_I64: case PPC::ATOMIC_SWAP_I8: case PPC::ATTN: case PPC::BCTR: case PPC::BCTR8: case PPC::BCTRL: case PPC::BCTRL8: case PPC::BCTRL8_RM: case PPC::BCTRL_RM: case PPC::BDNZLR: case PPC::BDNZLR8: case PPC::BDNZLRL: case PPC::BDNZLRLm: case PPC::BDNZLRLp: case PPC::BDNZLRm: case PPC::BDNZLRp: case PPC::BDZLR: case PPC::BDZLR8: case PPC::BDZLRL: case PPC::BDZLRLm: case PPC::BDZLRLp: case PPC::BDZLRm: case PPC::BDZLRp: case PPC::BLR: case PPC::BLR8: case PPC::BLRL: case PPC::CLRBHRB: case PPC::CP_ABORT: case PPC::CR6SET: case PPC::CR6UNSET: case PPC::DSSALL: case PPC::DYNALLOC: case PPC::DYNALLOC8: case PPC::DYNAREAOFFSET: case PPC::DYNAREAOFFSET8: case PPC::DecreaseCTR8loop: case PPC::DecreaseCTRloop: case PPC::EH_SjLj_LongJmp32: case PPC::EH_SjLj_LongJmp64: case PPC::EH_SjLj_SetJmp32: case PPC::EH_SjLj_SetJmp64: case PPC::EH_SjLj_Setup: case PPC::EnforceIEIO: case PPC::FADDrtz: case PPC::GETtlsADDR: case PPC::GETtlsADDR32: case PPC::GETtlsADDR32AIX: case PPC::GETtlsADDR64AIX: case PPC::GETtlsADDRPCREL: case PPC::GETtlsldADDR: case PPC::GETtlsldADDR32: case PPC::GETtlsldADDRPCREL: case PPC::HRFID: case PPC::ISYNC: case PPC::LDgotTprelL: case PPC::LDgotTprelL32: case PPC::LDtoc: case PPC::LDtocBA: case PPC::LDtocCPT: case PPC::LDtocJTI: case PPC::LDtocL: case PPC::LQX_PSEUDO: case PPC::LWZtoc: case PPC::LWZtocL: case PPC::MSGSYNC: case PPC::MSYNC: case PPC::MoveGOTtoLR: case PPC::MovePCtoLR: case PPC::MovePCtoLR8: case PPC::NAP: case PPC::NOP: case PPC::NOP_GT_PWR6: case PPC::NOP_GT_PWR7: case PPC::PADDIdtprel: case PPC::PPC32GOT: case PPC::PPC32PICGOT: case PPC::PREPARE_PROBED_ALLOCA_32: case PPC::PREPARE_PROBED_ALLOCA_64: case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_32: case PPC::PREPARE_PROBED_ALLOCA_NEGSIZE_SAME_REG_64: case PPC::PROBED_ALLOCA_32: case PPC::PROBED_ALLOCA_64: case PPC::PROBED_STACKALLOC_32: case PPC::PROBED_STACKALLOC_64: case PPC::PseudoEIEIO: case PPC::RESTORE_ACC: case PPC::RESTORE_CR: case PPC::RESTORE_CRBIT: case PPC::RESTORE_QUADWORD: case PPC::RESTORE_UACC: case PPC::RESTORE_WACC: case PPC::RFCI: case PPC::RFDI: case PPC::RFI: case PPC::RFID: case PPC::RFMCI: case PPC::ReadTB: case PPC::SELECT_CC_F16: case PPC::SELECT_CC_F4: case PPC::SELECT_CC_F8: case PPC::SELECT_CC_I4: case PPC::SELECT_CC_I8: case PPC::SELECT_CC_SPE: case PPC::SELECT_CC_SPE4: case PPC::SELECT_CC_VRRC: case PPC::SELECT_CC_VSFRC: case PPC::SELECT_CC_VSRC: case PPC::SELECT_CC_VSSRC: case PPC::SELECT_F16: case PPC::SELECT_F4: case PPC::SELECT_F8: case PPC::SELECT_I4: case PPC::SELECT_I8: case PPC::SELECT_SPE: case PPC::SELECT_SPE4: case PPC::SELECT_VRRC: case PPC::SELECT_VSFRC: case PPC::SELECT_VSRC: case PPC::SELECT_VSSRC: case PPC::SETFLM: case PPC::SETRND: case PPC::SETRNDi: case PPC::SLBIA: case PPC::SLBSYNC: case PPC::SPILL_ACC: case PPC::SPILL_CR: case PPC::SPILL_CRBIT: case PPC::SPILL_QUADWORD: case PPC::SPILL_UACC: case PPC::SPILL_WACC: case PPC::SPLIT_QUADWORD: case PPC::STOP: case PPC::STQX_PSEUDO: case PPC::TAILBCTR: case PPC::TAILBCTR8: case PPC::TBEGIN_RET: case PPC::TCHECK_RET: case PPC::TCRETURNai: case PPC::TCRETURNai8: case PPC::TCRETURNdi: case PPC::TCRETURNdi8: case PPC::TCRETURNri: case PPC::TCRETURNri8: case PPC::TLBIA: case PPC::TLBRE: case PPC::TLBSYNC: case PPC::TLBWE: case PPC::TLSGDAIX: case PPC::TLSGDAIX8: case PPC::TRAP: case PPC::TRECHKPT: case PPC::UNENCODED_NOP: case PPC::UpdateGBR: { break; } case PPC::TEND: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(1); op <<= 25; Value |= op; break; } case PPC::TABORT: case PPC::TRECLAIM: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::DCBA: case PPC::DCBFEP: case PPC::DCBI: case PPC::DCBST: case PPC::DCBSTEP: case PPC::DCBZ: case PPC::DCBZEP: case PPC::DCBZL: case PPC::DCBZLEP: case PPC::DCCCI: case PPC::ICBI: case PPC::ICBIEP: case PPC::ICCCI: case PPC::TLBIVAX: case PPC::TLBSX: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::EXTSWSLI: case PPC::EXTSWSLI_32_64: case PPC::EXTSWSLI_32_64_rec: case PPC::EXTSWSLI_rec: case PPC::SRADI: case PPC::SRADI_32: case PPC::SRADI_rec: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RS op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: SH op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::BRD: case PPC::BRH: case PPC::BRH8: case PPC::BRW: case PPC::BRW8: case PPC::CNTLZD: case PPC::CNTLZD_rec: case PPC::CNTLZW: case PPC::CNTLZW8: case PPC::CNTLZW8_rec: case PPC::CNTLZW_rec: case PPC::CNTTZD: case PPC::CNTTZD_rec: case PPC::CNTTZW: case PPC::CNTTZW8: case PPC::CNTTZW8_rec: case PPC::CNTTZW_rec: case PPC::EXTSB: case PPC::EXTSB8: case PPC::EXTSB8_32_64: case PPC::EXTSB8_rec: case PPC::EXTSB_rec: case PPC::EXTSH: case PPC::EXTSH8: case PPC::EXTSH8_32_64: case PPC::EXTSH8_rec: case PPC::EXTSH_rec: case PPC::EXTSW: case PPC::EXTSW_32: case PPC::EXTSW_32_64: case PPC::EXTSW_32_64_rec: case PPC::EXTSW_rec: case PPC::POPCNTB: case PPC::POPCNTB8: case PPC::POPCNTD: case PPC::POPCNTW: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RST op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::AND: case PPC::AND8: case PPC::AND8_rec: case PPC::ANDC: case PPC::ANDC8: case PPC::ANDC8_rec: case PPC::ANDC_rec: case PPC::AND_rec: case PPC::BPERMD: case PPC::CFUGED: case PPC::CMPB: case PPC::CMPB8: case PPC::CNTLZDM: case PPC::CNTTZDM: case PPC::EQV: case PPC::EQV8: case PPC::EQV8_rec: case PPC::EQV_rec: case PPC::NAND: case PPC::NAND8: case PPC::NAND8_rec: case PPC::NAND_rec: case PPC::NOR: case PPC::NOR8: case PPC::NOR8_rec: case PPC::NOR_rec: case PPC::OR: case PPC::OR8: case PPC::OR8_rec: case PPC::ORC: case PPC::ORC8: case PPC::ORC8_rec: case PPC::ORC_rec: case PPC::OR_rec: case PPC::PDEPD: case PPC::PEXTD: case PPC::SLD: case PPC::SLD_rec: case PPC::SLW: case PPC::SLW8: case PPC::SLW8_rec: case PPC::SLW_rec: case PPC::SRAD: case PPC::SRAD_rec: case PPC::SRAW: case PPC::SRAWI: case PPC::SRAWI_rec: case PPC::SRAW_rec: case PPC::SRD: case PPC::SRD_rec: case PPC::SRW: case PPC::SRW8: case PPC::SRW8_rec: case PPC::SRW_rec: case PPC::XOR: case PPC::XOR8: case PPC::XOR8_rec: case PPC::XOR_rec: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RST op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::LBZ: case PPC::LBZ8: case PPC::LFD: case PPC::LFS: case PPC::LHA: case PPC::LHA8: case PPC::LHZ: case PPC::LHZ8: case PPC::LMW: case PPC::LWZ: case PPC::LWZ8: case PPC::SPELWZ: case PPC::SPESTW: case PPC::STB: case PPC::STB8: case PPC::STFD: case PPC::STFS: case PPC::STH: case PPC::STH8: case PPC::STMW: case PPC::STW: case PPC::STW8: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: Addr op = getMemRIEncoding(MI, 1, Fixups, STI); op &= UINT64_C(2097151); Value |= op; break; } case PPC::LBZU: case PPC::LBZU8: case PPC::LFDU: case PPC::LFSU: case PPC::LHAU: case PPC::LHAU8: case PPC::LHZU: case PPC::LHZU8: case PPC::LWZU: case PPC::LWZU8: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: Addr op = getMemRIEncoding(MI, 2, Fixups, STI); op &= UINT64_C(2097151); Value |= op; break; } case PPC::LI: case PPC::LI8: case PPC::LIS: case PPC::LIS8: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: B op = getImm16Encoding(MI, 1, Fixups, STI); op &= UINT64_C(65535); Value |= op; break; } case PPC::ADDI: case PPC::ADDI8: case PPC::ADDIC: case PPC::ADDIC8: case PPC::ADDIC_rec: case PPC::ADDIS: case PPC::ADDIS8: case PPC::LA: case PPC::LA8: case PPC::MULLI: case PPC::MULLI8: case PPC::SUBFIC: case PPC::SUBFIC8: case PPC::TDI: case PPC::TWI: { // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: C op = getImm16Encoding(MI, 2, Fixups, STI); op &= UINT64_C(65535); Value |= op; break; } case PPC::STBU: case PPC::STBU8: case PPC::STFDU: case PPC::STFSU: case PPC::STHU: case PPC::STHU8: case PPC::STWU: case PPC::STWU8: { // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: Addr op = getMemRIEncoding(MI, 2, Fixups, STI); op &= UINT64_C(2097151); Value |= op; break; } case PPC::DMSETDMRZ: case PPC::XXMTACC: case PPC::XXMTACCW: case PPC::XXSETACCZ: case PPC::XXSETACCZW: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; break; } case PPC::DMMR: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: AB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 13; Value |= op; break; } case PPC::DMXOR: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: AB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(7); op <<= 13; Value |= op; break; } case PPC::XVBF16GER2: case PPC::XVBF16GER2W: case PPC::XVF16GER2: case PPC::XVF16GER2W: case PPC::XVF32GER: case PPC::XVF32GERW: case PPC::XVI16GER2: case PPC::XVI16GER2S: case PPC::XVI16GER2SW: case PPC::XVI16GER2W: case PPC::XVI4GER8: case PPC::XVI4GER8W: case PPC::XVI8GER4: case PPC::XVI8GER4W: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::PMXVF32GER: case PPC::PMXVF32GERW: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; break; } case PPC::PMXVI8GER4: case PPC::PMXVI8GER4W: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; // op: PMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(15); op <<= 44; Value |= op; break; } case PPC::PMXVI4GER8: case PPC::PMXVI4GER8W: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; // op: PMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(255); op <<= 40; Value |= op; break; } case PPC::PMXVBF16GER2: case PPC::PMXVBF16GER2W: case PPC::PMXVF16GER2: case PPC::PMXVF16GER2W: case PPC::PMXVI16GER2: case PPC::PMXVI16GER2S: case PPC::PMXVI16GER2SW: case PPC::PMXVI16GER2W: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; // op: PMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(3); op <<= 46; Value |= op; break; } case PPC::XVBF16GER2NN: case PPC::XVBF16GER2NP: case PPC::XVBF16GER2PN: case PPC::XVBF16GER2PP: case PPC::XVBF16GER2WNN: case PPC::XVBF16GER2WNP: case PPC::XVBF16GER2WPN: case PPC::XVBF16GER2WPP: case PPC::XVF16GER2NN: case PPC::XVF16GER2NP: case PPC::XVF16GER2PN: case PPC::XVF16GER2PP: case PPC::XVF16GER2WNN: case PPC::XVF16GER2WNP: case PPC::XVF16GER2WPN: case PPC::XVF16GER2WPP: case PPC::XVF32GERNN: case PPC::XVF32GERNP: case PPC::XVF32GERPN: case PPC::XVF32GERPP: case PPC::XVF32GERWNN: case PPC::XVF32GERWNP: case PPC::XVF32GERWPN: case PPC::XVF32GERWPP: case PPC::XVI16GER2PP: case PPC::XVI16GER2SPP: case PPC::XVI16GER2SWPP: case PPC::XVI16GER2WPP: case PPC::XVI4GER8PP: case PPC::XVI4GER8WPP: case PPC::XVI8GER4PP: case PPC::XVI8GER4SPP: case PPC::XVI8GER4WPP: case PPC::XVI8GER4WSPP: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::PMXVF32GERNN: case PPC::PMXVF32GERNP: case PPC::PMXVF32GERPN: case PPC::PMXVF32GERPP: case PPC::PMXVF32GERWNN: case PPC::PMXVF32GERWNP: case PPC::PMXVF32GERWPN: case PPC::PMXVF32GERWPP: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; break; } case PPC::PMXVI8GER4PP: case PPC::PMXVI8GER4SPP: case PPC::PMXVI8GER4WPP: case PPC::PMXVI8GER4WSPP: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; // op: PMSK op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI); op &= UINT64_C(15); op <<= 44; Value |= op; break; } case PPC::PMXVI4GER8PP: case PPC::PMXVI4GER8WPP: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; // op: PMSK op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI); op &= UINT64_C(255); op <<= 40; Value |= op; break; } case PPC::PMXVBF16GER2NN: case PPC::PMXVBF16GER2NP: case PPC::PMXVBF16GER2PN: case PPC::PMXVBF16GER2PP: case PPC::PMXVBF16GER2WNN: case PPC::PMXVBF16GER2WNP: case PPC::PMXVBF16GER2WPN: case PPC::PMXVBF16GER2WPP: case PPC::PMXVF16GER2NN: case PPC::PMXVF16GER2NP: case PPC::PMXVF16GER2PN: case PPC::PMXVF16GER2PP: case PPC::PMXVF16GER2WNN: case PPC::PMXVF16GER2WNP: case PPC::PMXVF16GER2WPN: case PPC::PMXVF16GER2WPP: case PPC::PMXVI16GER2PP: case PPC::PMXVI16GER2SPP: case PPC::PMXVI16GER2SWPP: case PPC::PMXVI16GER2WPP: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(15); op <<= 32; Value |= op; // op: PMSK op = getMachineOpValue(MI, MI.getOperand(6), Fixups, STI); op &= UINT64_C(3); op <<= 46; Value |= op; break; } case PPC::XVF64GER: case PPC::XVF64GERW: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getVSRpEvenEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::PMXVF64GER: case PPC::PMXVF64GERW: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getVSRpEvenEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(3); op <<= 34; Value |= op; break; } case PPC::XVF64GERNN: case PPC::XVF64GERNP: case PPC::XVF64GERPN: case PPC::XVF64GERPP: case PPC::XVF64GERWNN: case PPC::XVF64GERWNP: case PPC::XVF64GERWPN: case PPC::XVF64GERWPP: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getVSRpEvenEncoding(MI, 2, Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::PMXVF64GERNN: case PPC::PMXVF64GERNP: case PPC::PMXVF64GERPN: case PPC::PMXVF64GERPP: case PPC::PMXVF64GERWNN: case PPC::PMXVF64GERWNP: case PPC::PMXVF64GERWPN: case PPC::PMXVF64GERWPP: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getVSRpEvenEncoding(MI, 2, Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XMSK op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(15); op <<= 36; Value |= op; // op: YMSK op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(3); op <<= 34; Value |= op; break; } case PPC::DMXXINSTFDMR512: case PPC::DMXXINSTFDMR512_HI: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XAp op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(15)) << 17; Value |= (op & UINT64_C(16)) >> 2; // op: XBp op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(15)) << 12; Value |= (op & UINT64_C(16)) >> 3; break; } case PPC::DMXXINSTFDMR256: { // op: AT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XBp op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(15)) << 12; Value |= (op & UINT64_C(16)) >> 3; // op: P op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(1)) << 16; Value |= (op & UINT64_C(2)) << 10; break; } case PPC::XXMFACC: case PPC::XXMFACCW: { // op: AT op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; break; } case PPC::DMXXEXTFDMR256: { // op: AT op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XBp op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(15)) << 12; Value |= (op & UINT64_C(16)) >> 3; // op: P op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(1)) << 16; Value |= (op & UINT64_C(2)) << 10; break; } case PPC::DMXXEXTFDMR512: case PPC::DMXXEXTFDMR512_HI: { // op: AT op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XAp op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(15)) << 17; Value |= (op & UINT64_C(16)) >> 2; // op: XBp op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(15)) << 12; Value |= (op & UINT64_C(16)) >> 3; break; } case PPC::SLBIE: case PPC::TLBIEL: case PPC::TLBLD: case PPC::TLBLI: { // op: B op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::ANDI8_rec: case PPC::ANDIS8_rec: case PPC::ANDIS_rec: case PPC::ANDI_rec: case PPC::ORI: case PPC::ORI8: case PPC::ORIS: case PPC::ORIS8: case PPC::XORI: case PPC::XORI8: case PPC::XORIS: case PPC::XORIS8: { // op: B op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: C op = getImm16Encoding(MI, 2, Fixups, STI); op &= UINT64_C(65535); Value |= op; break; } case PPC::BDNZA: case PPC::BDNZAm: case PPC::BDNZAp: case PPC::BDNZLA: case PPC::BDNZLAm: case PPC::BDNZLAp: case PPC::BDZA: case PPC::BDZAm: case PPC::BDZAp: case PPC::BDZLA: case PPC::BDZLAm: case PPC::BDZLAp: { // op: BD op = getAbsCondBrEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::BCLalways: case PPC::BDNZ: case PPC::BDNZ8: case PPC::BDNZL: case PPC::BDNZLm: case PPC::BDNZLp: case PPC::BDNZm: case PPC::BDNZp: case PPC::BDZ: case PPC::BDZ8: case PPC::BDZL: case PPC::BDZLm: case PPC::BDZLp: case PPC::BDZm: case PPC::BDZp: { // op: BD op = getCondBrEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::MCRXRX: case PPC::TCHECK: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; break; } case PPC::MCRF: case PPC::MCRFS: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: BFA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 18; Value |= op; break; } case PPC::XSTSTDCQP: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: DCMX op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(127); op <<= 16; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::XSTSTDCDP: case PPC::XSTSTDCSP: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: DCMX op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(127); op <<= 16; Value |= op; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::FCMPOD: case PPC::FCMPOS: case PPC::FCMPUD: case PPC::FCMPUS: case PPC::FTDIV: case PPC::XSCMPEXPQP: case PPC::XSCMPOQP: case PPC::XSCMPUQP: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: FRA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: FRB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::FTSQRT: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: FRB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::CMPRB: case PPC::CMPRB8: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: L op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(1); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::CMPDI: case PPC::CMPLDI: case PPC::CMPLWI: case PPC::CMPWI: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: I op = getImm16Encoding(MI, 2, Fixups, STI); op &= UINT64_C(65535); Value |= op; break; } case PPC::CMPD: case PPC::CMPEQB: case PPC::CMPLD: case PPC::CMPLW: case PPC::CMPW: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MTFSFIb: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: U op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(15); op <<= 12; Value |= op; break; } case PPC::VCMPSQ: case PPC::VCMPUQ: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MTFSFI: case PPC::MTFSFI_rec: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: W op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 16; Value |= op; // op: U op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(15); op <<= 12; Value |= op; break; } case PPC::XVTLSBB: { // op: BF op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::BCCTR: case PPC::BCCTR8: case PPC::BCCTR8n: case PPC::BCCTRL: case PPC::BCCTRL8: case PPC::BCCTRL8n: case PPC::BCCTRLn: case PPC::BCCTRn: case PPC::BCLR: case PPC::BCLRL: case PPC::BCLRLn: case PPC::BCLRn: { // op: BI op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::BC: case PPC::BCL: case PPC::BCLn: case PPC::BCn: { // op: BI op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: BD op = getCondBrEncoding(MI, 1, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::BCCCTR: case PPC::BCCCTR8: case PPC::BCCCTRL: case PPC::BCCCTRL8: case PPC::BCCLR: case PPC::BCCLRL: { // op: BIBO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(96)) << 11; // op: CR op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 18; Value |= op; break; } case PPC::BCCA: case PPC::BCCLA: { // op: BIBO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(96)) << 11; // op: CR op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 18; Value |= op; // op: BD op = getAbsCondBrEncoding(MI, 2, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::BCC: case PPC::BCCL: case PPC::CTRL_DEP: { // op: BIBO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(96)) << 11; // op: CR op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 18; Value |= op; // op: BD op = getCondBrEncoding(MI, 2, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::gBCAat: case PPC::gBCLAat: { // op: BO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(28); op <<= 21; Value |= op; // op: at op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(3); op <<= 21; Value |= op; // op: BI op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: BD op = getAbsCondBrEncoding(MI, 3, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::gBCLat: case PPC::gBCat: { // op: BO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(28); op <<= 21; Value |= op; // op: at op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(3); op <<= 21; Value |= op; // op: BI op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: BD op = getCondBrEncoding(MI, 3, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::gBCA: case PPC::gBCLA: { // op: BO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: BI op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: BD op = getAbsCondBrEncoding(MI, 2, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::gBC: case PPC::gBCL: { // op: BO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: BI op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: BD op = getCondBrEncoding(MI, 2, Fixups, STI); op &= UINT64_C(16383); op <<= 2; Value |= op; break; } case PPC::gBCCTR: case PPC::gBCCTRL: case PPC::gBCLR: case PPC::gBCLRL: { // op: BO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: BI op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: BH op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(3); op <<= 11; Value |= op; break; } case PPC::XSCMPEXPDP: case PPC::XSCMPODP: case PPC::XSCMPUDP: case PPC::XSTDIVDP: case PPC::XVTDIVDP: case PPC::XVTDIVSP: { // op: CR op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::XSTSQRTDP: case PPC::XVTSQRTDP: case PPC::XVTSQRTSP: { // op: CR op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: XB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::CRSET: case PPC::CRUNSET: { // op: CRD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(31)) << 11; break; } case PPC::CRNOT: { // op: CRD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: CRA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(31)) << 11; break; } case PPC::CRAND: case PPC::CRANDC: case PPC::CREQV: case PPC::CRNAND: case PPC::CRNOR: case PPC::CROR: case PPC::CRORC: case PPC::CRXOR: { // op: CRD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: CRA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: CRB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::ICBLC: case PPC::ICBLQ: case PPC::ICBT: case PPC::ICBTLS: { // op: CT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(15); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::BCTRL8_LDinto_toc: case PPC::BCTRL8_LDinto_toc_RM: { // op: DS_RA op = getMemRIXEncoding(MI, 0, Fixups, STI); op &= UINT64_C(524287); op <<= 2; Value |= op; break; } case PPC::BCTRL_LWZinto_toc: case PPC::BCTRL_LWZinto_toc_RM: { // op: D_RA op = getMemRIEncoding(MI, 0, Fixups, STI); op &= UINT64_C(2097151); Value |= op; break; } case PPC::HASHCHK: case PPC::HASHCHK8: case PPC::HASHCHKP: case PPC::HASHCHKP8: case PPC::HASHST: case PPC::HASHST8: case PPC::HASHSTP: case PPC::HASHSTP8: { // op: D_RA_XD op = getMemRIHashEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(1984)) << 10; Value |= (op & UINT64_C(32)) >> 5; // op: RB op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::WRTEEI: { // op: E op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(1); op <<= 15; Value |= op; break; } case PPC::MTFSFb: { // op: FM op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(255); op <<= 17; Value |= op; // op: rT op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MTFSB0: case PPC::MTFSB1: { // op: FM op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::PLBZ: case PPC::PLBZ8: case PPC::PLFD: case PPC::PLFS: case PPC::PLHA: case PPC::PLHA8: case PPC::PLHZ: case PPC::PLHZ8: case PPC::PLWZ: case PPC::PLWZ8: case PPC::PSTB: case PPC::PSTB8: case PPC::PSTFD: case PPC::PSTFS: case PPC::PSTH: case PPC::PSTH8: case PPC::PSTW: case PPC::PSTW8: { // op: FRS op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D_RA op = getMemRI34Encoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::PLBZ8pc: case PPC::PLBZpc: case PPC::PLFDpc: case PPC::PLFSpc: case PPC::PLHA8pc: case PPC::PLHApc: case PPC::PLHZ8pc: case PPC::PLHZpc: case PPC::PLWZ8pc: case PPC::PLWZpc: case PPC::PSTB8pc: case PPC::PSTBpc: case PPC::PSTFDpc: case PPC::PSTFSpc: case PPC::PSTH8pc: case PPC::PSTHpc: case PPC::PSTW8pc: case PPC::PSTWpc: { // op: FRS op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D_RA op = getMemRI34PCRelEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::FADD: case PPC::FADDS: case PPC::FADDS_rec: case PPC::FADD_rec: case PPC::FDIV: case PPC::FDIVS: case PPC::FDIVS_rec: case PPC::FDIV_rec: case PPC::FSUB: case PPC::FSUBS: case PPC::FSUBS_rec: case PPC::FSUB_rec: case PPC::XSIEXPQP: { // op: FRT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: FRA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: FRB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::FMUL: case PPC::FMULS: case PPC::FMULS_rec: case PPC::FMUL_rec: { // op: FRT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: FRA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: FRC op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; break; } case PPC::FMADD: case PPC::FMADDS: case PPC::FMADDS_rec: case PPC::FMADD_rec: case PPC::FMSUB: case PPC::FMSUBS: case PPC::FMSUBS_rec: case PPC::FMSUB_rec: case PPC::FNMADD: case PPC::FNMADDS: case PPC::FNMADDS_rec: case PPC::FNMADD_rec: case PPC::FNMSUB: case PPC::FNMSUBS: case PPC::FNMSUBS_rec: case PPC::FNMSUB_rec: case PPC::FSELD: case PPC::FSELD_rec: case PPC::FSELS: case PPC::FSELS_rec: { // op: FRT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: FRA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: FRC op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; // op: FRB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MTCRF: case PPC::MTCRF8: { // op: FXM op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(255); op <<= 12; Value |= op; // op: rS op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::TSR: { // op: L op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(1); op <<= 21; Value |= op; break; } case PPC::SYNC: case PPC::WAIT: { // op: L op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(3); op <<= 21; Value |= op; break; } case PPC::CP_PASTE8_rec: case PPC::CP_PASTE_rec: { // op: L op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MTFSF: case PPC::MTFSF_rec: { // op: L op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 25; Value |= op; // op: FLM op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(255); op <<= 17; Value |= op; // op: W op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(1); op <<= 16; Value |= op; // op: FRB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::SC: { // op: LEV op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(127); op <<= 5; Value |= op; break; } case PPC::BA: case PPC::BLA: case PPC::BLA8: case PPC::BLA8_RM: case PPC::BLA_RM: case PPC::TAILBA: case PPC::TAILBA8: { // op: LI op = getAbsDirectBrEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16777215); op <<= 2; Value |= op; break; } case PPC::BLA8_NOP: case PPC::BLA8_NOP_RM: { // op: LI op = getAbsDirectBrEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16777215); op <<= 34; Value |= op; break; } case PPC::B: case PPC::BL: case PPC::BL8: case PPC::BL8_NOTOC: case PPC::BL8_NOTOC_RM: case PPC::BL8_RM: case PPC::BL_RM: case PPC::TAILB: case PPC::TAILB8: { // op: LI op = getDirectBrEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16777215); op <<= 2; Value |= op; break; } case PPC::BL8_NOP: case PPC::BL8_NOP_RM: case PPC::BL_NOP: case PPC::BL_NOP_RM: { // op: LI op = getDirectBrEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16777215); op <<= 34; Value |= op; break; } case PPC::BL8_NOTOC_TLS: case PPC::BL8_TLS: case PPC::BL8_TLS_: case PPC::BL_TLS: { // op: LI op = getTLSCallEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16777215); op <<= 2; Value |= op; break; } case PPC::BL8_NOP_TLS: { // op: LI op = getTLSCallEncoding(MI, 0, Fixups, STI); op &= UINT64_C(16777215); op <<= 34; Value |= op; break; } case PPC::MBAR: { // op: MO op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::TBEGIN: { // op: R op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(1); op <<= 21; Value |= op; break; } case PPC::CP_COPY: case PPC::CP_COPY8: { // op: RA op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::RLWINM: case PPC::RLWINM8: case PPC::RLWINM8_rec: case PPC::RLWINM_rec: case PPC::RLWNM: case PPC::RLWNM8: case PPC::RLWNM8_rec: case PPC::RLWNM_rec: { // op: RA op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RS op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: MB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; // op: ME op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(31); op <<= 1; Value |= op; break; } case PPC::RLDCL: case PPC::RLDCL_rec: case PPC::RLDCR: case PPC::RLDCR_rec: { // op: RA op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RS op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: MBE op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 6; Value |= (op & UINT64_C(32)); break; } case PPC::RLDIC: case PPC::RLDICL: case PPC::RLDICL_32: case PPC::RLDICL_32_64: case PPC::RLDICL_32_rec: case PPC::RLDICL_rec: case PPC::RLDICR: case PPC::RLDICR_32: case PPC::RLDICR_rec: case PPC::RLDIC_rec: { // op: RA op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RS op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: SH op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: MBE op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 6; Value |= (op & UINT64_C(32)); break; } case PPC::RLWIMI: case PPC::RLWIMI8: case PPC::RLWIMI8_rec: case PPC::RLWIMI_rec: { // op: RA op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RS op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: MB op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; // op: ME op = getMachineOpValue(MI, MI.getOperand(5), Fixups, STI); op &= UINT64_C(31); op <<= 1; Value |= op; break; } case PPC::RLDIMI: case PPC::RLDIMI_rec: { // op: RA op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RS op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: SH op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: MBE op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); Value |= (op & UINT64_C(31)) << 6; Value |= (op & UINT64_C(32)); break; } case PPC::MTVSRBM: case PPC::MTVSRDM: case PPC::MTVSRHM: case PPC::MTVSRQM: case PPC::MTVSRWM: case PPC::VCLZLSBB: case PPC::VCTZB: case PPC::VCTZD: case PPC::VCTZH: case PPC::VCTZLSBB: case PPC::VCTZW: case PPC::VEXPANDBM: case PPC::VEXPANDDM: case PPC::VEXPANDHM: case PPC::VEXPANDQM: case PPC::VEXPANDWM: case PPC::VEXTRACTBM: case PPC::VEXTRACTDM: case PPC::VEXTRACTHM: case PPC::VEXTRACTQM: case PPC::VEXTRACTWM: case PPC::VEXTSB2D: case PPC::VEXTSB2Ds: case PPC::VEXTSB2W: case PPC::VEXTSB2Ws: case PPC::VEXTSD2Q: case PPC::VEXTSH2D: case PPC::VEXTSH2Ds: case PPC::VEXTSH2W: case PPC::VEXTSH2Ws: case PPC::VEXTSW2D: case PPC::VEXTSW2Ds: case PPC::VNEGD: case PPC::VNEGW: case PPC::VPRTYBD: case PPC::VPRTYBQ: case PPC::VPRTYBW: { // op: RD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::VCNTMBB: case PPC::VCNTMBD: case PPC::VCNTMBH: case PPC::VCNTMBW: { // op: RD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: MP op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 16; Value |= op; break; } case PPC::VGNB: { // op: RD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: N op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(7); op <<= 16; Value |= op; break; } case PPC::WRTEE: { // op: RS op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::MTMSR: case PPC::MTMSRD: { // op: RS op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: L op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(1); op <<= 16; Value |= op; break; } case PPC::MFSRIN: case PPC::MTSRIN: { // op: RS op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MFSR: case PPC::MTSR: { // op: RS op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: SR op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(15); op <<= 16; Value |= op; break; } case PPC::MFFS: case PPC::MFFSCE: case PPC::MFFSL: case PPC::MFFS_rec: case PPC::MFMSR: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::SETBC: case PPC::SETBC8: case PPC::SETBCR: case PPC::SETBCR8: case PPC::SETNBC: case PPC::SETNBC8: case PPC::SETNBCR: case PPC::SETNBCR8: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::FCPSGND: case PPC::FCPSGND_rec: case PPC::FCPSGNS: case PPC::FCPSGNS_rec: case PPC::LBARX: case PPC::LBARXL: case PPC::LBEPX: case PPC::LBZCIX: case PPC::LBZX: case PPC::LBZX8: case PPC::LDARX: case PPC::LDARXL: case PPC::LDAT: case PPC::LDBRX: case PPC::LDCIX: case PPC::LDX: case PPC::LFDEPX: case PPC::LFDX: case PPC::LFIWAX: case PPC::LFIWZX: case PPC::LFSX: case PPC::LHARX: case PPC::LHARXL: case PPC::LHAX: case PPC::LHAX8: case PPC::LHBRX: case PPC::LHBRX8: case PPC::LHEPX: case PPC::LHZCIX: case PPC::LHZX: case PPC::LHZX8: case PPC::LQARX: case PPC::LQARXL: case PPC::LSWI: case PPC::LVEBX: case PPC::LVEHX: case PPC::LVEWX: case PPC::LVSL: case PPC::LVSR: case PPC::LVX: case PPC::LVXL: case PPC::LWARX: case PPC::LWARXL: case PPC::LWAT: case PPC::LWAX: case PPC::LWAX_32: case PPC::LWBRX: case PPC::LWBRX8: case PPC::LWEPX: case PPC::LWZCIX: case PPC::LWZX: case PPC::LWZX8: case PPC::MODSD: case PPC::MODSW: case PPC::MODUD: case PPC::MODUW: case PPC::SPELWZX: case PPC::SPESTWX: case PPC::STBCIX: case PPC::STBCX: case PPC::STBEPX: case PPC::STBX: case PPC::STBX8: case PPC::STDAT: case PPC::STDBRX: case PPC::STDCIX: case PPC::STDCX: case PPC::STDX: case PPC::STFDEPX: case PPC::STFDX: case PPC::STFIWX: case PPC::STFSX: case PPC::STHBRX: case PPC::STHCIX: case PPC::STHCX: case PPC::STHEPX: case PPC::STHX: case PPC::STHX8: case PPC::STQCX: case PPC::STSWI: case PPC::STVEBX: case PPC::STVEHX: case PPC::STVEWX: case PPC::STVX: case PPC::STVXL: case PPC::STWAT: case PPC::STWBRX: case PPC::STWCIX: case PPC::STWCX: case PPC::STWEPX: case PPC::STWX: case PPC::STWX8: case PPC::TABORTDC: case PPC::TABORTDCI: case PPC::TABORTWC: case PPC::TABORTWCI: case PPC::TD: case PPC::TLBSX2: case PPC::TLBSX2D: case PPC::TW: case PPC::XSADDQP: case PPC::XSADDQPO: case PPC::XSCMPEQQP: case PPC::XSCMPGEQP: case PPC::XSCMPGTQP: case PPC::XSCPSGNQP: case PPC::XSDIVQP: case PPC::XSDIVQPO: case PPC::XSMAXCQP: case PPC::XSMINCQP: case PPC::XSMULQP: case PPC::XSMULQPO: case PPC::XSSUBQP: case PPC::XSSUBQPO: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::LBZXTLS: case PPC::LBZXTLS_: case PPC::LBZXTLS_32: case PPC::LDXTLS: case PPC::LDXTLS_: case PPC::LHZXTLS: case PPC::LHZXTLS_: case PPC::LHZXTLS_32: case PPC::LWZXTLS: case PPC::LWZXTLS_: case PPC::LWZXTLS_32: case PPC::STBXTLS: case PPC::STBXTLS_: case PPC::STBXTLS_32: case PPC::STDXTLS: case PPC::STDXTLS_: case PPC::STHXTLS: case PPC::STHXTLS_: case PPC::STHXTLS_32: case PPC::STWXTLS: case PPC::STWXTLS_: case PPC::STWXTLS_32: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getTLSRegEncoding(MI, 2, Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::TLBRE2: case PPC::TLBWE2: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: WS op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 11; Value |= op; break; } case PPC::LBZUX: case PPC::LBZUX8: case PPC::LDUX: case PPC::LFDUX: case PPC::LFSUX: case PPC::LHAUX: case PPC::LHAUX8: case PPC::LHZUX: case PPC::LHZUX8: case PPC::LWAUX: case PPC::LWZUX: case PPC::LWZUX8: case PPC::XSMADDQP: case PPC::XSMADDQPO: case PPC::XSMSUBQP: case PPC::XSMSUBQPO: case PPC::XSNMADDQP: case PPC::XSNMADDQPO: case PPC::XSNMSUBQP: case PPC::XSNMSUBQPO: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::FABSD: case PPC::FABSD_rec: case PPC::FABSS: case PPC::FABSS_rec: case PPC::FCFID: case PPC::FCFIDS: case PPC::FCFIDS_rec: case PPC::FCFIDU: case PPC::FCFIDUS: case PPC::FCFIDUS_rec: case PPC::FCFIDU_rec: case PPC::FCFID_rec: case PPC::FCTID: case PPC::FCTIDU: case PPC::FCTIDUZ: case PPC::FCTIDUZ_rec: case PPC::FCTIDU_rec: case PPC::FCTIDZ: case PPC::FCTIDZ_rec: case PPC::FCTID_rec: case PPC::FCTIW: case PPC::FCTIWU: case PPC::FCTIWUZ: case PPC::FCTIWUZ_rec: case PPC::FCTIWU_rec: case PPC::FCTIWZ: case PPC::FCTIWZ_rec: case PPC::FCTIW_rec: case PPC::FMR: case PPC::FMR_rec: case PPC::FNABSD: case PPC::FNABSD_rec: case PPC::FNABSS: case PPC::FNABSS_rec: case PPC::FNEGD: case PPC::FNEGD_rec: case PPC::FNEGS: case PPC::FNEGS_rec: case PPC::FRE: case PPC::FRES: case PPC::FRES_rec: case PPC::FRE_rec: case PPC::FRIMD: case PPC::FRIMD_rec: case PPC::FRIMS: case PPC::FRIMS_rec: case PPC::FRIND: case PPC::FRIND_rec: case PPC::FRINS: case PPC::FRINS_rec: case PPC::FRIPD: case PPC::FRIPD_rec: case PPC::FRIPS: case PPC::FRIPS_rec: case PPC::FRIZD: case PPC::FRIZD_rec: case PPC::FRIZS: case PPC::FRIZS_rec: case PPC::FRSP: case PPC::FRSP_rec: case PPC::FRSQRTE: case PPC::FRSQRTES: case PPC::FRSQRTES_rec: case PPC::FRSQRTE_rec: case PPC::FSQRT: case PPC::FSQRTS: case PPC::FSQRTS_rec: case PPC::FSQRT_rec: case PPC::SLBFEE_rec: case PPC::SLBIEG: case PPC::SLBMFEE: case PPC::SLBMTE: case PPC::TLBIE: case PPC::XSABSQP: case PPC::XSCVDPQP: case PPC::XSCVQPDP: case PPC::XSCVQPDPO: case PPC::XSCVQPSDZ: case PPC::XSCVQPSQZ: case PPC::XSCVQPSWZ: case PPC::XSCVQPUDZ: case PPC::XSCVQPUQZ: case PPC::XSCVQPUWZ: case PPC::XSCVSDQP: case PPC::XSCVSQQP: case PPC::XSCVUDQP: case PPC::XSCVUQQP: case PPC::XSNABSQP: case PPC::XSNEGQP: case PPC::XSSQRTQP: case PPC::XSSQRTQPO: case PPC::XSXEXPQP: case PPC::XSXSIGQP: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MFFSCDRNI: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: DRM op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 11; Value |= op; break; } case PPC::LD: case PPC::LWA: case PPC::LWA_32: case PPC::LXSD: case PPC::LXSSP: case PPC::STD: case PPC::STQ: case PPC::STXSD: case PPC::STXSSP: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: DS_RA op = getMemRIXEncoding(MI, 1, Fixups, STI); op &= UINT64_C(524287); op <<= 2; Value |= op; break; } case PPC::LDU: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: DS_RA op = getMemRIXEncoding(MI, 2, Fixups, STI); op &= UINT64_C(524287); op <<= 2; Value |= op; break; } case PPC::MFFSCDRN: case PPC::MFFSCRN: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: FRB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MFFSCRNI: { // op: RST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RM op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(3); op <<= 11; Value |= op; break; } case PPC::STBUX: case PPC::STBUX8: case PPC::STDUX: case PPC::STFDUX: case PPC::STFSUX: case PPC::STHUX: case PPC::STHUX8: case PPC::STWUX: case PPC::STWUX8: { // op: RST op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::STDU: { // op: RST op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: DS_RA op = getMemRIXEncoding(MI, 2, Fixups, STI); op &= UINT64_C(524287); op <<= 2; Value |= op; break; } case PPC::MFCR: case PPC::MFCR8: case PPC::MFCTR: case PPC::MFCTR8: case PPC::MFLR: case PPC::MFLR8: case PPC::MFTB8: case PPC::MFUDSCR: case PPC::MFVRSAVE: case PPC::MFVRSAVEv: case PPC::MTCTR: case PPC::MTCTR8: case PPC::MTCTR8loop: case PPC::MTCTRloop: case PPC::MTLR: case PPC::MTLR8: case PPC::MTUDSCR: case PPC::MTVRSAVE: case PPC::MTVRSAVEv: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::SETB: case PPC::SETB8: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: BFA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(7); op <<= 18; Value |= op; break; } case PPC::MTVSRBMI: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D op = getImm16Encoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(62)) << 15; Value |= (op & UINT64_C(65472)); Value |= (op & UINT64_C(1)); break; } case PPC::ADDPCIS: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(62)) << 15; Value |= (op & UINT64_C(65472)); Value |= (op & UINT64_C(1)); break; } case PPC::EVLHHESPLAT: case PPC::EVLHHOSSPLAT: case PPC::EVLHHOUSPLAT: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D op = getSPE2DisEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(1)) << 20; Value |= (op & UINT64_C(2)) << 18; Value |= (op & UINT64_C(4)) << 16; Value |= (op & UINT64_C(8)) << 14; Value |= (op & UINT64_C(16)) << 12; Value |= (op & UINT64_C(32)) << 10; Value |= (op & UINT64_C(64)) << 8; Value |= (op & UINT64_C(128)) << 6; Value |= (op & UINT64_C(256)) << 4; Value |= (op & UINT64_C(512)) << 2; break; } case PPC::EVLWHE: case PPC::EVLWHOS: case PPC::EVLWHOU: case PPC::EVLWHSPLAT: case PPC::EVLWWSPLAT: case PPC::EVSTWHE: case PPC::EVSTWHO: case PPC::EVSTWWE: case PPC::EVSTWWO: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D op = getSPE4DisEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(1)) << 20; Value |= (op & UINT64_C(2)) << 18; Value |= (op & UINT64_C(4)) << 16; Value |= (op & UINT64_C(8)) << 14; Value |= (op & UINT64_C(16)) << 12; Value |= (op & UINT64_C(32)) << 10; Value |= (op & UINT64_C(64)) << 8; Value |= (op & UINT64_C(128)) << 6; Value |= (op & UINT64_C(256)) << 4; Value |= (op & UINT64_C(512)) << 2; break; } case PPC::EVLDD: case PPC::EVLDH: case PPC::EVLDW: case PPC::EVSTDD: case PPC::EVSTDH: case PPC::EVSTDW: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D op = getSPE8DisEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(1)) << 20; Value |= (op & UINT64_C(2)) << 18; Value |= (op & UINT64_C(4)) << 16; Value |= (op & UINT64_C(8)) << 14; Value |= (op & UINT64_C(16)) << 12; Value |= (op & UINT64_C(32)) << 10; Value |= (op & UINT64_C(64)) << 8; Value |= (op & UINT64_C(128)) << 6; Value |= (op & UINT64_C(256)) << 4; Value |= (op & UINT64_C(512)) << 2; break; } case PPC::PLD: case PPC::PLWA: case PPC::PLWA8: case PPC::PLXSD: case PPC::PLXSSP: case PPC::PSTD: case PPC::PSTXSD: case PPC::PSTXSSP: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D_RA op = getMemRI34Encoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::PLDpc: case PPC::PLWA8pc: case PPC::PLWApc: case PPC::PLXSDpc: case PPC::PLXSSPpc: case PPC::PSTDpc: case PPC::PSTXSDpc: case PPC::PSTXSSPpc: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: D_RA op = getMemRI34PCRelEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::MFBHRBE: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: Entry op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(1023); op <<= 11; Value |= op; break; } case PPC::DARN: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: L op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(3); op <<= 16; Value |= op; break; } case PPC::ADDME: case PPC::ADDME8: case PPC::ADDME8O: case PPC::ADDME8O_rec: case PPC::ADDME8_rec: case PPC::ADDMEO: case PPC::ADDMEO_rec: case PPC::ADDME_rec: case PPC::ADDZE: case PPC::ADDZE8: case PPC::ADDZE8O: case PPC::ADDZE8O_rec: case PPC::ADDZE8_rec: case PPC::ADDZEO: case PPC::ADDZEO_rec: case PPC::ADDZE_rec: case PPC::EFDABS: case PPC::EFDNABS: case PPC::EFDNEG: case PPC::EFSABS: case PPC::EFSNABS: case PPC::EFSNEG: case PPC::EVABS: case PPC::EVADDSMIAAW: case PPC::EVADDSSIAAW: case PPC::EVADDUMIAAW: case PPC::EVADDUSIAAW: case PPC::EVCNTLSW: case PPC::EVCNTLZW: case PPC::EVEXTSB: case PPC::EVEXTSH: case PPC::EVFSABS: case PPC::EVFSNABS: case PPC::EVFSNEG: case PPC::EVMRA: case PPC::EVNEG: case PPC::EVRNDW: case PPC::EVSPLATFI: case PPC::EVSPLATI: case PPC::EVSUBFSMIAAW: case PPC::EVSUBFSSIAAW: case PPC::EVSUBFUMIAAW: case PPC::EVSUBFUSIAAW: case PPC::NEG: case PPC::NEG8: case PPC::NEG8O: case PPC::NEG8O_rec: case PPC::NEG8_rec: case PPC::NEGO: case PPC::NEGO_rec: case PPC::NEG_rec: case PPC::SUBFME: case PPC::SUBFME8: case PPC::SUBFME8O: case PPC::SUBFME8O_rec: case PPC::SUBFME8_rec: case PPC::SUBFMEO: case PPC::SUBFMEO_rec: case PPC::SUBFME_rec: case PPC::SUBFZE: case PPC::SUBFZE8: case PPC::SUBFZE8O: case PPC::SUBFZE8O_rec: case PPC::SUBFZE8_rec: case PPC::SUBFZEO: case PPC::SUBFZEO_rec: case PPC::SUBFZE_rec: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::ADD4: case PPC::ADD4O: case PPC::ADD4O_rec: case PPC::ADD4_rec: case PPC::ADD8: case PPC::ADD8O: case PPC::ADD8O_rec: case PPC::ADD8_rec: case PPC::ADDC: case PPC::ADDC8: case PPC::ADDC8O: case PPC::ADDC8O_rec: case PPC::ADDC8_rec: case PPC::ADDCO: case PPC::ADDCO_rec: case PPC::ADDC_rec: case PPC::ADDE: case PPC::ADDE8: case PPC::ADDE8O: case PPC::ADDE8O_rec: case PPC::ADDE8_rec: case PPC::ADDEO: case PPC::ADDEO_rec: case PPC::ADDE_rec: case PPC::BRINC: case PPC::DIVD: case PPC::DIVDE: case PPC::DIVDEO: case PPC::DIVDEO_rec: case PPC::DIVDEU: case PPC::DIVDEUO: case PPC::DIVDEUO_rec: case PPC::DIVDEU_rec: case PPC::DIVDE_rec: case PPC::DIVDO: case PPC::DIVDO_rec: case PPC::DIVDU: case PPC::DIVDUO: case PPC::DIVDUO_rec: case PPC::DIVDU_rec: case PPC::DIVD_rec: case PPC::DIVW: case PPC::DIVWE: case PPC::DIVWEO: case PPC::DIVWEO_rec: case PPC::DIVWEU: case PPC::DIVWEUO: case PPC::DIVWEUO_rec: case PPC::DIVWEU_rec: case PPC::DIVWE_rec: case PPC::DIVWO: case PPC::DIVWO_rec: case PPC::DIVWU: case PPC::DIVWUO: case PPC::DIVWUO_rec: case PPC::DIVWU_rec: case PPC::DIVW_rec: case PPC::EFDADD: case PPC::EFDDIV: case PPC::EFDMUL: case PPC::EFDSUB: case PPC::EFSADD: case PPC::EFSDIV: case PPC::EFSMUL: case PPC::EFSSUB: case PPC::EVADDIW: case PPC::EVADDW: case PPC::EVAND: case PPC::EVANDC: case PPC::EVDIVWS: case PPC::EVDIVWU: case PPC::EVEQV: case PPC::EVFSADD: case PPC::EVFSDIV: case PPC::EVFSMUL: case PPC::EVFSSUB: case PPC::EVLDDX: case PPC::EVLDHX: case PPC::EVLDWX: case PPC::EVLHHESPLATX: case PPC::EVLHHOSSPLATX: case PPC::EVLHHOUSPLATX: case PPC::EVLWHEX: case PPC::EVLWHOSX: case PPC::EVLWHOUX: case PPC::EVLWHSPLATX: case PPC::EVLWWSPLATX: case PPC::EVMERGEHI: case PPC::EVMERGEHILO: case PPC::EVMERGELO: case PPC::EVMERGELOHI: case PPC::EVMHEGSMFAA: case PPC::EVMHEGSMFAN: case PPC::EVMHEGSMIAA: case PPC::EVMHEGSMIAN: case PPC::EVMHEGUMIAA: case PPC::EVMHEGUMIAN: case PPC::EVMHESMF: case PPC::EVMHESMFA: case PPC::EVMHESMFAAW: case PPC::EVMHESMFANW: case PPC::EVMHESMI: case PPC::EVMHESMIA: case PPC::EVMHESMIAAW: case PPC::EVMHESMIANW: case PPC::EVMHESSF: case PPC::EVMHESSFA: case PPC::EVMHESSFAAW: case PPC::EVMHESSFANW: case PPC::EVMHESSIAAW: case PPC::EVMHESSIANW: case PPC::EVMHEUMI: case PPC::EVMHEUMIA: case PPC::EVMHEUMIAAW: case PPC::EVMHEUMIANW: case PPC::EVMHEUSIAAW: case PPC::EVMHEUSIANW: case PPC::EVMHOGSMFAA: case PPC::EVMHOGSMFAN: case PPC::EVMHOGSMIAA: case PPC::EVMHOGSMIAN: case PPC::EVMHOGUMIAA: case PPC::EVMHOGUMIAN: case PPC::EVMHOSMF: case PPC::EVMHOSMFA: case PPC::EVMHOSMFAAW: case PPC::EVMHOSMFANW: case PPC::EVMHOSMI: case PPC::EVMHOSMIA: case PPC::EVMHOSMIAAW: case PPC::EVMHOSMIANW: case PPC::EVMHOSSF: case PPC::EVMHOSSFA: case PPC::EVMHOSSFAAW: case PPC::EVMHOSSFANW: case PPC::EVMHOSSIAAW: case PPC::EVMHOSSIANW: case PPC::EVMHOUMI: case PPC::EVMHOUMIA: case PPC::EVMHOUMIAAW: case PPC::EVMHOUMIANW: case PPC::EVMHOUSIAAW: case PPC::EVMHOUSIANW: case PPC::EVMWHSMF: case PPC::EVMWHSMFA: case PPC::EVMWHSMI: case PPC::EVMWHSMIA: case PPC::EVMWHSSF: case PPC::EVMWHSSFA: case PPC::EVMWHUMI: case PPC::EVMWHUMIA: case PPC::EVMWLSMIAAW: case PPC::EVMWLSMIANW: case PPC::EVMWLSSIAAW: case PPC::EVMWLSSIANW: case PPC::EVMWLUMI: case PPC::EVMWLUMIA: case PPC::EVMWLUMIAAW: case PPC::EVMWLUMIANW: case PPC::EVMWLUSIAAW: case PPC::EVMWLUSIANW: case PPC::EVMWSMF: case PPC::EVMWSMFA: case PPC::EVMWSMFAA: case PPC::EVMWSMFAN: case PPC::EVMWSMI: case PPC::EVMWSMIA: case PPC::EVMWSMIAA: case PPC::EVMWSMIAN: case PPC::EVMWSSF: case PPC::EVMWSSFA: case PPC::EVMWSSFAA: case PPC::EVMWSSFAN: case PPC::EVMWUMI: case PPC::EVMWUMIA: case PPC::EVMWUMIAA: case PPC::EVMWUMIAN: case PPC::EVNAND: case PPC::EVNOR: case PPC::EVOR: case PPC::EVORC: case PPC::EVRLW: case PPC::EVRLWI: case PPC::EVSLW: case PPC::EVSLWI: case PPC::EVSRWIS: case PPC::EVSRWIU: case PPC::EVSRWS: case PPC::EVSRWU: case PPC::EVSTDDX: case PPC::EVSTDHX: case PPC::EVSTDWX: case PPC::EVSTWHEX: case PPC::EVSTWHOX: case PPC::EVSTWWEX: case PPC::EVSTWWOX: case PPC::EVSUBFW: case PPC::EVSUBIFW: case PPC::EVXOR: case PPC::MULHD: case PPC::MULHDU: case PPC::MULHDU_rec: case PPC::MULHD_rec: case PPC::MULHW: case PPC::MULHWU: case PPC::MULHWU_rec: case PPC::MULHW_rec: case PPC::MULLD: case PPC::MULLDO: case PPC::MULLDO_rec: case PPC::MULLD_rec: case PPC::MULLW: case PPC::MULLWO: case PPC::MULLWO_rec: case PPC::MULLW_rec: case PPC::SUBF: case PPC::SUBF8: case PPC::SUBF8O: case PPC::SUBF8O_rec: case PPC::SUBF8_rec: case PPC::SUBFC: case PPC::SUBFC8: case PPC::SUBFC8O: case PPC::SUBFC8O_rec: case PPC::SUBFC8_rec: case PPC::SUBFCO: case PPC::SUBFCO_rec: case PPC::SUBFC_rec: case PPC::SUBFE: case PPC::SUBFE8: case PPC::SUBFE8O: case PPC::SUBFE8O_rec: case PPC::SUBFE8_rec: case PPC::SUBFEO: case PPC::SUBFEO_rec: case PPC::SUBFE_rec: case PPC::SUBFO: case PPC::SUBFO_rec: case PPC::SUBF_rec: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::ISEL: case PPC::ISEL8: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: COND op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; break; } case PPC::ADDEX: case PPC::ADDEX8: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: CY op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(3); op <<= 9; Value |= op; break; } case PPC::SUBFUS: case PPC::SUBFUS_rec: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: L op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(1); op <<= 10; Value |= op; break; } case PPC::ADD4TLS: case PPC::ADD8TLS: case PPC::ADD8TLS_: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getTLSRegEncoding(MI, 2, Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::PADDI: case PPC::PADDI8: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: SI op = getImm34EncodingNoPCRel(MI, 2, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(65535)); break; } case PPC::PADDI8pc: case PPC::PADDIpc: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: SI op = getImm34EncodingPCRel(MI, 2, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(65535)); break; } case PPC::EFDCFS: case PPC::EFDCFSF: case PPC::EFDCFSI: case PPC::EFDCFSID: case PPC::EFDCFUF: case PPC::EFDCFUI: case PPC::EFDCFUID: case PPC::EFDCTSF: case PPC::EFDCTSI: case PPC::EFDCTSIDZ: case PPC::EFDCTSIZ: case PPC::EFDCTUF: case PPC::EFDCTUI: case PPC::EFDCTUIDZ: case PPC::EFDCTUIZ: case PPC::EFSCFD: case PPC::EFSCFSF: case PPC::EFSCFSI: case PPC::EFSCFUF: case PPC::EFSCFUI: case PPC::EFSCTSF: case PPC::EFSCTSI: case PPC::EFSCTSIZ: case PPC::EFSCTUF: case PPC::EFSCTUI: case PPC::EFSCTUIZ: case PPC::EVFSCFSF: case PPC::EVFSCFSI: case PPC::EVFSCFUF: case PPC::EVFSCFUI: case PPC::EVFSCTSF: case PPC::EVFSCTSI: case PPC::EVFSCTSIZ: case PPC::EVFSCTUF: case PPC::EVFSCTUI: case PPC::EVFSCTUIZ: case PPC::SLBMFEV: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::PLI: case PPC::PLI8: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: SI op = getImm34EncodingNoPCRel(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(65535)); break; } case PPC::MFDCR: case PPC::MFPMR: case PPC::MFSPR: case PPC::MFSPR8: case PPC::MFTB: case PPC::MTDCR: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: SPR op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(992)) << 6; break; } case PPC::XSXEXPDP: case PPC::XSXSIGDP: { // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: XB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::MTPMR: case PPC::MTSPR: case PPC::MTSPR8: { // op: RT op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: SPR op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(992)) << 6; break; } case PPC::LQ: { // op: RTp op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: DQ_RA op = getMemRIX16Encoding(MI, 1, Fixups, STI); op &= UINT64_C(131071); op <<= 4; Value |= op; break; } case PPC::RFEBB: { // op: S op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(1); op <<= 11; Value |= op; break; } case PPC::MFOCRF: case PPC::MFOCRF8: { // op: ST op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: FXM op = get_crbitm_encoding(MI, 1, Fixups, STI); op &= UINT64_C(255); op <<= 12; Value |= op; break; } case PPC::MTOCRF: case PPC::MTOCRF8: { // op: ST op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: FXM op = get_crbitm_encoding(MI, 0, Fixups, STI); op &= UINT64_C(255); op <<= 12; Value |= op; break; } case PPC::DSS: { // op: STRM op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(3); op <<= 21; Value |= op; break; } case PPC::DST: case PPC::DST64: case PPC::DSTST: case PPC::DSTST64: case PPC::DSTSTT: case PPC::DSTSTT64: case PPC::DSTT: case PPC::DSTT64: { // op: STRM op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(3); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::DCBF: case PPC::DCBT: case PPC::DCBTST: { // op: TH op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::DCBTEP: case PPC::DCBTSTEP: { // op: TH op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::MTVSCR: { // op: VB op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::V_SET0: case PPC::V_SET0B: case PPC::V_SET0H: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(31)) << 11; break; } case PPC::MFVSCR: case PPC::V_SETALLONES: case PPC::V_SETALLONESB: case PPC::V_SETALLONESH: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } case PPC::VSPLTISB: case PPC::VSPLTISH: case PPC::VSPLTISW: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: IMM op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::VMUL10CUQ: case PPC::VMUL10UQ: case PPC::VSBOX: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::VSHASIGMAD: case PPC::VSHASIGMAW: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: ST op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 15; Value |= op; // op: SIX op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(15); op <<= 11; Value |= op; break; } case PPC::BCDCPSGN_rec: case PPC::BCDUS_rec: case PPC::BCDUTRUNC_rec: case PPC::VABSDUB: case PPC::VABSDUH: case PPC::VABSDUW: case PPC::VADDCUQ: case PPC::VADDCUW: case PPC::VADDFP: case PPC::VADDSBS: case PPC::VADDSHS: case PPC::VADDSWS: case PPC::VADDUBM: case PPC::VADDUBS: case PPC::VADDUDM: case PPC::VADDUHM: case PPC::VADDUHS: case PPC::VADDUQM: case PPC::VADDUWM: case PPC::VADDUWS: case PPC::VAND: case PPC::VANDC: case PPC::VAVGSB: case PPC::VAVGSH: case PPC::VAVGSW: case PPC::VAVGUB: case PPC::VAVGUH: case PPC::VAVGUW: case PPC::VBPERMD: case PPC::VBPERMQ: case PPC::VCFSX: case PPC::VCFUGED: case PPC::VCFUX: case PPC::VCIPHER: case PPC::VCIPHERLAST: case PPC::VCLRLB: case PPC::VCLRRB: case PPC::VCLZDM: case PPC::VCMPBFP: case PPC::VCMPBFP_rec: case PPC::VCMPEQFP: case PPC::VCMPEQFP_rec: case PPC::VCMPEQUB: case PPC::VCMPEQUB_rec: case PPC::VCMPEQUD: case PPC::VCMPEQUD_rec: case PPC::VCMPEQUH: case PPC::VCMPEQUH_rec: case PPC::VCMPEQUQ: case PPC::VCMPEQUQ_rec: case PPC::VCMPEQUW: case PPC::VCMPEQUW_rec: case PPC::VCMPGEFP: case PPC::VCMPGEFP_rec: case PPC::VCMPGTFP: case PPC::VCMPGTFP_rec: case PPC::VCMPGTSB: case PPC::VCMPGTSB_rec: case PPC::VCMPGTSD: case PPC::VCMPGTSD_rec: case PPC::VCMPGTSH: case PPC::VCMPGTSH_rec: case PPC::VCMPGTSQ: case PPC::VCMPGTSQ_rec: case PPC::VCMPGTSW: case PPC::VCMPGTSW_rec: case PPC::VCMPGTUB: case PPC::VCMPGTUB_rec: case PPC::VCMPGTUD: case PPC::VCMPGTUD_rec: case PPC::VCMPGTUH: case PPC::VCMPGTUH_rec: case PPC::VCMPGTUQ: case PPC::VCMPGTUQ_rec: case PPC::VCMPGTUW: case PPC::VCMPGTUW_rec: case PPC::VCMPNEB: case PPC::VCMPNEB_rec: case PPC::VCMPNEH: case PPC::VCMPNEH_rec: case PPC::VCMPNEW: case PPC::VCMPNEW_rec: case PPC::VCMPNEZB: case PPC::VCMPNEZB_rec: case PPC::VCMPNEZH: case PPC::VCMPNEZH_rec: case PPC::VCMPNEZW: case PPC::VCMPNEZW_rec: case PPC::VCTSXS: case PPC::VCTUXS: case PPC::VCTZDM: case PPC::VDIVESD: case PPC::VDIVESQ: case PPC::VDIVESW: case PPC::VDIVEUD: case PPC::VDIVEUQ: case PPC::VDIVEUW: case PPC::VDIVSD: case PPC::VDIVSQ: case PPC::VDIVSW: case PPC::VDIVUD: case PPC::VDIVUQ: case PPC::VDIVUW: case PPC::VEQV: case PPC::VEXTRACTD: case PPC::VEXTRACTUB: case PPC::VEXTRACTUH: case PPC::VEXTRACTUW: case PPC::VEXTUBLX: case PPC::VEXTUBRX: case PPC::VEXTUHLX: case PPC::VEXTUHRX: case PPC::VEXTUWLX: case PPC::VEXTUWRX: case PPC::VINSERTD: case PPC::VINSERTW: case PPC::VMAXFP: case PPC::VMAXSB: case PPC::VMAXSD: case PPC::VMAXSH: case PPC::VMAXSW: case PPC::VMAXUB: case PPC::VMAXUD: case PPC::VMAXUH: case PPC::VMAXUW: case PPC::VMINFP: case PPC::VMINSB: case PPC::VMINSD: case PPC::VMINSH: case PPC::VMINSW: case PPC::VMINUB: case PPC::VMINUD: case PPC::VMINUH: case PPC::VMINUW: case PPC::VMODSD: case PPC::VMODSQ: case PPC::VMODSW: case PPC::VMODUD: case PPC::VMODUQ: case PPC::VMODUW: case PPC::VMRGEW: case PPC::VMRGHB: case PPC::VMRGHH: case PPC::VMRGHW: case PPC::VMRGLB: case PPC::VMRGLH: case PPC::VMRGLW: case PPC::VMRGOW: case PPC::VMUL10ECUQ: case PPC::VMUL10EUQ: case PPC::VMULESB: case PPC::VMULESD: case PPC::VMULESH: case PPC::VMULESW: case PPC::VMULEUB: case PPC::VMULEUD: case PPC::VMULEUH: case PPC::VMULEUW: case PPC::VMULHSD: case PPC::VMULHSW: case PPC::VMULHUD: case PPC::VMULHUW: case PPC::VMULLD: case PPC::VMULOSB: case PPC::VMULOSD: case PPC::VMULOSH: case PPC::VMULOSW: case PPC::VMULOUB: case PPC::VMULOUD: case PPC::VMULOUH: case PPC::VMULOUW: case PPC::VMULUWM: case PPC::VNAND: case PPC::VNCIPHER: case PPC::VNCIPHERLAST: case PPC::VNOR: case PPC::VOR: case PPC::VORC: case PPC::VPDEPD: case PPC::VPEXTD: case PPC::VPKPX: case PPC::VPKSDSS: case PPC::VPKSDUS: case PPC::VPKSHSS: case PPC::VPKSHUS: case PPC::VPKSWSS: case PPC::VPKSWUS: case PPC::VPKUDUM: case PPC::VPKUDUS: case PPC::VPKUHUM: case PPC::VPKUHUS: case PPC::VPKUWUM: case PPC::VPKUWUS: case PPC::VPMSUMB: case PPC::VPMSUMD: case PPC::VPMSUMH: case PPC::VPMSUMW: case PPC::VRLB: case PPC::VRLD: case PPC::VRLDMI: case PPC::VRLDNM: case PPC::VRLH: case PPC::VRLQ: case PPC::VRLQMI: case PPC::VRLQNM: case PPC::VRLW: case PPC::VRLWMI: case PPC::VRLWNM: case PPC::VSL: case PPC::VSLB: case PPC::VSLD: case PPC::VSLH: case PPC::VSLO: case PPC::VSLQ: case PPC::VSLV: case PPC::VSLW: case PPC::VSPLTB: case PPC::VSPLTBs: case PPC::VSPLTH: case PPC::VSPLTHs: case PPC::VSPLTW: case PPC::VSR: case PPC::VSRAB: case PPC::VSRAD: case PPC::VSRAH: case PPC::VSRAQ: case PPC::VSRAW: case PPC::VSRB: case PPC::VSRD: case PPC::VSRH: case PPC::VSRO: case PPC::VSRQ: case PPC::VSRV: case PPC::VSRW: case PPC::VSUBCUQ: case PPC::VSUBCUW: case PPC::VSUBFP: case PPC::VSUBSBS: case PPC::VSUBSHS: case PPC::VSUBSWS: case PPC::VSUBUBM: case PPC::VSUBUBS: case PPC::VSUBUDM: case PPC::VSUBUHM: case PPC::VSUBUHS: case PPC::VSUBUQM: case PPC::VSUBUWM: case PPC::VSUBUWS: case PPC::VSUM2SWS: case PPC::VSUM4SBS: case PPC::VSUM4SHS: case PPC::VSUM4UBS: case PPC::VSUMSWS: case PPC::VXOR: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::BCDADD_rec: case PPC::BCDSR_rec: case PPC::BCDSUB_rec: case PPC::BCDS_rec: case PPC::BCDTRUNC_rec: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: PS op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(1); op <<= 9; Value |= op; break; } case PPC::VSLDOI: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: SH op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(15); op <<= 6; Value |= op; break; } case PPC::MADDHD: case PPC::MADDHDU: case PPC::MADDLD: case PPC::MADDLD8: case PPC::VADDECUQ: case PPC::VADDEUQM: case PPC::VEXTDDVLX: case PPC::VEXTDDVRX: case PPC::VEXTDUBVLX: case PPC::VEXTDUBVRX: case PPC::VEXTDUHVLX: case PPC::VEXTDUHVRX: case PPC::VEXTDUWVLX: case PPC::VEXTDUWVRX: case PPC::VMHADDSHS: case PPC::VMHRADDSHS: case PPC::VMLADDUHM: case PPC::VMSUMCUD: case PPC::VMSUMMBM: case PPC::VMSUMSHM: case PPC::VMSUMSHS: case PPC::VMSUMUBM: case PPC::VMSUMUDM: case PPC::VMSUMUHM: case PPC::VMSUMUHS: case PPC::VPERM: case PPC::VPERMR: case PPC::VSEL: case PPC::VSUBECUQ: case PPC::VSUBEUQM: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: VC op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; break; } case PPC::VMADDFP: case PPC::VNMSUBFP: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VC op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::VPERMXOR: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VC op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 6; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::VINSBLX: case PPC::VINSBRX: case PPC::VINSBVLX: case PPC::VINSBVRX: case PPC::VINSD: case PPC::VINSDLX: case PPC::VINSDRX: case PPC::VINSERTB: case PPC::VINSERTH: case PPC::VINSHLX: case PPC::VINSHRX: case PPC::VINSHVLX: case PPC::VINSHVRX: case PPC::VINSW: case PPC::VINSWLX: case PPC::VINSWRX: case PPC::VINSWVLX: case PPC::VINSWVRX: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::BCDCTN_rec: case PPC::BCDCTSQ_rec: case PPC::VCFSX_0: case PPC::VCFUX_0: case PPC::VCLZB: case PPC::VCLZD: case PPC::VCLZH: case PPC::VCLZW: case PPC::VCTSXS_0: case PPC::VCTUXS_0: case PPC::VEXPTEFP: case PPC::VGBBD: case PPC::VLOGEFP: case PPC::VPOPCNTB: case PPC::VPOPCNTD: case PPC::VPOPCNTH: case PPC::VPOPCNTW: case PPC::VREFP: case PPC::VRFIM: case PPC::VRFIN: case PPC::VRFIP: case PPC::VRFIZ: case PPC::VRSQRTEFP: case PPC::VUPKHPX: case PPC::VUPKHSB: case PPC::VUPKHSH: case PPC::VUPKHSW: case PPC::VUPKLPX: case PPC::VUPKLSB: case PPC::VUPKLSH: case PPC::VUPKLSW: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::BCDCFN_rec: case PPC::BCDCFSQ_rec: case PPC::BCDCFZ_rec: case PPC::BCDCTZ_rec: case PPC::BCDSETSGN_rec: { // op: VD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: PS op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 9; Value |= op; break; } case PPC::XSRQPI: case PPC::XSRQPIX: case PPC::XSRQPXP: { // op: VRT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: R op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(1); op <<= 16; Value |= op; // op: VRB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: idx op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(3); op <<= 9; Value |= op; break; } case PPC::VSLDBI: case PPC::VSRDBI: { // op: VRT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VRA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: VRB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: SD op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(7); op <<= 6; Value |= op; break; } case PPC::VSTRIBL: case PPC::VSTRIBL_rec: case PPC::VSTRIBR: case PPC::VSTRIBR_rec: case PPC::VSTRIHL: case PPC::VSTRIHL_rec: case PPC::VSTRIHR: case PPC::VSTRIHR_rec: { // op: VT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; // op: VB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::XXLEQVOnes: case PPC::XXLXORdpz: case PPC::XXLXORspz: case PPC::XXLXORz: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 3; Value |= (op & UINT64_C(32)) >> 4; Value |= (op & UINT64_C(32)) >> 5; break; } case PPC::XXSPLTIDP: case PPC::XXSPLTIW: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) << 11; // op: IMM32 op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(4294901760)) << 16; Value |= (op & UINT64_C(65535)); break; } case PPC::XXSPLTI32DX: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) << 11; // op: IX op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(1); op <<= 17; Value |= op; // op: IMM32 op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(4294901760)) << 16; Value |= (op & UINT64_C(65535)); break; } case PPC::LXV: case PPC::STXV: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 2; // op: DS_RA op = getMemRIX16Encoding(MI, 1, Fixups, STI); op &= UINT64_C(131071); op <<= 4; Value |= op; break; } case PPC::MTVRD: case PPC::MTVRWA: case PPC::MTVRWZ: case PPC::MTVSRD: case PPC::MTVSRWA: case PPC::MTVSRWS: case PPC::MTVSRWZ: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::LXSDX: case PPC::LXSIBZX: case PPC::LXSIHZX: case PPC::LXSIWAX: case PPC::LXSIWZX: case PPC::LXSSPX: case PPC::LXVB16X: case PPC::LXVD2X: case PPC::LXVDSX: case PPC::LXVH8X: case PPC::LXVL: case PPC::LXVLL: case PPC::LXVRBX: case PPC::LXVRDX: case PPC::LXVRHX: case PPC::LXVRL: case PPC::LXVRLL: case PPC::LXVRWX: case PPC::LXVW4X: case PPC::LXVWSX: case PPC::LXVX: case PPC::MTVSRDD: case PPC::STXSDX: case PPC::STXSIBX: case PPC::STXSIBXv: case PPC::STXSIHX: case PPC::STXSIHXv: case PPC::STXSIWX: case PPC::STXSSPX: case PPC::STXVB16X: case PPC::STXVD2X: case PPC::STXVH8X: case PPC::STXVL: case PPC::STXVLL: case PPC::STXVRBX: case PPC::STXVRDX: case PPC::STXVRHX: case PPC::STXVRL: case PPC::STXVRLL: case PPC::STXVRWX: case PPC::STXVW4X: case PPC::STXVX: case PPC::XSIEXPDP: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::XVTSTDCDP: case PPC::XVTSTDCSP: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: DCMX op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(64)); Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::XXSPLTIB: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: IMM8 op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(255); op <<= 11; Value |= op; break; } case PPC::LXVKQ: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: UIM op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::XXGENPCVBM: case PPC::XXGENPCVDM: case PPC::XXGENPCVHM: case PPC::XXGENPCVWM: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: VRB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: IMM op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::XXPERMDIs: case PPC::XXSLDWIs: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 3; Value |= (op & UINT64_C(32)) >> 4; // op: D op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(3); op <<= 8; Value |= op; break; } case PPC::XSADDDP: case PPC::XSADDSP: case PPC::XSCMPEQDP: case PPC::XSCMPGEDP: case PPC::XSCMPGTDP: case PPC::XSCPSGNDP: case PPC::XSDIVDP: case PPC::XSDIVSP: case PPC::XSMAXCDP: case PPC::XSMAXDP: case PPC::XSMAXJDP: case PPC::XSMINCDP: case PPC::XSMINDP: case PPC::XSMINJDP: case PPC::XSMULDP: case PPC::XSMULSP: case PPC::XSSUBDP: case PPC::XSSUBSP: case PPC::XVADDDP: case PPC::XVADDSP: case PPC::XVCMPEQDP: case PPC::XVCMPEQDP_rec: case PPC::XVCMPEQSP: case PPC::XVCMPEQSP_rec: case PPC::XVCMPGEDP: case PPC::XVCMPGEDP_rec: case PPC::XVCMPGESP: case PPC::XVCMPGESP_rec: case PPC::XVCMPGTDP: case PPC::XVCMPGTDP_rec: case PPC::XVCMPGTSP: case PPC::XVCMPGTSP_rec: case PPC::XVCPSGNDP: case PPC::XVCPSGNSP: case PPC::XVDIVDP: case PPC::XVDIVSP: case PPC::XVIEXPDP: case PPC::XVIEXPSP: case PPC::XVMAXDP: case PPC::XVMAXSP: case PPC::XVMINDP: case PPC::XVMINSP: case PPC::XVMULDP: case PPC::XVMULSP: case PPC::XVSUBDP: case PPC::XVSUBSP: case PPC::XXLAND: case PPC::XXLANDC: case PPC::XXLEQV: case PPC::XXLNAND: case PPC::XXLNOR: case PPC::XXLOR: case PPC::XXLORC: case PPC::XXLORf: case PPC::XXLXOR: case PPC::XXMRGHW: case PPC::XXMRGLW: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::XXPERMDI: case PPC::XXSLDWI: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: D op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(3); op <<= 8; Value |= op; break; } case PPC::XXBLENDVB: case PPC::XXBLENDVD: case PPC::XXBLENDVH: case PPC::XXBLENDVW: case PPC::XXSEL: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XC op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 6; Value |= (op & UINT64_C(32)) >> 2; break; } case PPC::XXEVAL: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XC op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 6; Value |= (op & UINT64_C(32)) >> 2; // op: IMM op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(255); op <<= 32; Value |= op; break; } case PPC::XXPERMX: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: XC op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 6; Value |= (op & UINT64_C(32)) >> 2; // op: IMM op = getMachineOpValue(MI, MI.getOperand(4), Fixups, STI); op &= UINT64_C(7); op <<= 32; Value |= op; break; } case PPC::XXPERM: case PPC::XXPERMR: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::XSMADDADP: case PPC::XSMADDASP: case PPC::XSMADDMDP: case PPC::XSMADDMSP: case PPC::XSMSUBADP: case PPC::XSMSUBASP: case PPC::XSMSUBMDP: case PPC::XSMSUBMSP: case PPC::XSNMADDADP: case PPC::XSNMADDASP: case PPC::XSNMADDMDP: case PPC::XSNMADDMSP: case PPC::XSNMSUBADP: case PPC::XSNMSUBASP: case PPC::XSNMSUBMDP: case PPC::XSNMSUBMSP: case PPC::XVMADDADP: case PPC::XVMADDASP: case PPC::XVMADDMDP: case PPC::XVMADDMSP: case PPC::XVMSUBADP: case PPC::XVMSUBASP: case PPC::XVMSUBMDP: case PPC::XVMSUBMSP: case PPC::XVNMADDADP: case PPC::XVNMADDASP: case PPC::XVNMADDMDP: case PPC::XVNMADDMSP: case PPC::XVNMSUBADP: case PPC::XVNMSUBASP: case PPC::XVNMSUBMDP: case PPC::XVNMSUBMSP: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XA op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 16; Value |= (op & UINT64_C(32)) >> 3; // op: XB op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::XSABSDP: case PPC::XSCVDPHP: case PPC::XSCVDPSP: case PPC::XSCVDPSPN: case PPC::XSCVDPSXDS: case PPC::XSCVDPSXDSs: case PPC::XSCVDPSXWS: case PPC::XSCVDPSXWSs: case PPC::XSCVDPUXDS: case PPC::XSCVDPUXDSs: case PPC::XSCVDPUXWS: case PPC::XSCVDPUXWSs: case PPC::XSCVHPDP: case PPC::XSCVSPDP: case PPC::XSCVSPDPN: case PPC::XSCVSXDDP: case PPC::XSCVSXDSP: case PPC::XSCVUXDDP: case PPC::XSCVUXDSP: case PPC::XSNABSDP: case PPC::XSNABSDPs: case PPC::XSNEGDP: case PPC::XSRDPI: case PPC::XSRDPIC: case PPC::XSRDPIM: case PPC::XSRDPIP: case PPC::XSRDPIZ: case PPC::XSREDP: case PPC::XSRESP: case PPC::XSRSP: case PPC::XSRSQRTEDP: case PPC::XSRSQRTESP: case PPC::XSSQRTDP: case PPC::XSSQRTSP: case PPC::XVABSDP: case PPC::XVABSSP: case PPC::XVCVBF16SPN: case PPC::XVCVDPSP: case PPC::XVCVDPSXDS: case PPC::XVCVDPSXWS: case PPC::XVCVDPUXDS: case PPC::XVCVDPUXWS: case PPC::XVCVHPSP: case PPC::XVCVSPBF16: case PPC::XVCVSPDP: case PPC::XVCVSPHP: case PPC::XVCVSPSXDS: case PPC::XVCVSPSXWS: case PPC::XVCVSPUXDS: case PPC::XVCVSPUXWS: case PPC::XVCVSXDDP: case PPC::XVCVSXDSP: case PPC::XVCVSXWDP: case PPC::XVCVSXWSP: case PPC::XVCVUXDDP: case PPC::XVCVUXDSP: case PPC::XVCVUXWDP: case PPC::XVCVUXWSP: case PPC::XVNABSDP: case PPC::XVNABSSP: case PPC::XVNEGDP: case PPC::XVNEGSP: case PPC::XVRDPI: case PPC::XVRDPIC: case PPC::XVRDPIM: case PPC::XVRDPIP: case PPC::XVRDPIZ: case PPC::XVREDP: case PPC::XVRESP: case PPC::XVRSPI: case PPC::XVRSPIC: case PPC::XVRSPIM: case PPC::XVRSPIP: case PPC::XVRSPIZ: case PPC::XVRSQRTEDP: case PPC::XVRSQRTESP: case PPC::XVSQRTDP: case PPC::XVSQRTSP: case PPC::XVXEXPDP: case PPC::XVXEXPSP: case PPC::XVXSIGDP: case PPC::XVXSIGSP: case PPC::XXBRD: case PPC::XXBRH: case PPC::XXBRQ: case PPC::XXBRW: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; break; } case PPC::XXSPLTW: case PPC::XXSPLTWs: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: D op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(3); op <<= 16; Value |= op; break; } case PPC::XXEXTRACTUW: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XB op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: UIM5 op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::XXINSERTW: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: XB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); Value |= (op & UINT64_C(31)) << 11; Value |= (op & UINT64_C(32)) >> 4; // op: UIM5 op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::PLXV: case PPC::PSTXV: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(63); op <<= 21; Value |= op; // op: D_RA op = getMemRI34Encoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::PLXVpc: case PPC::PSTXVpc: { // op: XT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(63); op <<= 21; Value |= op; // op: D_RA op = getMemRI34PCRelEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::MFVRD: case PPC::MFVRWZ: case PPC::MFVSRD: case PPC::MFVSRLD: case PPC::MFVSRWZ: { // op: XT op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); Value |= (op & UINT64_C(31)) << 21; Value |= (op & UINT64_C(32)) >> 5; // op: A op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; break; } case PPC::LXVPRL: case PPC::LXVPRLL: case PPC::LXVPX: case PPC::STXVPRL: case PPC::STXVPRLL: case PPC::STXVPX: { // op: XTp op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(15)) << 22; Value |= (op & UINT64_C(16)) << 17; // op: A op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: B op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::LXVP: case PPC::STXVP: { // op: XTp op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(15)) << 22; Value |= (op & UINT64_C(16)) << 17; // op: DQ_RA op = getMemRIX16Encoding(MI, 1, Fixups, STI); op &= UINT64_C(131071); op <<= 4; Value |= op; break; } case PPC::PLXVP: case PPC::PSTXVP: { // op: XTp op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(15)) << 22; Value |= (op & UINT64_C(16)) << 17; // op: D_RA op = getMemRI34Encoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::PLXVPpc: case PPC::PSTXVPpc: { // op: XTp op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); Value |= (op & UINT64_C(15)) << 22; Value |= (op & UINT64_C(16)) << 17; // op: D_RA op = getMemRI34PCRelEncoding(MI, 1, Fixups, STI); Value |= (op & UINT64_C(17179803648)) << 16; Value |= (op & UINT64_C(532575944704)) >> 18; Value |= (op & UINT64_C(65535)); break; } case PPC::EFDCMPEQ: case PPC::EFDCMPGT: case PPC::EFDCMPLT: case PPC::EFDTSTEQ: case PPC::EFDTSTGT: case PPC::EFDTSTLT: case PPC::EFSCMPEQ: case PPC::EFSCMPGT: case PPC::EFSCMPLT: case PPC::EFSTSTEQ: case PPC::EFSTSTGT: case PPC::EFSTSTLT: case PPC::EVCMPEQ: case PPC::EVCMPGTS: case PPC::EVCMPGTU: case PPC::EVCMPLTS: case PPC::EVCMPLTU: case PPC::EVFSCMPEQ: case PPC::EVFSCMPGT: case PPC::EVFSCMPLT: case PPC::EVFSTSTEQ: case PPC::EVFSTSTGT: case PPC::EVFSTSTLT: { // op: crD op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(7); op <<= 23; Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; break; } case PPC::EVSEL: { // op: crD op = getMachineOpValue(MI, MI.getOperand(3), Fixups, STI); op &= UINT64_C(7); Value |= op; // op: RA op = getMachineOpValue(MI, MI.getOperand(1), Fixups, STI); op &= UINT64_C(31); op <<= 16; Value |= op; // op: RB op = getMachineOpValue(MI, MI.getOperand(2), Fixups, STI); op &= UINT64_C(31); op <<= 11; Value |= op; // op: RT op = getMachineOpValue(MI, MI.getOperand(0), Fixups, STI); op &= UINT64_C(31); op <<= 21; Value |= op; break; } default: std::string msg; raw_string_ostream Msg(msg); Msg << "Not supported instr: " << MI; report_fatal_error(Msg.str().c_str()); } return Value; }