/*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |* *| |* Target Register Enum Values *| |* *| |* Automatically generated file, do not edit! *| |* *| \*===----------------------------------------------------------------------===*/ #ifdef GET_REGINFO_ENUM #undef GET_REGINFO_ENUM namespace llvm { class MCRegisterClass; extern const MCRegisterClass PPCMCRegisterClasses[]; namespace PPC { enum { NoRegister, BP = 1, CARRY = 2, CTR = 3, FP = 4, LR = 5, RM = 6, SPEFSCR = 7, VRSAVE = 8, XER = 9, ZERO = 10, ACC0 = 11, ACC1 = 12, ACC2 = 13, ACC3 = 14, ACC4 = 15, ACC5 = 16, ACC6 = 17, ACC7 = 18, BP8 = 19, CR0 = 20, CR1 = 21, CR2 = 22, CR3 = 23, CR4 = 24, CR5 = 25, CR6 = 26, CR7 = 27, CTR8 = 28, DMR0 = 29, DMR1 = 30, DMR2 = 31, DMR3 = 32, DMR4 = 33, DMR5 = 34, DMR6 = 35, DMR7 = 36, DMRROW0 = 37, DMRROW1 = 38, DMRROW2 = 39, DMRROW3 = 40, DMRROW4 = 41, DMRROW5 = 42, DMRROW6 = 43, DMRROW7 = 44, DMRROW8 = 45, DMRROW9 = 46, DMRROW10 = 47, DMRROW11 = 48, DMRROW12 = 49, DMRROW13 = 50, DMRROW14 = 51, DMRROW15 = 52, DMRROW16 = 53, DMRROW17 = 54, DMRROW18 = 55, DMRROW19 = 56, DMRROW20 = 57, DMRROW21 = 58, DMRROW22 = 59, DMRROW23 = 60, DMRROW24 = 61, DMRROW25 = 62, DMRROW26 = 63, DMRROW27 = 64, DMRROW28 = 65, DMRROW29 = 66, DMRROW30 = 67, DMRROW31 = 68, DMRROW32 = 69, DMRROW33 = 70, DMRROW34 = 71, DMRROW35 = 72, DMRROW36 = 73, DMRROW37 = 74, DMRROW38 = 75, DMRROW39 = 76, DMRROW40 = 77, DMRROW41 = 78, DMRROW42 = 79, DMRROW43 = 80, DMRROW44 = 81, DMRROW45 = 82, DMRROW46 = 83, DMRROW47 = 84, DMRROW48 = 85, DMRROW49 = 86, DMRROW50 = 87, DMRROW51 = 88, DMRROW52 = 89, DMRROW53 = 90, DMRROW54 = 91, DMRROW55 = 92, DMRROW56 = 93, DMRROW57 = 94, DMRROW58 = 95, DMRROW59 = 96, DMRROW60 = 97, DMRROW61 = 98, DMRROW62 = 99, DMRROW63 = 100, DMRROWp0 = 101, DMRROWp1 = 102, DMRROWp2 = 103, DMRROWp3 = 104, DMRROWp4 = 105, DMRROWp5 = 106, DMRROWp6 = 107, DMRROWp7 = 108, DMRROWp8 = 109, DMRROWp9 = 110, DMRROWp10 = 111, DMRROWp11 = 112, DMRROWp12 = 113, DMRROWp13 = 114, DMRROWp14 = 115, DMRROWp15 = 116, DMRROWp16 = 117, DMRROWp17 = 118, DMRROWp18 = 119, DMRROWp19 = 120, DMRROWp20 = 121, DMRROWp21 = 122, DMRROWp22 = 123, DMRROWp23 = 124, DMRROWp24 = 125, DMRROWp25 = 126, DMRROWp26 = 127, DMRROWp27 = 128, DMRROWp28 = 129, DMRROWp29 = 130, DMRROWp30 = 131, DMRROWp31 = 132, DMRp0 = 133, DMRp1 = 134, DMRp2 = 135, DMRp3 = 136, F0 = 137, F1 = 138, F2 = 139, F3 = 140, F4 = 141, F5 = 142, F6 = 143, F7 = 144, F8 = 145, F9 = 146, F10 = 147, F11 = 148, F12 = 149, F13 = 150, F14 = 151, F15 = 152, F16 = 153, F17 = 154, F18 = 155, F19 = 156, F20 = 157, F21 = 158, F22 = 159, F23 = 160, F24 = 161, F25 = 162, F26 = 163, F27 = 164, F28 = 165, F29 = 166, F30 = 167, F31 = 168, FP8 = 169, LR8 = 170, R0 = 171, R1 = 172, R2 = 173, R3 = 174, R4 = 175, R5 = 176, R6 = 177, R7 = 178, R8 = 179, R9 = 180, R10 = 181, R11 = 182, R12 = 183, R13 = 184, R14 = 185, R15 = 186, R16 = 187, R17 = 188, R18 = 189, R19 = 190, R20 = 191, R21 = 192, R22 = 193, R23 = 194, R24 = 195, R25 = 196, R26 = 197, R27 = 198, R28 = 199, R29 = 200, R30 = 201, R31 = 202, S0 = 203, S1 = 204, S2 = 205, S3 = 206, S4 = 207, S5 = 208, S6 = 209, S7 = 210, S8 = 211, S9 = 212, S10 = 213, S11 = 214, S12 = 215, S13 = 216, S14 = 217, S15 = 218, S16 = 219, S17 = 220, S18 = 221, S19 = 222, S20 = 223, S21 = 224, S22 = 225, S23 = 226, S24 = 227, S25 = 228, S26 = 229, S27 = 230, S28 = 231, S29 = 232, S30 = 233, S31 = 234, UACC0 = 235, UACC1 = 236, UACC2 = 237, UACC3 = 238, UACC4 = 239, UACC5 = 240, UACC6 = 241, UACC7 = 242, V0 = 243, V1 = 244, V2 = 245, V3 = 246, V4 = 247, V5 = 248, V6 = 249, V7 = 250, V8 = 251, V9 = 252, V10 = 253, V11 = 254, V12 = 255, V13 = 256, V14 = 257, V15 = 258, V16 = 259, V17 = 260, V18 = 261, V19 = 262, V20 = 263, V21 = 264, V22 = 265, V23 = 266, V24 = 267, V25 = 268, V26 = 269, V27 = 270, V28 = 271, V29 = 272, V30 = 273, V31 = 274, VF0 = 275, VF1 = 276, VF2 = 277, VF3 = 278, VF4 = 279, VF5 = 280, VF6 = 281, VF7 = 282, VF8 = 283, VF9 = 284, VF10 = 285, VF11 = 286, VF12 = 287, VF13 = 288, VF14 = 289, VF15 = 290, VF16 = 291, VF17 = 292, VF18 = 293, VF19 = 294, VF20 = 295, VF21 = 296, VF22 = 297, VF23 = 298, VF24 = 299, VF25 = 300, VF26 = 301, VF27 = 302, VF28 = 303, VF29 = 304, VF30 = 305, VF31 = 306, VSL0 = 307, VSL1 = 308, VSL2 = 309, VSL3 = 310, VSL4 = 311, VSL5 = 312, VSL6 = 313, VSL7 = 314, VSL8 = 315, VSL9 = 316, VSL10 = 317, VSL11 = 318, VSL12 = 319, VSL13 = 320, VSL14 = 321, VSL15 = 322, VSL16 = 323, VSL17 = 324, VSL18 = 325, VSL19 = 326, VSL20 = 327, VSL21 = 328, VSL22 = 329, VSL23 = 330, VSL24 = 331, VSL25 = 332, VSL26 = 333, VSL27 = 334, VSL28 = 335, VSL29 = 336, VSL30 = 337, VSL31 = 338, VSRp0 = 339, VSRp1 = 340, VSRp2 = 341, VSRp3 = 342, VSRp4 = 343, VSRp5 = 344, VSRp6 = 345, VSRp7 = 346, VSRp8 = 347, VSRp9 = 348, VSRp10 = 349, VSRp11 = 350, VSRp12 = 351, VSRp13 = 352, VSRp14 = 353, VSRp15 = 354, VSRp16 = 355, VSRp17 = 356, VSRp18 = 357, VSRp19 = 358, VSRp20 = 359, VSRp21 = 360, VSRp22 = 361, VSRp23 = 362, VSRp24 = 363, VSRp25 = 364, VSRp26 = 365, VSRp27 = 366, VSRp28 = 367, VSRp29 = 368, VSRp30 = 369, VSRp31 = 370, VSX32 = 371, VSX33 = 372, VSX34 = 373, VSX35 = 374, VSX36 = 375, VSX37 = 376, VSX38 = 377, VSX39 = 378, VSX40 = 379, VSX41 = 380, VSX42 = 381, VSX43 = 382, VSX44 = 383, VSX45 = 384, VSX46 = 385, VSX47 = 386, VSX48 = 387, VSX49 = 388, VSX50 = 389, VSX51 = 390, VSX52 = 391, VSX53 = 392, VSX54 = 393, VSX55 = 394, VSX56 = 395, VSX57 = 396, VSX58 = 397, VSX59 = 398, VSX60 = 399, VSX61 = 400, VSX62 = 401, VSX63 = 402, WACC0 = 403, WACC1 = 404, WACC2 = 405, WACC3 = 406, WACC4 = 407, WACC5 = 408, WACC6 = 409, WACC7 = 410, WACC_HI0 = 411, WACC_HI1 = 412, WACC_HI2 = 413, WACC_HI3 = 414, WACC_HI4 = 415, WACC_HI5 = 416, WACC_HI6 = 417, WACC_HI7 = 418, X0 = 419, X1 = 420, X2 = 421, X3 = 422, X4 = 423, X5 = 424, X6 = 425, X7 = 426, X8 = 427, X9 = 428, X10 = 429, X11 = 430, X12 = 431, X13 = 432, X14 = 433, X15 = 434, X16 = 435, X17 = 436, X18 = 437, X19 = 438, X20 = 439, X21 = 440, X22 = 441, X23 = 442, X24 = 443, X25 = 444, X26 = 445, X27 = 446, X28 = 447, X29 = 448, X30 = 449, X31 = 450, ZERO8 = 451, CR0EQ = 452, CR1EQ = 453, CR2EQ = 454, CR3EQ = 455, CR4EQ = 456, CR5EQ = 457, CR6EQ = 458, CR7EQ = 459, CR0GT = 460, CR1GT = 461, CR2GT = 462, CR3GT = 463, CR4GT = 464, CR5GT = 465, CR6GT = 466, CR7GT = 467, CR0LT = 468, CR1LT = 469, CR2LT = 470, CR3LT = 471, CR4LT = 472, CR5LT = 473, CR6LT = 474, CR7LT = 475, CR0UN = 476, CR1UN = 477, CR2UN = 478, CR3UN = 479, CR4UN = 480, CR5UN = 481, CR6UN = 482, CR7UN = 483, G8p0 = 484, G8p1 = 485, G8p2 = 486, G8p3 = 487, G8p4 = 488, G8p5 = 489, G8p6 = 490, G8p7 = 491, G8p8 = 492, G8p9 = 493, G8p10 = 494, G8p11 = 495, G8p12 = 496, G8p13 = 497, G8p14 = 498, G8p15 = 499, NUM_TARGET_REGS // 500 }; } // end namespace PPC // Register classes namespace PPC { enum { VSSRCRegClassID = 0, GPRCRegClassID = 1, GPRC_NOR0RegClassID = 2, GPRC_and_GPRC_NOR0RegClassID = 3, CRBITRCRegClassID = 4, F4RCRegClassID = 5, CRRCRegClassID = 6, CARRYRCRegClassID = 7, CTRRCRegClassID = 8, LRRCRegClassID = 9, VRSAVERCRegClassID = 10, SPILLTOVSRRCRegClassID = 11, VSFRCRegClassID = 12, G8RCRegClassID = 13, G8RC_NOX0RegClassID = 14, SPILLTOVSRRC_and_VSFRCRegClassID = 15, G8RC_and_G8RC_NOX0RegClassID = 16, F8RCRegClassID = 17, SPERCRegClassID = 18, VFRCRegClassID = 19, SPERC_with_sub_32_in_GPRC_NOR0RegClassID = 20, SPILLTOVSRRC_and_VFRCRegClassID = 21, SPILLTOVSRRC_and_F4RCRegClassID = 22, CTRRC8RegClassID = 23, LR8RCRegClassID = 24, DMRROWRCRegClassID = 25, VSRCRegClassID = 26, VSRC_with_sub_64_in_SPILLTOVSRRCRegClassID = 27, VRRCRegClassID = 28, VSLRCRegClassID = 29, VRRC_with_sub_64_in_SPILLTOVSRRCRegClassID = 30, G8pRCRegClassID = 31, G8pRC_with_sub_32_in_GPRC_NOR0RegClassID = 32, VSLRC_with_sub_64_in_SPILLTOVSRRCRegClassID = 33, DMRROWpRCRegClassID = 34, VSRpRCRegClassID = 35, VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClassID = 36, VSRpRC_with_sub_64_in_F4RCRegClassID = 37, VSRpRC_with_sub_64_in_VFRCRegClassID = 38, VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCRegClassID = 39, VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCRegClassID = 40, ACCRCRegClassID = 41, UACCRCRegClassID = 42, WACCRCRegClassID = 43, WACC_HIRCRegClassID = 44, ACCRC_with_sub_64_in_SPILLTOVSRRCRegClassID = 45, UACCRC_with_sub_64_in_SPILLTOVSRRCRegClassID = 46, ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClassID = 47, UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClassID = 48, DMRRCRegClassID = 49, DMRpRCRegClassID = 50, }; } // end namespace PPC // Subregister indices namespace PPC { enum : uint16_t { NoSubRegister, sub_32, // 1 sub_64, // 2 sub_dmr0, // 3 sub_dmr1, // 4 sub_dmrrow0, // 5 sub_dmrrow1, // 6 sub_dmrrowp0, // 7 sub_dmrrowp1, // 8 sub_eq, // 9 sub_gp8_x0, // 10 sub_gp8_x1, // 11 sub_gt, // 12 sub_lt, // 13 sub_pair0, // 14 sub_pair1, // 15 sub_un, // 16 sub_vsx0, // 17 sub_vsx1, // 18 sub_wacc_hi, // 19 sub_wacc_lo, // 20 sub_vsx1_then_sub_64, // 21 sub_pair1_then_sub_64, // 22 sub_pair1_then_sub_vsx0, // 23 sub_pair1_then_sub_vsx1, // 24 sub_pair1_then_sub_vsx1_then_sub_64, // 25 sub_dmrrowp1_then_sub_dmrrow0, // 26 sub_dmrrowp1_then_sub_dmrrow1, // 27 sub_wacc_hi_then_sub_dmrrow0, // 28 sub_wacc_hi_then_sub_dmrrow1, // 29 sub_wacc_hi_then_sub_dmrrowp0, // 30 sub_wacc_hi_then_sub_dmrrowp1, // 31 sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, // 32 sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, // 33 sub_dmr1_then_sub_dmrrow0, // 34 sub_dmr1_then_sub_dmrrow1, // 35 sub_dmr1_then_sub_dmrrowp0, // 36 sub_dmr1_then_sub_dmrrowp1, // 37 sub_dmr1_then_sub_wacc_hi, // 38 sub_dmr1_then_sub_wacc_lo, // 39 sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0, // 40 sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1, // 41 sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0, // 42 sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1, // 43 sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0, // 44 sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1, // 45 sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, // 46 sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, // 47 sub_gp8_x1_then_sub_32, // 48 NUM_TARGET_SUBREGS }; } // end namespace PPC // Register pressure sets enum. namespace PPC { enum RegisterPressureSets { CARRYRC = 0, VRSAVERC = 1, SPILLTOVSRRC_and_F4RC = 2, SPILLTOVSRRC_and_VFRC = 3, CRBITRC = 4, F4RC = 5, VFRC = 6, WACCRC = 7, WACC_HIRC = 8, GPRC = 9, SPILLTOVSRRC_and_VSFRC = 10, SPILLTOVSRRC_and_VSFRC_with_VFRC = 11, F4RC_with_SPILLTOVSRRC_and_VSFRC = 12, VSSRC = 13, DMRROWRC = 14, SPILLTOVSRRC = 15, SPILLTOVSRRC_with_SPILLTOVSRRC_and_F4RC = 16, SPILLTOVSRRC_with_VFRC = 17, F4RC_with_SPILLTOVSRRC = 18, VSSRC_with_SPILLTOVSRRC = 19, }; } // end namespace PPC } // end namespace llvm #endif // GET_REGINFO_ENUM /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |* *| |* MC Register Information *| |* *| |* Automatically generated file, do not edit! *| |* *| \*===----------------------------------------------------------------------===*/ #ifdef GET_REGINFO_MC_DESC #undef GET_REGINFO_MC_DESC namespace llvm { extern const MCPhysReg PPCRegDiffLists[] = { /* 0 */ 0, 0, /* 2 */ 74, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, /* 19 */ 90, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, /* 36 */ 106, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, /* 53 */ 122, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, /* 70 */ 65378, 1, 1, 1, 1, 1, 1, 1, 0, /* 79 */ 62326, 1, 1, 1, 0, /* 84 */ 62386, 1, 1, 1, 0, /* 89 */ 64605, 1, 1, 1, 0, /* 94 */ 65497, 1, 1, 1, 0, /* 99 */ 65501, 1, 1, 1, 0, /* 104 */ 64707, 1, 0, /* 107 */ 64867, 1, 0, /* 110 */ 64997, 1, 0, /* 113 */ 65408, 1, 0, /* 116 */ 65472, 1, 0, /* 119 */ 65234, 65472, 1, 64, 65473, 1, 0, /* 126 */ 65474, 1, 0, /* 129 */ 374, 65234, 65472, 1, 64, 65473, 1, 371, 65228, 65474, 1, 62, 65475, 1, 0, /* 144 */ 65476, 1, 0, /* 147 */ 65237, 65476, 1, 60, 65477, 1, 0, /* 154 */ 65478, 1, 0, /* 157 */ 65432, 374, 65234, 65472, 1, 64, 65473, 1, 371, 65228, 65474, 1, 62, 65475, 1, 65522, 374, 65237, 65476, 1, 60, 65477, 1, 364, 65231, 65478, 1, 58, 65479, 1, 0, /* 188 */ 65480, 1, 0, /* 191 */ 65240, 65480, 1, 56, 65481, 1, 0, /* 198 */ 65482, 1, 0, /* 201 */ 374, 65240, 65480, 1, 56, 65481, 1, 357, 65234, 65482, 1, 54, 65483, 1, 0, /* 216 */ 65484, 1, 0, /* 219 */ 65243, 65484, 1, 52, 65485, 1, 0, /* 226 */ 65486, 1, 0, /* 229 */ 65433, 374, 65240, 65480, 1, 56, 65481, 1, 357, 65234, 65482, 1, 54, 65483, 1, 65508, 374, 65243, 65484, 1, 52, 65485, 1, 350, 65237, 65486, 1, 50, 65487, 1, 0, /* 260 */ 65488, 1, 0, /* 263 */ 65246, 65488, 1, 48, 65489, 1, 0, /* 270 */ 65490, 1, 0, /* 273 */ 374, 65246, 65488, 1, 48, 65489, 1, 343, 65240, 65490, 1, 46, 65491, 1, 0, /* 288 */ 65492, 1, 0, /* 291 */ 65249, 65492, 1, 44, 65493, 1, 0, /* 298 */ 65494, 1, 0, /* 301 */ 65434, 374, 65246, 65488, 1, 48, 65489, 1, 343, 65240, 65490, 1, 46, 65491, 1, 65494, 374, 65249, 65492, 1, 44, 65493, 1, 336, 65243, 65494, 1, 42, 65495, 1, 0, /* 332 */ 65496, 1, 0, /* 335 */ 65252, 65496, 1, 40, 65497, 1, 0, /* 342 */ 65498, 1, 0, /* 345 */ 374, 65252, 65496, 1, 40, 65497, 1, 329, 65246, 65498, 1, 38, 65499, 1, 0, /* 360 */ 65500, 1, 0, /* 363 */ 65255, 65500, 1, 36, 65501, 1, 0, /* 370 */ 65502, 1, 0, /* 373 */ 65435, 374, 65252, 65496, 1, 40, 65497, 1, 329, 65246, 65498, 1, 38, 65499, 1, 65480, 374, 65255, 65500, 1, 36, 65501, 1, 322, 65249, 65502, 1, 34, 65503, 1, 0, /* 404 */ 3, 0, /* 406 */ 8, 0, /* 408 */ 18, 0, /* 410 */ 448, 65528, 65528, 24, 0, /* 415 */ 65424, 32, 65505, 32, 0, /* 420 */ 65425, 32, 65505, 32, 0, /* 425 */ 65426, 32, 65505, 32, 0, /* 430 */ 65427, 32, 65505, 32, 0, /* 435 */ 65428, 32, 65505, 32, 0, /* 440 */ 65429, 32, 65505, 32, 0, /* 445 */ 65430, 32, 65505, 32, 0, /* 450 */ 65431, 32, 65505, 32, 0, /* 455 */ 65432, 32, 65505, 32, 0, /* 460 */ 65433, 32, 65505, 32, 0, /* 465 */ 65434, 32, 65505, 32, 0, /* 470 */ 65435, 32, 65505, 32, 0, /* 475 */ 65436, 32, 65505, 32, 0, /* 480 */ 65437, 32, 65505, 32, 0, /* 485 */ 65438, 32, 65505, 32, 0, /* 490 */ 65439, 32, 65505, 32, 0, /* 495 */ 37, 0, /* 497 */ 32, 216, 49, 0, /* 501 */ 32, 216, 50, 0, /* 505 */ 32, 216, 51, 0, /* 509 */ 32, 216, 52, 0, /* 513 */ 32, 216, 53, 0, /* 517 */ 32, 216, 54, 0, /* 521 */ 32, 216, 55, 0, /* 525 */ 32, 216, 56, 0, /* 529 */ 32, 216, 57, 0, /* 533 */ 32, 216, 58, 0, /* 537 */ 32, 216, 59, 0, /* 541 */ 32, 216, 60, 0, /* 545 */ 32, 216, 61, 0, /* 549 */ 32, 216, 62, 0, /* 553 */ 32, 216, 63, 0, /* 557 */ 32, 216, 64, 0, /* 561 */ 32, 216, 65, 0, /* 565 */ 73, 0, /* 567 */ 65504, 96, 0, /* 570 */ 65504, 97, 0, /* 573 */ 65504, 98, 0, /* 576 */ 65504, 99, 0, /* 579 */ 32, 286, 65154, 100, 0, /* 584 */ 33, 286, 65154, 100, 0, /* 589 */ 33, 287, 65154, 100, 0, /* 594 */ 34, 287, 65154, 100, 0, /* 599 */ 34, 280, 65162, 100, 0, /* 604 */ 35, 280, 65162, 100, 0, /* 609 */ 35, 281, 65162, 100, 0, /* 614 */ 36, 281, 65162, 100, 0, /* 619 */ 65504, 100, 0, /* 622 */ 36, 289, 65154, 101, 0, /* 627 */ 37, 289, 65154, 101, 0, /* 632 */ 37, 290, 65154, 101, 0, /* 637 */ 38, 290, 65154, 101, 0, /* 642 */ 40, 292, 65154, 101, 0, /* 647 */ 41, 292, 65154, 101, 0, /* 652 */ 41, 293, 65154, 101, 0, /* 657 */ 42, 293, 65154, 101, 0, /* 662 */ 38, 283, 65162, 101, 0, /* 667 */ 39, 283, 65162, 101, 0, /* 672 */ 39, 284, 65162, 101, 0, /* 677 */ 40, 284, 65162, 101, 0, /* 682 */ 42, 286, 65162, 101, 0, /* 687 */ 43, 286, 65162, 101, 0, /* 692 */ 43, 287, 65162, 101, 0, /* 697 */ 44, 287, 65162, 101, 0, /* 702 */ 65504, 101, 0, /* 705 */ 44, 295, 65154, 102, 0, /* 710 */ 45, 295, 65154, 102, 0, /* 715 */ 45, 296, 65154, 102, 0, /* 720 */ 46, 296, 65154, 102, 0, /* 725 */ 48, 298, 65154, 102, 0, /* 730 */ 49, 298, 65154, 102, 0, /* 735 */ 49, 299, 65154, 102, 0, /* 740 */ 50, 299, 65154, 102, 0, /* 745 */ 46, 289, 65162, 102, 0, /* 750 */ 47, 289, 65162, 102, 0, /* 755 */ 47, 290, 65162, 102, 0, /* 760 */ 48, 290, 65162, 102, 0, /* 765 */ 50, 292, 65162, 102, 0, /* 770 */ 51, 292, 65162, 102, 0, /* 775 */ 51, 293, 65162, 102, 0, /* 780 */ 52, 293, 65162, 102, 0, /* 785 */ 65504, 102, 0, /* 788 */ 52, 301, 65154, 103, 0, /* 793 */ 53, 301, 65154, 103, 0, /* 798 */ 53, 302, 65154, 103, 0, /* 803 */ 54, 302, 65154, 103, 0, /* 808 */ 56, 304, 65154, 103, 0, /* 813 */ 57, 304, 65154, 103, 0, /* 818 */ 57, 305, 65154, 103, 0, /* 823 */ 58, 305, 65154, 103, 0, /* 828 */ 54, 295, 65162, 103, 0, /* 833 */ 55, 295, 65162, 103, 0, /* 838 */ 55, 296, 65162, 103, 0, /* 843 */ 56, 296, 65162, 103, 0, /* 848 */ 58, 298, 65162, 103, 0, /* 853 */ 59, 298, 65162, 103, 0, /* 858 */ 59, 299, 65162, 103, 0, /* 863 */ 60, 299, 65162, 103, 0, /* 868 */ 65504, 103, 0, /* 871 */ 60, 307, 65154, 104, 0, /* 876 */ 61, 307, 65154, 104, 0, /* 881 */ 61, 308, 65154, 104, 0, /* 886 */ 62, 308, 65154, 104, 0, /* 891 */ 62, 301, 65162, 104, 0, /* 896 */ 63, 301, 65162, 104, 0, /* 901 */ 63, 302, 65162, 104, 0, /* 906 */ 64, 302, 65162, 104, 0, /* 911 */ 65504, 104, 0, /* 914 */ 65504, 105, 0, /* 917 */ 65504, 106, 0, /* 920 */ 65504, 107, 0, /* 923 */ 65504, 108, 0, /* 926 */ 65504, 109, 0, /* 929 */ 65504, 110, 0, /* 932 */ 65504, 111, 0, /* 935 */ 65504, 112, 0, /* 938 */ 165, 0, /* 940 */ 170, 16, 65200, 224, 0, /* 945 */ 170, 17, 65200, 224, 0, /* 950 */ 170, 17, 65201, 224, 0, /* 955 */ 170, 18, 65201, 224, 0, /* 960 */ 170, 19, 65201, 224, 0, /* 965 */ 170, 19, 65202, 224, 0, /* 970 */ 170, 20, 65202, 224, 0, /* 975 */ 170, 21, 65202, 224, 0, /* 980 */ 170, 21, 65203, 224, 0, /* 985 */ 170, 22, 65203, 224, 0, /* 990 */ 170, 23, 65203, 224, 0, /* 995 */ 170, 23, 65204, 224, 0, /* 1000 */ 170, 24, 65204, 224, 0, /* 1005 */ 170, 25, 65204, 224, 0, /* 1010 */ 170, 25, 65205, 224, 0, /* 1015 */ 170, 26, 65205, 224, 0, /* 1020 */ 170, 27, 65205, 224, 0, /* 1025 */ 170, 27, 65206, 224, 0, /* 1030 */ 170, 28, 65206, 224, 0, /* 1035 */ 170, 29, 65206, 224, 0, /* 1040 */ 170, 29, 65207, 224, 0, /* 1045 */ 170, 30, 65207, 224, 0, /* 1050 */ 170, 31, 65207, 224, 0, /* 1055 */ 170, 31, 65208, 224, 0, /* 1060 */ 170, 32, 65208, 224, 0, /* 1065 */ 441, 0, /* 1067 */ 63676, 0, /* 1069 */ 63705, 0, /* 1071 */ 63738, 0, /* 1073 */ 63771, 0, /* 1075 */ 65080, 0, /* 1077 */ 65088, 0, /* 1079 */ 65095, 0, /* 1081 */ 65096, 0, /* 1083 */ 65104, 0, /* 1085 */ 65238, 0, /* 1087 */ 65256, 0, /* 1089 */ 65471, 65288, 249, 65288, 0, /* 1094 */ 65472, 65288, 249, 65288, 0, /* 1099 */ 65473, 65288, 249, 65288, 0, /* 1104 */ 65474, 65288, 249, 65288, 0, /* 1109 */ 65475, 65288, 249, 65288, 0, /* 1114 */ 65476, 65288, 249, 65288, 0, /* 1119 */ 65477, 65288, 249, 65288, 0, /* 1124 */ 65478, 65288, 249, 65288, 0, /* 1129 */ 65479, 65288, 249, 65288, 0, /* 1134 */ 65480, 65288, 249, 65288, 0, /* 1139 */ 65481, 65288, 249, 65288, 0, /* 1144 */ 65482, 65288, 249, 65288, 0, /* 1149 */ 65483, 65288, 249, 65288, 0, /* 1154 */ 65484, 65288, 249, 65288, 0, /* 1159 */ 65485, 65288, 249, 65288, 0, /* 1164 */ 65486, 65288, 249, 65288, 0, /* 1169 */ 65504, 65366, 171, 65366, 0, /* 1174 */ 104, 65504, 65366, 171, 65366, 202, 65505, 65366, 171, 65366, 0, /* 1185 */ 328, 65504, 65366, 171, 65366, 202, 65505, 65366, 171, 65366, 0, /* 1196 */ 65506, 65366, 171, 65366, 0, /* 1201 */ 105, 65506, 65366, 171, 65366, 200, 65507, 65366, 171, 65366, 0, /* 1212 */ 329, 65506, 65366, 171, 65366, 200, 65507, 65366, 171, 65366, 0, /* 1223 */ 65508, 65366, 171, 65366, 0, /* 1228 */ 106, 65508, 65366, 171, 65366, 198, 65509, 65366, 171, 65366, 0, /* 1239 */ 330, 65508, 65366, 171, 65366, 198, 65509, 65366, 171, 65366, 0, /* 1250 */ 65510, 65366, 171, 65366, 0, /* 1255 */ 107, 65510, 65366, 171, 65366, 196, 65511, 65366, 171, 65366, 0, /* 1266 */ 331, 65510, 65366, 171, 65366, 196, 65511, 65366, 171, 65366, 0, /* 1277 */ 65512, 65366, 171, 65366, 0, /* 1282 */ 108, 65512, 65366, 171, 65366, 194, 65513, 65366, 171, 65366, 0, /* 1293 */ 332, 65512, 65366, 171, 65366, 194, 65513, 65366, 171, 65366, 0, /* 1304 */ 65514, 65366, 171, 65366, 0, /* 1309 */ 109, 65514, 65366, 171, 65366, 192, 65515, 65366, 171, 65366, 0, /* 1320 */ 333, 65514, 65366, 171, 65366, 192, 65515, 65366, 171, 65366, 0, /* 1331 */ 65516, 65366, 171, 65366, 0, /* 1336 */ 110, 65516, 65366, 171, 65366, 190, 65517, 65366, 171, 65366, 0, /* 1347 */ 334, 65516, 65366, 171, 65366, 190, 65517, 65366, 171, 65366, 0, /* 1358 */ 65518, 65366, 171, 65366, 0, /* 1363 */ 111, 65518, 65366, 171, 65366, 188, 65519, 65366, 171, 65366, 0, /* 1374 */ 335, 65518, 65366, 171, 65366, 188, 65519, 65366, 171, 65366, 0, /* 1385 */ 65368, 0, /* 1387 */ 65371, 0, /* 1389 */ 65408, 0, /* 1391 */ 65432, 0, /* 1393 */ 65464, 0, /* 1395 */ 65472, 0, /* 1397 */ 65474, 0, /* 1399 */ 65504, 0, /* 1401 */ 65518, 0, /* 1403 */ 65535, 0, }; extern const LaneBitmask PPCLaneMaskLists[] = { /* 0 */ LaneBitmask(0x0000000000000000), LaneBitmask::getAll(), /* 2 */ LaneBitmask(0x0000000000000001), LaneBitmask::getAll(), /* 4 */ LaneBitmask(0x0000000000000002), LaneBitmask::getAll(), /* 6 */ LaneBitmask(0x0000000000000004), LaneBitmask(0x0000000000000008), LaneBitmask::getAll(), /* 9 */ LaneBitmask(0x0000000000000040), LaneBitmask(0x0000000000000020), LaneBitmask(0x0000000000000010), LaneBitmask(0x0000000000000080), LaneBitmask::getAll(), /* 14 */ LaneBitmask(0x0000000000000002), LaneBitmask(0x0000000000000100), LaneBitmask::getAll(), /* 17 */ LaneBitmask(0x0000000000000002), LaneBitmask(0x0000000000000100), LaneBitmask(0x0000000000000200), LaneBitmask(0x0000000000000400), LaneBitmask::getAll(), /* 22 */ LaneBitmask(0x0000000000000004), LaneBitmask(0x0000000000000008), LaneBitmask(0x0000000000000800), LaneBitmask(0x0000000000001000), LaneBitmask::getAll(), /* 27 */ LaneBitmask(0x0000000000000004), LaneBitmask(0x0000000000000008), LaneBitmask(0x0000000000000800), LaneBitmask(0x0000000000001000), LaneBitmask(0x0000000000002000), LaneBitmask(0x0000000000004000), LaneBitmask(0x0000000000008000), LaneBitmask(0x0000000000010000), LaneBitmask::getAll(), /* 36 */ LaneBitmask(0x0000000000000004), LaneBitmask(0x0000000000000008), LaneBitmask(0x0000000000000800), LaneBitmask(0x0000000000001000), LaneBitmask(0x0000000000002000), LaneBitmask(0x0000000000004000), LaneBitmask(0x0000000000008000), LaneBitmask(0x0000000000010000), LaneBitmask(0x0000000000020000), LaneBitmask(0x0000000000040000), LaneBitmask(0x0000000000080000), LaneBitmask(0x0000000000100000), LaneBitmask(0x0000000000200000), LaneBitmask(0x0000000000400000), LaneBitmask(0x0000000000800000), LaneBitmask(0x0000000001000000), LaneBitmask::getAll(), /* 53 */ LaneBitmask(0x0000000000000001), LaneBitmask(0x0000000002000000), LaneBitmask::getAll(), }; extern const uint16_t PPCSubRegIdxLists[] = { /* 0 */ 1, 0, /* 2 */ 2, 0, /* 4 */ 5, 6, 0, /* 7 */ 13, 12, 9, 16, 0, /* 12 */ 17, 2, 18, 21, 0, /* 17 */ 14, 17, 2, 18, 21, 15, 23, 22, 24, 25, 0, /* 28 */ 7, 5, 6, 8, 26, 27, 0, /* 35 */ 20, 7, 5, 6, 8, 26, 27, 19, 30, 28, 29, 31, 32, 33, 0, /* 50 */ 3, 20, 7, 5, 6, 8, 26, 27, 19, 30, 28, 29, 31, 32, 33, 4, 39, 36, 34, 35, 37, 40, 41, 38, 44, 42, 43, 45, 46, 47, 0, /* 81 */ 10, 1, 11, 48, 0, }; extern const MCRegisterInfo::SubRegCoveredBits PPCSubRegIdxRanges[] = { { 65535, 65535 }, { 0, 32 }, // sub_32 { 0, 64 }, // sub_64 { 0, 1024 }, // sub_dmr0 { 1024, 1024 }, // sub_dmr1 { 0, 128 }, // sub_dmrrow0 { 128, 128 }, // sub_dmrrow1 { 0, 256 }, // sub_dmrrowp0 { 256, 256 }, // sub_dmrrowp1 { 2, 1 }, // sub_eq { 0, 64 }, // sub_gp8_x0 { 64, 64 }, // sub_gp8_x1 { 1, 1 }, // sub_gt { 0, 1 }, // sub_lt { 0, 256 }, // sub_pair0 { 256, 256 }, // sub_pair1 { 3, 1 }, // sub_un { 0, 128 }, // sub_vsx0 { 128, 128 }, // sub_vsx1 { 512, 512 }, // sub_wacc_hi { 0, 512 }, // sub_wacc_lo { 128, 64 }, // sub_vsx1_then_sub_64 { 256, 64 }, // sub_pair1_then_sub_64 { 256, 128 }, // sub_pair1_then_sub_vsx0 { 384, 128 }, // sub_pair1_then_sub_vsx1 { 384, 64 }, // sub_pair1_then_sub_vsx1_then_sub_64 { 256, 128 }, // sub_dmrrowp1_then_sub_dmrrow0 { 384, 128 }, // sub_dmrrowp1_then_sub_dmrrow1 { 512, 128 }, // sub_wacc_hi_then_sub_dmrrow0 { 640, 128 }, // sub_wacc_hi_then_sub_dmrrow1 { 512, 256 }, // sub_wacc_hi_then_sub_dmrrowp0 { 768, 256 }, // sub_wacc_hi_then_sub_dmrrowp1 { 768, 128 }, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 { 896, 128 }, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 { 1024, 128 }, // sub_dmr1_then_sub_dmrrow0 { 1152, 128 }, // sub_dmr1_then_sub_dmrrow1 { 1024, 256 }, // sub_dmr1_then_sub_dmrrowp0 { 1280, 256 }, // sub_dmr1_then_sub_dmrrowp1 { 1536, 512 }, // sub_dmr1_then_sub_wacc_hi { 1024, 512 }, // sub_dmr1_then_sub_wacc_lo { 1280, 128 }, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 { 1408, 128 }, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 { 1536, 128 }, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 { 1664, 128 }, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 { 1536, 256 }, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 { 1792, 256 }, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 { 1792, 128 }, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 { 1920, 128 }, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 { 64, 32 }, // sub_gp8_x1_then_sub_32 }; #ifdef __GNUC__ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Woverlength-strings" #endif extern const char PPCRegStrings[] = { /* 0 */ "VF10\0" /* 5 */ "VSL10\0" /* 11 */ "R10\0" /* 15 */ "S10\0" /* 19 */ "V10\0" /* 23 */ "DMRROW10\0" /* 32 */ "X10\0" /* 36 */ "G8p10\0" /* 42 */ "VSRp10\0" /* 49 */ "DMRROWp10\0" /* 59 */ "VF20\0" /* 64 */ "VSL20\0" /* 70 */ "R20\0" /* 74 */ "S20\0" /* 78 */ "V20\0" /* 82 */ "DMRROW20\0" /* 91 */ "X20\0" /* 95 */ "VSRp20\0" /* 102 */ "DMRROWp20\0" /* 112 */ "VF30\0" /* 117 */ "VSL30\0" /* 123 */ "R30\0" /* 127 */ "S30\0" /* 131 */ "V30\0" /* 135 */ "DMRROW30\0" /* 144 */ "X30\0" /* 148 */ "VSRp30\0" /* 155 */ "DMRROWp30\0" /* 165 */ "DMRROW40\0" /* 174 */ "VSX40\0" /* 180 */ "DMRROW50\0" /* 189 */ "VSX50\0" /* 195 */ "DMRROW60\0" /* 204 */ "VSX60\0" /* 210 */ "UACC0\0" /* 216 */ "WACC0\0" /* 222 */ "VF0\0" /* 226 */ "WACC_HI0\0" /* 235 */ "VSL0\0" /* 240 */ "CR0\0" /* 244 */ "DMR0\0" /* 249 */ "S0\0" /* 252 */ "V0\0" /* 255 */ "DMRROW0\0" /* 263 */ "X0\0" /* 266 */ "G8p0\0" /* 271 */ "DMRp0\0" /* 277 */ "VSRp0\0" /* 283 */ "DMRROWp0\0" /* 292 */ "VF11\0" /* 297 */ "VSL11\0" /* 303 */ "R11\0" /* 307 */ "S11\0" /* 311 */ "V11\0" /* 315 */ "DMRROW11\0" /* 324 */ "X11\0" /* 328 */ "G8p11\0" /* 334 */ "VSRp11\0" /* 341 */ "DMRROWp11\0" /* 351 */ "VF21\0" /* 356 */ "VSL21\0" /* 362 */ "R21\0" /* 366 */ "S21\0" /* 370 */ "V21\0" /* 374 */ "DMRROW21\0" /* 383 */ "X21\0" /* 387 */ "VSRp21\0" /* 394 */ "DMRROWp21\0" /* 404 */ "VF31\0" /* 409 */ "VSL31\0" /* 415 */ "R31\0" /* 419 */ "S31\0" /* 423 */ "V31\0" /* 427 */ "DMRROW31\0" /* 436 */ "X31\0" /* 440 */ "VSRp31\0" /* 447 */ "DMRROWp31\0" /* 457 */ "DMRROW41\0" /* 466 */ "VSX41\0" /* 472 */ "DMRROW51\0" /* 481 */ "VSX51\0" /* 487 */ "DMRROW61\0" /* 496 */ "VSX61\0" /* 502 */ "UACC1\0" /* 508 */ "WACC1\0" /* 514 */ "VF1\0" /* 518 */ "WACC_HI1\0" /* 527 */ "VSL1\0" /* 532 */ "CR1\0" /* 536 */ "DMR1\0" /* 541 */ "S1\0" /* 544 */ "V1\0" /* 547 */ "DMRROW1\0" /* 555 */ "X1\0" /* 558 */ "G8p1\0" /* 563 */ "DMRp1\0" /* 569 */ "VSRp1\0" /* 575 */ "DMRROWp1\0" /* 584 */ "VF12\0" /* 589 */ "VSL12\0" /* 595 */ "R12\0" /* 599 */ "S12\0" /* 603 */ "V12\0" /* 607 */ "DMRROW12\0" /* 616 */ "X12\0" /* 620 */ "G8p12\0" /* 626 */ "VSRp12\0" /* 633 */ "DMRROWp12\0" /* 643 */ "VF22\0" /* 648 */ "VSL22\0" /* 654 */ "R22\0" /* 658 */ "S22\0" /* 662 */ "V22\0" /* 666 */ "DMRROW22\0" /* 675 */ "X22\0" /* 679 */ "VSRp22\0" /* 686 */ "DMRROWp22\0" /* 696 */ "DMRROW32\0" /* 705 */ "VSX32\0" /* 711 */ "DMRROW42\0" /* 720 */ "VSX42\0" /* 726 */ "DMRROW52\0" /* 735 */ "VSX52\0" /* 741 */ "DMRROW62\0" /* 750 */ "VSX62\0" /* 756 */ "UACC2\0" /* 762 */ "WACC2\0" /* 768 */ "VF2\0" /* 772 */ "WACC_HI2\0" /* 781 */ "VSL2\0" /* 786 */ "CR2\0" /* 790 */ "DMR2\0" /* 795 */ "S2\0" /* 798 */ "V2\0" /* 801 */ "DMRROW2\0" /* 809 */ "X2\0" /* 812 */ "G8p2\0" /* 817 */ "DMRp2\0" /* 823 */ "VSRp2\0" /* 829 */ "DMRROWp2\0" /* 838 */ "VF13\0" /* 843 */ "VSL13\0" /* 849 */ "R13\0" /* 853 */ "S13\0" /* 857 */ "V13\0" /* 861 */ "DMRROW13\0" /* 870 */ "X13\0" /* 874 */ "G8p13\0" /* 880 */ "VSRp13\0" /* 887 */ "DMRROWp13\0" /* 897 */ "VF23\0" /* 902 */ "VSL23\0" /* 908 */ "R23\0" /* 912 */ "S23\0" /* 916 */ "V23\0" /* 920 */ "DMRROW23\0" /* 929 */ "X23\0" /* 933 */ "VSRp23\0" /* 940 */ "DMRROWp23\0" /* 950 */ "DMRROW33\0" /* 959 */ "VSX33\0" /* 965 */ "DMRROW43\0" /* 974 */ "VSX43\0" /* 980 */ "DMRROW53\0" /* 989 */ "VSX53\0" /* 995 */ "DMRROW63\0" /* 1004 */ "VSX63\0" /* 1010 */ "UACC3\0" /* 1016 */ "WACC3\0" /* 1022 */ "VF3\0" /* 1026 */ "WACC_HI3\0" /* 1035 */ "VSL3\0" /* 1040 */ "CR3\0" /* 1044 */ "DMR3\0" /* 1049 */ "S3\0" /* 1052 */ "V3\0" /* 1055 */ "DMRROW3\0" /* 1063 */ "X3\0" /* 1066 */ "G8p3\0" /* 1071 */ "DMRp3\0" /* 1077 */ "VSRp3\0" /* 1083 */ "DMRROWp3\0" /* 1092 */ "VF14\0" /* 1097 */ "VSL14\0" /* 1103 */ "R14\0" /* 1107 */ "S14\0" /* 1111 */ "V14\0" /* 1115 */ "DMRROW14\0" /* 1124 */ "X14\0" /* 1128 */ "G8p14\0" /* 1134 */ "VSRp14\0" /* 1141 */ "DMRROWp14\0" /* 1151 */ "VF24\0" /* 1156 */ "VSL24\0" /* 1162 */ "R24\0" /* 1166 */ "S24\0" /* 1170 */ "V24\0" /* 1174 */ "DMRROW24\0" /* 1183 */ "X24\0" /* 1187 */ "VSRp24\0" /* 1194 */ "DMRROWp24\0" /* 1204 */ "DMRROW34\0" /* 1213 */ "VSX34\0" /* 1219 */ "DMRROW44\0" /* 1228 */ "VSX44\0" /* 1234 */ "DMRROW54\0" /* 1243 */ "VSX54\0" /* 1249 */ "UACC4\0" /* 1255 */ "WACC4\0" /* 1261 */ "VF4\0" /* 1265 */ "WACC_HI4\0" /* 1274 */ "VSL4\0" /* 1279 */ "CR4\0" /* 1283 */ "DMR4\0" /* 1288 */ "S4\0" /* 1291 */ "V4\0" /* 1294 */ "DMRROW4\0" /* 1302 */ "X4\0" /* 1305 */ "G8p4\0" /* 1310 */ "VSRp4\0" /* 1316 */ "DMRROWp4\0" /* 1325 */ "VF15\0" /* 1330 */ "VSL15\0" /* 1336 */ "R15\0" /* 1340 */ "S15\0" /* 1344 */ "V15\0" /* 1348 */ "DMRROW15\0" /* 1357 */ "X15\0" /* 1361 */ "G8p15\0" /* 1367 */ "VSRp15\0" /* 1374 */ "DMRROWp15\0" /* 1384 */ "VF25\0" /* 1389 */ "VSL25\0" /* 1395 */ "R25\0" /* 1399 */ "S25\0" /* 1403 */ "V25\0" /* 1407 */ "DMRROW25\0" /* 1416 */ "X25\0" /* 1420 */ "VSRp25\0" /* 1427 */ "DMRROWp25\0" /* 1437 */ "DMRROW35\0" /* 1446 */ "VSX35\0" /* 1452 */ "DMRROW45\0" /* 1461 */ "VSX45\0" /* 1467 */ "DMRROW55\0" /* 1476 */ "VSX55\0" /* 1482 */ "UACC5\0" /* 1488 */ "WACC5\0" /* 1494 */ "VF5\0" /* 1498 */ "WACC_HI5\0" /* 1507 */ "VSL5\0" /* 1512 */ "CR5\0" /* 1516 */ "DMR5\0" /* 1521 */ "S5\0" /* 1524 */ "V5\0" /* 1527 */ "DMRROW5\0" /* 1535 */ "X5\0" /* 1538 */ "G8p5\0" /* 1543 */ "VSRp5\0" /* 1549 */ "DMRROWp5\0" /* 1558 */ "VF16\0" /* 1563 */ "VSL16\0" /* 1569 */ "R16\0" /* 1573 */ "S16\0" /* 1577 */ "V16\0" /* 1581 */ "DMRROW16\0" /* 1590 */ "X16\0" /* 1594 */ "VSRp16\0" /* 1601 */ "DMRROWp16\0" /* 1611 */ "VF26\0" /* 1616 */ "VSL26\0" /* 1622 */ "R26\0" /* 1626 */ "S26\0" /* 1630 */ "V26\0" /* 1634 */ "DMRROW26\0" /* 1643 */ "X26\0" /* 1647 */ "VSRp26\0" /* 1654 */ "DMRROWp26\0" /* 1664 */ "DMRROW36\0" /* 1673 */ "VSX36\0" /* 1679 */ "DMRROW46\0" /* 1688 */ "VSX46\0" /* 1694 */ "DMRROW56\0" /* 1703 */ "VSX56\0" /* 1709 */ "UACC6\0" /* 1715 */ "WACC6\0" /* 1721 */ "VF6\0" /* 1725 */ "WACC_HI6\0" /* 1734 */ "VSL6\0" /* 1739 */ "CR6\0" /* 1743 */ "DMR6\0" /* 1748 */ "S6\0" /* 1751 */ "V6\0" /* 1754 */ "DMRROW6\0" /* 1762 */ "X6\0" /* 1765 */ "G8p6\0" /* 1770 */ "VSRp6\0" /* 1776 */ "DMRROWp6\0" /* 1785 */ "VF17\0" /* 1790 */ "VSL17\0" /* 1796 */ "R17\0" /* 1800 */ "S17\0" /* 1804 */ "V17\0" /* 1808 */ "DMRROW17\0" /* 1817 */ "X17\0" /* 1821 */ "VSRp17\0" /* 1828 */ "DMRROWp17\0" /* 1838 */ "VF27\0" /* 1843 */ "VSL27\0" /* 1849 */ "R27\0" /* 1853 */ "S27\0" /* 1857 */ "V27\0" /* 1861 */ "DMRROW27\0" /* 1870 */ "X27\0" /* 1874 */ "VSRp27\0" /* 1881 */ "DMRROWp27\0" /* 1891 */ "DMRROW37\0" /* 1900 */ "VSX37\0" /* 1906 */ "DMRROW47\0" /* 1915 */ "VSX47\0" /* 1921 */ "DMRROW57\0" /* 1930 */ "VSX57\0" /* 1936 */ "UACC7\0" /* 1942 */ "WACC7\0" /* 1948 */ "VF7\0" /* 1952 */ "WACC_HI7\0" /* 1961 */ "VSL7\0" /* 1966 */ "CR7\0" /* 1970 */ "DMR7\0" /* 1975 */ "S7\0" /* 1978 */ "V7\0" /* 1981 */ "DMRROW7\0" /* 1989 */ "X7\0" /* 1992 */ "G8p7\0" /* 1997 */ "VSRp7\0" /* 2003 */ "DMRROWp7\0" /* 2012 */ "VF18\0" /* 2017 */ "VSL18\0" /* 2023 */ "R18\0" /* 2027 */ "S18\0" /* 2031 */ "V18\0" /* 2035 */ "DMRROW18\0" /* 2044 */ "X18\0" /* 2048 */ "VSRp18\0" /* 2055 */ "DMRROWp18\0" /* 2065 */ "VF28\0" /* 2070 */ "VSL28\0" /* 2076 */ "R28\0" /* 2080 */ "S28\0" /* 2084 */ "V28\0" /* 2088 */ "DMRROW28\0" /* 2097 */ "X28\0" /* 2101 */ "VSRp28\0" /* 2108 */ "DMRROWp28\0" /* 2118 */ "DMRROW38\0" /* 2127 */ "VSX38\0" /* 2133 */ "DMRROW48\0" /* 2142 */ "VSX48\0" /* 2148 */ "DMRROW58\0" /* 2157 */ "VSX58\0" /* 2163 */ "VF8\0" /* 2167 */ "VSL8\0" /* 2172 */ "ZERO8\0" /* 2178 */ "BP8\0" /* 2182 */ "FP8\0" /* 2186 */ "LR8\0" /* 2190 */ "CTR8\0" /* 2195 */ "S8\0" /* 2198 */ "V8\0" /* 2201 */ "DMRROW8\0" /* 2209 */ "X8\0" /* 2212 */ "G8p8\0" /* 2217 */ "VSRp8\0" /* 2223 */ "DMRROWp8\0" /* 2232 */ "VF19\0" /* 2237 */ "VSL19\0" /* 2243 */ "R19\0" /* 2247 */ "S19\0" /* 2251 */ "V19\0" /* 2255 */ "DMRROW19\0" /* 2264 */ "X19\0" /* 2268 */ "VSRp19\0" /* 2275 */ "DMRROWp19\0" /* 2285 */ "VF29\0" /* 2290 */ "VSL29\0" /* 2296 */ "R29\0" /* 2300 */ "S29\0" /* 2304 */ "V29\0" /* 2308 */ "DMRROW29\0" /* 2317 */ "X29\0" /* 2321 */ "VSRp29\0" /* 2328 */ "DMRROWp29\0" /* 2338 */ "DMRROW39\0" /* 2347 */ "VSX39\0" /* 2353 */ "DMRROW49\0" /* 2362 */ "VSX49\0" /* 2368 */ "DMRROW59\0" /* 2377 */ "VSX59\0" /* 2383 */ "VF9\0" /* 2387 */ "VSL9\0" /* 2392 */ "R9\0" /* 2395 */ "S9\0" /* 2398 */ "V9\0" /* 2401 */ "DMRROW9\0" /* 2409 */ "X9\0" /* 2412 */ "G8p9\0" /* 2417 */ "VSRp9\0" /* 2423 */ "DMRROWp9\0" /* 2432 */ "VRSAVE\0" /* 2439 */ "RM\0" /* 2442 */ "CR0UN\0" /* 2448 */ "CR1UN\0" /* 2454 */ "CR2UN\0" /* 2460 */ "CR3UN\0" /* 2466 */ "CR4UN\0" /* 2472 */ "CR5UN\0" /* 2478 */ "CR6UN\0" /* 2484 */ "CR7UN\0" /* 2490 */ "ZERO\0" /* 2495 */ "BP\0" /* 2498 */ "FP\0" /* 2501 */ "CR0EQ\0" /* 2507 */ "CR1EQ\0" /* 2513 */ "CR2EQ\0" /* 2519 */ "CR3EQ\0" /* 2525 */ "CR4EQ\0" /* 2531 */ "CR5EQ\0" /* 2537 */ "CR6EQ\0" /* 2543 */ "CR7EQ\0" /* 2549 */ "SPEFSCR\0" /* 2557 */ "XER\0" /* 2561 */ "LR\0" /* 2564 */ "CTR\0" /* 2568 */ "CR0GT\0" /* 2574 */ "CR1GT\0" /* 2580 */ "CR2GT\0" /* 2586 */ "CR3GT\0" /* 2592 */ "CR4GT\0" /* 2598 */ "CR5GT\0" /* 2604 */ "CR6GT\0" /* 2610 */ "CR7GT\0" /* 2616 */ "CR0LT\0" /* 2622 */ "CR1LT\0" /* 2628 */ "CR2LT\0" /* 2634 */ "CR3LT\0" /* 2640 */ "CR4LT\0" /* 2646 */ "CR5LT\0" /* 2652 */ "CR6LT\0" /* 2658 */ "CR7LT\0" /* 2664 */ "CARRY\0" }; #ifdef __GNUC__ #pragma GCC diagnostic pop #endif extern const MCRegisterDesc PPCRegDesc[] = { // Descriptors { 4, 0, 0, 0, 0, 0 }, { 2495, 1, 408, 1, 22449, 0 }, { 2664, 1, 1, 1, 22449, 0 }, { 2564, 1, 1, 1, 22449, 0 }, { 2498, 1, 938, 1, 22449, 0 }, { 2561, 1, 1, 1, 22449, 0 }, { 2439, 1, 1, 1, 22449, 0 }, { 2549, 1, 1, 1, 22449, 0 }, { 2432, 1, 1, 1, 22449, 0 }, { 2557, 1, 1, 1, 22359, 0 }, { 2490, 1, 1065, 1, 22359, 0 }, { 211, 1185, 1, 17, 1588, 17 }, { 503, 1212, 1, 17, 1588, 17 }, { 757, 1239, 1, 17, 1588, 17 }, { 1011, 1266, 1, 17, 1588, 17 }, { 1250, 1293, 1, 17, 1588, 17 }, { 1483, 1320, 1, 17, 1588, 17 }, { 1710, 1347, 1, 17, 1588, 17 }, { 1937, 1374, 1, 17, 1588, 17 }, { 2178, 1401, 1, 0, 0, 2 }, { 240, 410, 1, 7, 1508, 9 }, { 532, 410, 1, 7, 1508, 9 }, { 786, 410, 1, 7, 1508, 9 }, { 1040, 410, 1, 7, 1508, 9 }, { 1279, 410, 1, 7, 1508, 9 }, { 1512, 410, 1, 7, 1508, 9 }, { 1739, 410, 1, 7, 1508, 9 }, { 1966, 410, 1, 7, 1508, 9 }, { 2190, 1, 1, 1, 9040, 0 }, { 244, 129, 874, 35, 1128, 27 }, { 536, 173, 791, 35, 1128, 27 }, { 790, 201, 791, 35, 1128, 27 }, { 1044, 245, 708, 35, 1128, 27 }, { 1283, 273, 708, 35, 1128, 27 }, { 1516, 317, 625, 35, 1128, 27 }, { 1743, 345, 625, 35, 1128, 27 }, { 1970, 389, 582, 35, 1128, 27 }, { 255, 1, 906, 1, 7921, 0 }, { 547, 1, 901, 1, 7921, 0 }, { 801, 1, 896, 1, 7921, 0 }, { 1055, 1, 891, 1, 7921, 0 }, { 1294, 1, 886, 1, 7921, 0 }, { 1527, 1, 881, 1, 7921, 0 }, { 1754, 1, 876, 1, 7921, 0 }, { 1981, 1, 871, 1, 7921, 0 }, { 2201, 1, 863, 1, 7921, 0 }, { 2401, 1, 858, 1, 7921, 0 }, { 23, 1, 853, 1, 7921, 0 }, { 315, 1, 848, 1, 7921, 0 }, { 607, 1, 823, 1, 7921, 0 }, { 861, 1, 818, 1, 7921, 0 }, { 1115, 1, 813, 1, 7921, 0 }, { 1348, 1, 808, 1, 7921, 0 }, { 1581, 1, 843, 1, 7921, 0 }, { 1808, 1, 838, 1, 7921, 0 }, { 2035, 1, 833, 1, 7921, 0 }, { 2255, 1, 828, 1, 7921, 0 }, { 82, 1, 803, 1, 7921, 0 }, { 374, 1, 798, 1, 7921, 0 }, { 666, 1, 793, 1, 7921, 0 }, { 920, 1, 788, 1, 7921, 0 }, { 1174, 1, 780, 1, 7921, 0 }, { 1407, 1, 775, 1, 7921, 0 }, { 1634, 1, 770, 1, 7921, 0 }, { 1861, 1, 765, 1, 7921, 0 }, { 2088, 1, 740, 1, 7921, 0 }, { 2308, 1, 735, 1, 7921, 0 }, { 135, 1, 730, 1, 7921, 0 }, { 427, 1, 725, 1, 7921, 0 }, { 696, 1, 760, 1, 7921, 0 }, { 950, 1, 755, 1, 7921, 0 }, { 1204, 1, 750, 1, 7921, 0 }, { 1437, 1, 745, 1, 7921, 0 }, { 1664, 1, 720, 1, 7921, 0 }, { 1891, 1, 715, 1, 7921, 0 }, { 2118, 1, 710, 1, 7921, 0 }, { 2338, 1, 705, 1, 7921, 0 }, { 165, 1, 697, 1, 7921, 0 }, { 457, 1, 692, 1, 7921, 0 }, { 711, 1, 687, 1, 7921, 0 }, { 965, 1, 682, 1, 7921, 0 }, { 1219, 1, 657, 1, 7921, 0 }, { 1452, 1, 652, 1, 7921, 0 }, { 1679, 1, 647, 1, 7921, 0 }, { 1906, 1, 642, 1, 7921, 0 }, { 2133, 1, 677, 1, 7921, 0 }, { 2353, 1, 672, 1, 7921, 0 }, { 180, 1, 667, 1, 7921, 0 }, { 472, 1, 662, 1, 7921, 0 }, { 726, 1, 637, 1, 7921, 0 }, { 980, 1, 632, 1, 7921, 0 }, { 1234, 1, 627, 1, 7921, 0 }, { 1467, 1, 622, 1, 7921, 0 }, { 1694, 1, 614, 1, 7921, 0 }, { 1921, 1, 609, 1, 7921, 0 }, { 2148, 1, 604, 1, 7921, 0 }, { 2368, 1, 599, 1, 7921, 0 }, { 195, 1, 594, 1, 7921, 0 }, { 487, 1, 589, 1, 7921, 0 }, { 741, 1, 584, 1, 7921, 0 }, { 995, 1, 579, 1, 7921, 0 }, { 283, 116, 902, 4, 1810, 6 }, { 575, 123, 892, 4, 1810, 6 }, { 829, 126, 882, 4, 1810, 6 }, { 1083, 141, 872, 4, 1810, 6 }, { 1316, 144, 859, 4, 1810, 6 }, { 1549, 151, 849, 4, 1810, 6 }, { 1776, 154, 819, 4, 1810, 6 }, { 2003, 185, 809, 4, 1810, 6 }, { 2223, 188, 839, 4, 1810, 6 }, { 2423, 195, 829, 4, 1810, 6 }, { 49, 198, 799, 4, 1810, 6 }, { 341, 213, 789, 4, 1810, 6 }, { 633, 216, 776, 4, 1810, 6 }, { 887, 223, 766, 4, 1810, 6 }, { 1141, 226, 736, 4, 1810, 6 }, { 1374, 257, 726, 4, 1810, 6 }, { 1601, 260, 756, 4, 1810, 6 }, { 1828, 267, 746, 4, 1810, 6 }, { 2055, 270, 716, 4, 1810, 6 }, { 2275, 285, 706, 4, 1810, 6 }, { 102, 288, 693, 4, 1810, 6 }, { 394, 295, 683, 4, 1810, 6 }, { 686, 298, 653, 4, 1810, 6 }, { 940, 329, 643, 4, 1810, 6 }, { 1194, 332, 673, 4, 1810, 6 }, { 1427, 339, 663, 4, 1810, 6 }, { 1654, 342, 633, 4, 1810, 6 }, { 1881, 357, 623, 4, 1810, 6 }, { 2108, 360, 610, 4, 1810, 6 }, { 2328, 367, 600, 4, 1810, 6 }, { 155, 370, 590, 4, 1810, 6 }, { 447, 401, 580, 4, 1810, 6 }, { 271, 157, 1, 50, 32, 36 }, { 563, 229, 1, 50, 304, 36 }, { 817, 301, 1, 50, 576, 36 }, { 1071, 373, 1, 50, 848, 36 }, { 223, 1, 1060, 1, 22225, 0 }, { 515, 1, 1055, 1, 22225, 0 }, { 769, 1, 1050, 1, 22225, 0 }, { 1023, 1, 1045, 1, 22225, 0 }, { 1262, 1, 1045, 1, 22225, 0 }, { 1495, 1, 1040, 1, 22225, 0 }, { 1722, 1, 1035, 1, 22225, 0 }, { 1949, 1, 1030, 1, 22225, 0 }, { 2164, 1, 1030, 1, 22225, 0 }, { 2384, 1, 1025, 1, 22225, 0 }, { 1, 1, 1020, 1, 22225, 0 }, { 293, 1, 1015, 1, 22225, 0 }, { 585, 1, 1015, 1, 22225, 0 }, { 839, 1, 1010, 1, 22225, 0 }, { 1093, 1, 1005, 1, 22225, 0 }, { 1326, 1, 1000, 1, 22225, 0 }, { 1559, 1, 1000, 1, 22225, 0 }, { 1786, 1, 995, 1, 22225, 0 }, { 2013, 1, 990, 1, 22225, 0 }, { 2233, 1, 985, 1, 22225, 0 }, { 60, 1, 985, 1, 22225, 0 }, { 352, 1, 980, 1, 22225, 0 }, { 644, 1, 975, 1, 22225, 0 }, { 898, 1, 970, 1, 22225, 0 }, { 1152, 1, 970, 1, 22225, 0 }, { 1385, 1, 965, 1, 22225, 0 }, { 1612, 1, 960, 1, 22225, 0 }, { 1839, 1, 955, 1, 22225, 0 }, { 2066, 1, 955, 1, 22225, 0 }, { 2286, 1, 950, 1, 22225, 0 }, { 113, 1, 945, 1, 22225, 0 }, { 405, 1, 940, 1, 22225, 0 }, { 2182, 1387, 1, 0, 6464, 2 }, { 2186, 1, 1, 1, 22385, 0 }, { 241, 1, 561, 1, 22385, 0 }, { 533, 1, 557, 1, 22385, 0 }, { 787, 1, 557, 1, 22385, 0 }, { 1041, 1, 553, 1, 22385, 0 }, { 1280, 1, 553, 1, 22385, 0 }, { 1513, 1, 549, 1, 22385, 0 }, { 1740, 1, 549, 1, 22385, 0 }, { 1967, 1, 545, 1, 22385, 0 }, { 2187, 1, 545, 1, 22385, 0 }, { 2392, 1, 541, 1, 22385, 0 }, { 11, 1, 541, 1, 22385, 0 }, { 303, 1, 537, 1, 22385, 0 }, { 595, 1, 537, 1, 22385, 0 }, { 849, 1, 533, 1, 22385, 0 }, { 1103, 1, 533, 1, 22385, 0 }, { 1336, 1, 529, 1, 22385, 0 }, { 1569, 1, 529, 1, 22385, 0 }, { 1796, 1, 525, 1, 22385, 0 }, { 2023, 1, 525, 1, 22385, 0 }, { 2243, 1, 521, 1, 22385, 0 }, { 70, 1, 521, 1, 22385, 0 }, { 362, 1, 517, 1, 22385, 0 }, { 654, 1, 517, 1, 22385, 0 }, { 908, 1, 513, 1, 22385, 0 }, { 1162, 1, 513, 1, 22385, 0 }, { 1395, 1, 509, 1, 22385, 0 }, { 1622, 1, 509, 1, 22385, 0 }, { 1849, 1, 505, 1, 22385, 0 }, { 2076, 1, 505, 1, 22385, 0 }, { 2296, 1, 501, 1, 22385, 0 }, { 123, 1, 501, 1, 22385, 0 }, { 415, 1, 497, 1, 22385, 0 }, { 249, 1399, 1, 0, 22321, 2 }, { 541, 1399, 1, 0, 22321, 2 }, { 795, 1399, 1, 0, 22321, 2 }, { 1049, 1399, 1, 0, 22321, 2 }, { 1288, 1399, 1, 0, 22321, 2 }, { 1521, 1399, 1, 0, 22321, 2 }, { 1748, 1399, 1, 0, 22321, 2 }, { 1975, 1399, 1, 0, 22321, 2 }, { 2195, 1399, 1, 0, 22321, 2 }, { 2395, 1399, 1, 0, 22321, 2 }, { 15, 1399, 1, 0, 22321, 2 }, { 307, 1399, 1, 0, 22321, 2 }, { 599, 1399, 1, 0, 22321, 2 }, { 853, 1399, 1, 0, 22321, 2 }, { 1107, 1399, 1, 0, 22321, 2 }, { 1340, 1399, 1, 0, 22321, 2 }, { 1573, 1399, 1, 0, 22321, 2 }, { 1800, 1399, 1, 0, 22321, 2 }, { 2027, 1399, 1, 0, 22321, 2 }, { 2247, 1399, 1, 0, 22321, 2 }, { 74, 1399, 1, 0, 22321, 2 }, { 366, 1399, 1, 0, 22321, 2 }, { 658, 1399, 1, 0, 22321, 2 }, { 912, 1399, 1, 0, 22321, 2 }, { 1166, 1399, 1, 0, 22321, 2 }, { 1399, 1399, 1, 0, 22321, 2 }, { 1626, 1399, 1, 0, 22321, 2 }, { 1853, 1399, 1, 0, 22321, 2 }, { 2080, 1399, 1, 0, 22321, 2 }, { 2300, 1399, 1, 0, 22321, 2 }, { 127, 1399, 1, 0, 22321, 2 }, { 419, 1399, 1, 0, 22321, 2 }, { 210, 1174, 1, 17, 1428, 17 }, { 502, 1201, 1, 17, 1428, 17 }, { 756, 1228, 1, 17, 1428, 17 }, { 1010, 1255, 1, 17, 1428, 17 }, { 1249, 1282, 1, 17, 1428, 17 }, { 1482, 1309, 1, 17, 1428, 17 }, { 1709, 1336, 1, 17, 1428, 17 }, { 1936, 1363, 1, 17, 1428, 17 }, { 252, 418, 936, 2, 22289, 4 }, { 544, 418, 933, 2, 22289, 4 }, { 798, 418, 933, 2, 22289, 4 }, { 1052, 418, 930, 2, 22289, 4 }, { 1291, 418, 930, 2, 22289, 4 }, { 1524, 418, 927, 2, 22289, 4 }, { 1751, 418, 927, 2, 22289, 4 }, { 1978, 418, 924, 2, 22289, 4 }, { 2198, 418, 924, 2, 22289, 4 }, { 2398, 418, 921, 2, 22289, 4 }, { 19, 418, 921, 2, 22289, 4 }, { 311, 418, 918, 2, 22289, 4 }, { 603, 418, 918, 2, 22289, 4 }, { 857, 418, 915, 2, 22289, 4 }, { 1111, 418, 915, 2, 22289, 4 }, { 1344, 418, 874, 2, 22289, 4 }, { 1577, 418, 874, 2, 22289, 4 }, { 1804, 418, 791, 2, 22289, 4 }, { 2031, 418, 791, 2, 22289, 4 }, { 2251, 418, 708, 2, 22289, 4 }, { 78, 418, 708, 2, 22289, 4 }, { 370, 418, 625, 2, 22289, 4 }, { 662, 418, 625, 2, 22289, 4 }, { 916, 418, 582, 2, 22289, 4 }, { 1170, 418, 582, 2, 22289, 4 }, { 1403, 418, 577, 2, 22289, 4 }, { 1630, 418, 577, 2, 22289, 4 }, { 1857, 418, 574, 2, 22289, 4 }, { 2084, 418, 574, 2, 22289, 4 }, { 2304, 418, 571, 2, 22289, 4 }, { 131, 418, 571, 2, 22289, 4 }, { 423, 418, 568, 2, 22289, 4 }, { 222, 1, 935, 1, 22257, 0 }, { 514, 1, 932, 1, 22257, 0 }, { 768, 1, 932, 1, 22257, 0 }, { 1022, 1, 929, 1, 22257, 0 }, { 1261, 1, 929, 1, 22257, 0 }, { 1494, 1, 926, 1, 22257, 0 }, { 1721, 1, 926, 1, 22257, 0 }, { 1948, 1, 923, 1, 22257, 0 }, { 2163, 1, 923, 1, 22257, 0 }, { 2383, 1, 920, 1, 22257, 0 }, { 0, 1, 920, 1, 22257, 0 }, { 292, 1, 917, 1, 22257, 0 }, { 584, 1, 917, 1, 22257, 0 }, { 838, 1, 914, 1, 22257, 0 }, { 1092, 1, 914, 1, 22257, 0 }, { 1325, 1, 911, 1, 22257, 0 }, { 1558, 1, 911, 1, 22257, 0 }, { 1785, 1, 868, 1, 22257, 0 }, { 2012, 1, 868, 1, 22257, 0 }, { 2232, 1, 785, 1, 22257, 0 }, { 59, 1, 785, 1, 22257, 0 }, { 351, 1, 702, 1, 22257, 0 }, { 643, 1, 702, 1, 22257, 0 }, { 897, 1, 619, 1, 22257, 0 }, { 1151, 1, 619, 1, 22257, 0 }, { 1384, 1, 576, 1, 22257, 0 }, { 1611, 1, 576, 1, 22257, 0 }, { 1838, 1, 573, 1, 22257, 0 }, { 2065, 1, 573, 1, 22257, 0 }, { 2285, 1, 570, 1, 22257, 0 }, { 112, 1, 570, 1, 22257, 0 }, { 404, 1, 567, 1, 22257, 0 }, { 235, 1172, 1061, 2, 17361, 4 }, { 527, 1172, 1056, 2, 17361, 4 }, { 781, 1172, 1051, 2, 17361, 4 }, { 1035, 1172, 1046, 2, 17361, 4 }, { 1274, 1172, 1046, 2, 17361, 4 }, { 1507, 1172, 1041, 2, 17361, 4 }, { 1734, 1172, 1036, 2, 17361, 4 }, { 1961, 1172, 1031, 2, 17361, 4 }, { 2167, 1172, 1031, 2, 17361, 4 }, { 2387, 1172, 1026, 2, 17361, 4 }, { 5, 1172, 1021, 2, 17361, 4 }, { 297, 1172, 1016, 2, 17361, 4 }, { 589, 1172, 1016, 2, 17361, 4 }, { 843, 1172, 1011, 2, 17361, 4 }, { 1097, 1172, 1006, 2, 17361, 4 }, { 1330, 1172, 1001, 2, 17361, 4 }, { 1563, 1172, 1001, 2, 17361, 4 }, { 1790, 1172, 996, 2, 17361, 4 }, { 2017, 1172, 991, 2, 17361, 4 }, { 2237, 1172, 986, 2, 17361, 4 }, { 64, 1172, 986, 2, 17361, 4 }, { 356, 1172, 981, 2, 17361, 4 }, { 648, 1172, 976, 2, 17361, 4 }, { 902, 1172, 971, 2, 17361, 4 }, { 1156, 1172, 971, 2, 17361, 4 }, { 1389, 1172, 966, 2, 17361, 4 }, { 1616, 1172, 961, 2, 17361, 4 }, { 1843, 1172, 956, 2, 17361, 4 }, { 2070, 1172, 956, 2, 17361, 4 }, { 2290, 1172, 951, 2, 17361, 4 }, { 117, 1172, 946, 2, 17361, 4 }, { 409, 1172, 941, 2, 17361, 4 }, { 277, 1169, 1057, 12, 1714, 14 }, { 569, 1180, 1042, 12, 1714, 14 }, { 823, 1196, 1042, 12, 1714, 14 }, { 1077, 1207, 1027, 12, 1714, 14 }, { 1310, 1223, 1027, 12, 1714, 14 }, { 1543, 1234, 1012, 12, 1714, 14 }, { 1770, 1250, 1012, 12, 1714, 14 }, { 1997, 1261, 997, 12, 1714, 14 }, { 2217, 1277, 997, 12, 1714, 14 }, { 2417, 1288, 982, 12, 1714, 14 }, { 42, 1304, 982, 12, 1714, 14 }, { 334, 1315, 967, 12, 1714, 14 }, { 626, 1331, 967, 12, 1714, 14 }, { 880, 1342, 952, 12, 1714, 14 }, { 1134, 1358, 952, 12, 1714, 14 }, { 1367, 1369, 942, 12, 1714, 14 }, { 1594, 415, 1, 12, 1762, 14 }, { 1821, 420, 1, 12, 1762, 14 }, { 2048, 425, 1, 12, 1762, 14 }, { 2268, 430, 1, 12, 1762, 14 }, { 95, 435, 1, 12, 1762, 14 }, { 387, 440, 1, 12, 1762, 14 }, { 679, 445, 1, 12, 1762, 14 }, { 933, 450, 1, 12, 1762, 14 }, { 1187, 455, 1, 12, 1762, 14 }, { 1420, 460, 1, 12, 1762, 14 }, { 1647, 465, 1, 12, 1762, 14 }, { 1874, 470, 1, 12, 1762, 14 }, { 2101, 475, 1, 12, 1762, 14 }, { 2321, 480, 1, 12, 1762, 14 }, { 148, 485, 1, 12, 1762, 14 }, { 440, 490, 1, 12, 1762, 14 }, { 705, 1, 1, 1, 22161, 0 }, { 959, 1, 1, 1, 22161, 0 }, { 1213, 1, 1, 1, 22161, 0 }, { 1446, 1, 1, 1, 22161, 0 }, { 1673, 1, 1, 1, 22161, 0 }, { 1900, 1, 1, 1, 22161, 0 }, { 2127, 1, 1, 1, 22161, 0 }, { 2347, 1, 1, 1, 22161, 0 }, { 174, 1, 1, 1, 22161, 0 }, { 466, 1, 1, 1, 22161, 0 }, { 720, 1, 1, 1, 22161, 0 }, { 974, 1, 1, 1, 22161, 0 }, { 1228, 1, 1, 1, 22161, 0 }, { 1461, 1, 1, 1, 22161, 0 }, { 1688, 1, 1, 1, 22161, 0 }, { 1915, 1, 1, 1, 22161, 0 }, { 2142, 1, 1, 1, 22161, 0 }, { 2362, 1, 1, 1, 22161, 0 }, { 189, 1, 1, 1, 22161, 0 }, { 481, 1, 1, 1, 22161, 0 }, { 735, 1, 1, 1, 22161, 0 }, { 989, 1, 1, 1, 22161, 0 }, { 1243, 1, 1, 1, 22161, 0 }, { 1476, 1, 1, 1, 22161, 0 }, { 1703, 1, 1, 1, 22161, 0 }, { 1930, 1, 1, 1, 22161, 0 }, { 2157, 1, 1, 1, 22161, 0 }, { 2377, 1, 1, 1, 22161, 0 }, { 204, 1, 1, 1, 22161, 0 }, { 496, 1, 1, 1, 22161, 0 }, { 750, 1, 1, 1, 22161, 0 }, { 1004, 1, 1, 1, 22161, 0 }, { 216, 119, 893, 28, 1352, 22 }, { 508, 147, 830, 28, 1352, 22 }, { 762, 191, 830, 28, 1352, 22 }, { 1016, 219, 747, 28, 1352, 22 }, { 1255, 263, 747, 28, 1352, 22 }, { 1488, 291, 664, 28, 1352, 22 }, { 1715, 335, 664, 28, 1352, 22 }, { 1942, 363, 601, 28, 1352, 22 }, { 226, 137, 873, 28, 1272, 22 }, { 518, 181, 790, 28, 1272, 22 }, { 772, 209, 790, 28, 1272, 22 }, { 1026, 253, 707, 28, 1272, 22 }, { 1265, 281, 707, 28, 1272, 22 }, { 1498, 325, 624, 28, 1272, 22 }, { 1725, 353, 624, 28, 1272, 22 }, { 1952, 397, 581, 28, 1272, 22 }, { 263, 1092, 563, 0, 17393, 2 }, { 555, 1092, 559, 0, 17393, 2 }, { 809, 1092, 559, 0, 17393, 2 }, { 1063, 1092, 555, 0, 17393, 2 }, { 1302, 1092, 555, 0, 17393, 2 }, { 1535, 1092, 551, 0, 17393, 2 }, { 1762, 1092, 551, 0, 17393, 2 }, { 1989, 1092, 547, 0, 17393, 2 }, { 2209, 1092, 547, 0, 17393, 2 }, { 2409, 1092, 543, 0, 17393, 2 }, { 32, 1092, 543, 0, 17393, 2 }, { 324, 1092, 539, 0, 17393, 2 }, { 616, 1092, 539, 0, 17393, 2 }, { 870, 1092, 535, 0, 17393, 2 }, { 1124, 1092, 535, 0, 17393, 2 }, { 1357, 1092, 531, 0, 17393, 2 }, { 1590, 1092, 531, 0, 17393, 2 }, { 1817, 1092, 527, 0, 17393, 2 }, { 2044, 1092, 527, 0, 17393, 2 }, { 2264, 1092, 523, 0, 17393, 2 }, { 91, 1092, 523, 0, 17393, 2 }, { 383, 1092, 519, 0, 17393, 2 }, { 675, 1092, 519, 0, 17393, 2 }, { 929, 1092, 515, 0, 17393, 2 }, { 1183, 1092, 515, 0, 17393, 2 }, { 1416, 1092, 511, 0, 17393, 2 }, { 1643, 1092, 511, 0, 17393, 2 }, { 1870, 1092, 507, 0, 17393, 2 }, { 2097, 1092, 507, 0, 17393, 2 }, { 2317, 1092, 503, 0, 17393, 2 }, { 144, 1092, 503, 0, 17393, 2 }, { 436, 1092, 499, 0, 17393, 2 }, { 2172, 1079, 1, 0, 6496, 2 }, { 2501, 1, 1083, 1, 17172, 0 }, { 2507, 1, 1083, 1, 17172, 0 }, { 2513, 1, 1083, 1, 17172, 0 }, { 2519, 1, 1083, 1, 17172, 0 }, { 2525, 1, 1083, 1, 17172, 0 }, { 2531, 1, 1083, 1, 17172, 0 }, { 2537, 1, 1083, 1, 17172, 0 }, { 2543, 1, 1083, 1, 17172, 0 }, { 2568, 1, 1081, 1, 17140, 0 }, { 2574, 1, 1081, 1, 17140, 0 }, { 2580, 1, 1081, 1, 17140, 0 }, { 2586, 1, 1081, 1, 17140, 0 }, { 2592, 1, 1081, 1, 17140, 0 }, { 2598, 1, 1081, 1, 17140, 0 }, { 2604, 1, 1081, 1, 17140, 0 }, { 2610, 1, 1081, 1, 17140, 0 }, { 2616, 1, 1077, 1, 17108, 0 }, { 2622, 1, 1077, 1, 17108, 0 }, { 2628, 1, 1077, 1, 17108, 0 }, { 2634, 1, 1077, 1, 17108, 0 }, { 2640, 1, 1077, 1, 17108, 0 }, { 2646, 1, 1077, 1, 17108, 0 }, { 2652, 1, 1077, 1, 17108, 0 }, { 2658, 1, 1077, 1, 17108, 0 }, { 2442, 1, 1075, 1, 17076, 0 }, { 2448, 1, 1075, 1, 17076, 0 }, { 2454, 1, 1075, 1, 17076, 0 }, { 2460, 1, 1075, 1, 17076, 0 }, { 2466, 1, 1075, 1, 17076, 0 }, { 2472, 1, 1075, 1, 17076, 0 }, { 2478, 1, 1075, 1, 17076, 0 }, { 2484, 1, 1075, 1, 17076, 0 }, { 266, 1089, 1, 81, 1666, 53 }, { 558, 1094, 1, 81, 1666, 53 }, { 812, 1099, 1, 81, 1666, 53 }, { 1066, 1104, 1, 81, 1666, 53 }, { 1305, 1109, 1, 81, 1666, 53 }, { 1538, 1114, 1, 81, 1666, 53 }, { 1765, 1119, 1, 81, 1666, 53 }, { 1992, 1124, 1, 81, 1666, 53 }, { 2212, 1129, 1, 81, 1666, 53 }, { 2412, 1134, 1, 81, 1666, 53 }, { 36, 1139, 1, 81, 1666, 53 }, { 328, 1144, 1, 81, 1666, 53 }, { 620, 1149, 1, 81, 1666, 53 }, { 874, 1154, 1, 81, 1666, 53 }, { 1128, 1159, 1, 81, 1666, 53 }, { 1361, 1164, 1, 81, 1666, 53 }, }; extern const MCPhysReg PPCRegUnitRoots[][2] = { { PPC::BP }, { PPC::CARRY, PPC::XER }, { PPC::CTR }, { PPC::FP }, { PPC::LR }, { PPC::RM }, { PPC::SPEFSCR }, { PPC::VRSAVE }, { PPC::ZERO }, { PPC::F0 }, { PPC::F1 }, { PPC::F2 }, { PPC::F3 }, { PPC::F4 }, { PPC::F5 }, { PPC::F6 }, { PPC::F7 }, { PPC::F8 }, { PPC::F9 }, { PPC::F10 }, { PPC::F11 }, { PPC::F12 }, { PPC::F13 }, { PPC::F14 }, { PPC::F15 }, { PPC::F16 }, { PPC::F17 }, { PPC::F18 }, { PPC::F19 }, { PPC::F20 }, { PPC::F21 }, { PPC::F22 }, { PPC::F23 }, { PPC::F24 }, { PPC::F25 }, { PPC::F26 }, { PPC::F27 }, { PPC::F28 }, { PPC::F29 }, { PPC::F30 }, { PPC::F31 }, { PPC::CR0LT }, { PPC::CR0GT }, { PPC::CR0EQ }, { PPC::CR0UN }, { PPC::CR1LT }, { PPC::CR1GT }, { PPC::CR1EQ }, { PPC::CR1UN }, { PPC::CR2LT }, { PPC::CR2GT }, { PPC::CR2EQ }, { PPC::CR2UN }, { PPC::CR3LT }, { PPC::CR3GT }, { PPC::CR3EQ }, { PPC::CR3UN }, { PPC::CR4LT }, { PPC::CR4GT }, { PPC::CR4EQ }, { PPC::CR4UN }, { PPC::CR5LT }, { PPC::CR5GT }, { PPC::CR5EQ }, { PPC::CR5UN }, { PPC::CR6LT }, { PPC::CR6GT }, { PPC::CR6EQ }, { PPC::CR6UN }, { PPC::CR7LT }, { PPC::CR7GT }, { PPC::CR7EQ }, { PPC::CR7UN }, { PPC::CTR8 }, { PPC::DMRROW0 }, { PPC::DMRROW1 }, { PPC::DMRROW2 }, { PPC::DMRROW3 }, { PPC::DMRROW4 }, { PPC::DMRROW5 }, { PPC::DMRROW6 }, { PPC::DMRROW7 }, { PPC::DMRROW8 }, { PPC::DMRROW9 }, { PPC::DMRROW10 }, { PPC::DMRROW11 }, { PPC::DMRROW12 }, { PPC::DMRROW13 }, { PPC::DMRROW14 }, { PPC::DMRROW15 }, { PPC::DMRROW16 }, { PPC::DMRROW17 }, { PPC::DMRROW18 }, { PPC::DMRROW19 }, { PPC::DMRROW20 }, { PPC::DMRROW21 }, { PPC::DMRROW22 }, { PPC::DMRROW23 }, { PPC::DMRROW24 }, { PPC::DMRROW25 }, { PPC::DMRROW26 }, { PPC::DMRROW27 }, { PPC::DMRROW28 }, { PPC::DMRROW29 }, { PPC::DMRROW30 }, { PPC::DMRROW31 }, { PPC::DMRROW32 }, { PPC::DMRROW33 }, { PPC::DMRROW34 }, { PPC::DMRROW35 }, { PPC::DMRROW36 }, { PPC::DMRROW37 }, { PPC::DMRROW38 }, { PPC::DMRROW39 }, { PPC::DMRROW40 }, { PPC::DMRROW41 }, { PPC::DMRROW42 }, { PPC::DMRROW43 }, { PPC::DMRROW44 }, { PPC::DMRROW45 }, { PPC::DMRROW46 }, { PPC::DMRROW47 }, { PPC::DMRROW48 }, { PPC::DMRROW49 }, { PPC::DMRROW50 }, { PPC::DMRROW51 }, { PPC::DMRROW52 }, { PPC::DMRROW53 }, { PPC::DMRROW54 }, { PPC::DMRROW55 }, { PPC::DMRROW56 }, { PPC::DMRROW57 }, { PPC::DMRROW58 }, { PPC::DMRROW59 }, { PPC::DMRROW60 }, { PPC::DMRROW61 }, { PPC::DMRROW62 }, { PPC::DMRROW63 }, { PPC::LR8 }, { PPC::R0 }, { PPC::R1 }, { PPC::R2 }, { PPC::R3 }, { PPC::R4 }, { PPC::R5 }, { PPC::R6 }, { PPC::R7 }, { PPC::R8 }, { PPC::R9 }, { PPC::R10 }, { PPC::R11 }, { PPC::R12 }, { PPC::R13 }, { PPC::R14 }, { PPC::R15 }, { PPC::R16 }, { PPC::R17 }, { PPC::R18 }, { PPC::R19 }, { PPC::R20 }, { PPC::R21 }, { PPC::R22 }, { PPC::R23 }, { PPC::R24 }, { PPC::R25 }, { PPC::R26 }, { PPC::R27 }, { PPC::R28 }, { PPC::R29 }, { PPC::R30 }, { PPC::R31 }, { PPC::VF0 }, { PPC::VF1 }, { PPC::VF2 }, { PPC::VF3 }, { PPC::VF4 }, { PPC::VF5 }, { PPC::VF6 }, { PPC::VF7 }, { PPC::VF8 }, { PPC::VF9 }, { PPC::VF10 }, { PPC::VF11 }, { PPC::VF12 }, { PPC::VF13 }, { PPC::VF14 }, { PPC::VF15 }, { PPC::VF16 }, { PPC::VF17 }, { PPC::VF18 }, { PPC::VF19 }, { PPC::VF20 }, { PPC::VF21 }, { PPC::VF22 }, { PPC::VF23 }, { PPC::VF24 }, { PPC::VF25 }, { PPC::VF26 }, { PPC::VF27 }, { PPC::VF28 }, { PPC::VF29 }, { PPC::VF30 }, { PPC::VF31 }, { PPC::VSX32 }, { PPC::VSX33 }, { PPC::VSX34 }, { PPC::VSX35 }, { PPC::VSX36 }, { PPC::VSX37 }, { PPC::VSX38 }, { PPC::VSX39 }, { PPC::VSX40 }, { PPC::VSX41 }, { PPC::VSX42 }, { PPC::VSX43 }, { PPC::VSX44 }, { PPC::VSX45 }, { PPC::VSX46 }, { PPC::VSX47 }, { PPC::VSX48 }, { PPC::VSX49 }, { PPC::VSX50 }, { PPC::VSX51 }, { PPC::VSX52 }, { PPC::VSX53 }, { PPC::VSX54 }, { PPC::VSX55 }, { PPC::VSX56 }, { PPC::VSX57 }, { PPC::VSX58 }, { PPC::VSX59 }, { PPC::VSX60 }, { PPC::VSX61 }, { PPC::VSX62 }, { PPC::VSX63 }, }; namespace { // Register classes... // VSSRC Register Class... const MCPhysReg VSSRC[] = { PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F31, PPC::F30, PPC::F29, PPC::F28, PPC::F27, PPC::F26, PPC::F25, PPC::F24, PPC::F23, PPC::F22, PPC::F21, PPC::F20, PPC::F19, PPC::F18, PPC::F17, PPC::F16, PPC::F15, PPC::F14, PPC::VF2, PPC::VF3, PPC::VF4, PPC::VF5, PPC::VF0, PPC::VF1, PPC::VF6, PPC::VF7, PPC::VF8, PPC::VF9, PPC::VF10, PPC::VF11, PPC::VF12, PPC::VF13, PPC::VF14, PPC::VF15, PPC::VF16, PPC::VF17, PPC::VF18, PPC::VF19, PPC::VF31, PPC::VF30, PPC::VF29, PPC::VF28, PPC::VF27, PPC::VF26, PPC::VF25, PPC::VF24, PPC::VF23, PPC::VF22, PPC::VF21, PPC::VF20, }; // VSSRC Bit set. const uint8_t VSSRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // GPRC Register Class... const MCPhysReg GPRC[] = { PPC::R2, PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R31, PPC::R0, PPC::R1, PPC::FP, PPC::BP, }; // GPRC Bit set. const uint8_t GPRCBits[] = { 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // GPRC_NOR0 Register Class... const MCPhysReg GPRC_NOR0[] = { PPC::R2, PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R31, PPC::R1, PPC::FP, PPC::BP, PPC::ZERO, }; // GPRC_NOR0 Bit set. const uint8_t GPRC_NOR0Bits[] = { 0x12, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0x07, }; // GPRC_and_GPRC_NOR0 Register Class... const MCPhysReg GPRC_and_GPRC_NOR0[] = { PPC::R2, PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R31, PPC::R1, PPC::FP, PPC::BP, }; // GPRC_and_GPRC_NOR0 Bit set. const uint8_t GPRC_and_GPRC_NOR0Bits[] = { 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0x07, }; // CRBITRC Register Class... const MCPhysReg CRBITRC[] = { PPC::CR2LT, PPC::CR2GT, PPC::CR2EQ, PPC::CR2UN, PPC::CR3LT, PPC::CR3GT, PPC::CR3EQ, PPC::CR3UN, PPC::CR4LT, PPC::CR4GT, PPC::CR4EQ, PPC::CR4UN, PPC::CR5LT, PPC::CR5GT, PPC::CR5EQ, PPC::CR5UN, PPC::CR6LT, PPC::CR6GT, PPC::CR6EQ, PPC::CR6UN, PPC::CR7LT, PPC::CR7GT, PPC::CR7EQ, PPC::CR7UN, PPC::CR1LT, PPC::CR1GT, PPC::CR1EQ, PPC::CR1UN, PPC::CR0LT, PPC::CR0GT, PPC::CR0EQ, PPC::CR0UN, }; // CRBITRC Bit set. const uint8_t CRBITRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0x0f, }; // F4RC Register Class... const MCPhysReg F4RC[] = { PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F31, PPC::F30, PPC::F29, PPC::F28, PPC::F27, PPC::F26, PPC::F25, PPC::F24, PPC::F23, PPC::F22, PPC::F21, PPC::F20, PPC::F19, PPC::F18, PPC::F17, PPC::F16, PPC::F15, PPC::F14, }; // F4RC Bit set. const uint8_t F4RCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0x01, }; // CRRC Register Class... const MCPhysReg CRRC[] = { PPC::CR0, PPC::CR1, PPC::CR5, PPC::CR6, PPC::CR7, PPC::CR2, PPC::CR3, PPC::CR4, }; // CRRC Bit set. const uint8_t CRRCBits[] = { 0x00, 0x00, 0xf0, 0x0f, }; // CARRYRC Register Class... const MCPhysReg CARRYRC[] = { PPC::CARRY, PPC::XER, }; // CARRYRC Bit set. const uint8_t CARRYRCBits[] = { 0x04, 0x02, }; // CTRRC Register Class... const MCPhysReg CTRRC[] = { PPC::CTR, }; // CTRRC Bit set. const uint8_t CTRRCBits[] = { 0x08, }; // LRRC Register Class... const MCPhysReg LRRC[] = { PPC::LR, }; // LRRC Bit set. const uint8_t LRRCBits[] = { 0x20, }; // VRSAVERC Register Class... const MCPhysReg VRSAVERC[] = { PPC::VRSAVE, }; // VRSAVERC Bit set. const uint8_t VRSAVERCBits[] = { 0x00, 0x01, }; // SPILLTOVSRRC Register Class... const MCPhysReg SPILLTOVSRRC[] = { PPC::X2, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X31, PPC::X13, PPC::X0, PPC::X1, PPC::FP8, PPC::BP8, PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::VF2, PPC::VF3, PPC::VF4, PPC::VF5, PPC::VF0, PPC::VF1, PPC::VF6, PPC::VF7, PPC::VF8, PPC::VF9, PPC::VF10, PPC::VF11, PPC::VF12, PPC::VF13, PPC::VF14, PPC::VF15, PPC::VF16, PPC::VF17, PPC::VF18, PPC::VF19, }; // SPILLTOVSRRC Bit set. const uint8_t SPILLTOVSRRCBits[] = { 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x7f, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // VSFRC Register Class... const MCPhysReg VSFRC[] = { PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F31, PPC::F30, PPC::F29, PPC::F28, PPC::F27, PPC::F26, PPC::F25, PPC::F24, PPC::F23, PPC::F22, PPC::F21, PPC::F20, PPC::F19, PPC::F18, PPC::F17, PPC::F16, PPC::F15, PPC::F14, PPC::VF2, PPC::VF3, PPC::VF4, PPC::VF5, PPC::VF0, PPC::VF1, PPC::VF6, PPC::VF7, PPC::VF8, PPC::VF9, PPC::VF10, PPC::VF11, PPC::VF12, PPC::VF13, PPC::VF14, PPC::VF15, PPC::VF16, PPC::VF17, PPC::VF18, PPC::VF19, PPC::VF31, PPC::VF30, PPC::VF29, PPC::VF28, PPC::VF27, PPC::VF26, PPC::VF25, PPC::VF24, PPC::VF23, PPC::VF22, PPC::VF21, PPC::VF20, }; // VSFRC Bit set. const uint8_t VSFRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // G8RC Register Class... const MCPhysReg G8RC[] = { PPC::X2, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X31, PPC::X13, PPC::X0, PPC::X1, PPC::FP8, PPC::BP8, }; // G8RC Bit set. const uint8_t G8RCBits[] = { 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // G8RC_NOX0 Register Class... const MCPhysReg G8RC_NOX0[] = { PPC::X2, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X31, PPC::X13, PPC::X1, PPC::FP8, PPC::BP8, PPC::ZERO8, }; // G8RC_NOX0 Bit set. const uint8_t G8RC_NOX0Bits[] = { 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0x0f, }; // SPILLTOVSRRC_and_VSFRC Register Class... const MCPhysReg SPILLTOVSRRC_and_VSFRC[] = { PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::VF2, PPC::VF3, PPC::VF4, PPC::VF5, PPC::VF0, PPC::VF1, PPC::VF6, PPC::VF7, PPC::VF8, PPC::VF9, PPC::VF10, PPC::VF11, PPC::VF12, PPC::VF13, PPC::VF14, PPC::VF15, PPC::VF16, PPC::VF17, PPC::VF18, PPC::VF19, }; // SPILLTOVSRRC_and_VSFRC Bit set. const uint8_t SPILLTOVSRRC_and_VSFRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x7f, }; // G8RC_and_G8RC_NOX0 Register Class... const MCPhysReg G8RC_and_G8RC_NOX0[] = { PPC::X2, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X31, PPC::X13, PPC::X1, PPC::FP8, PPC::BP8, }; // G8RC_and_G8RC_NOX0 Bit set. const uint8_t G8RC_and_G8RC_NOX0Bits[] = { 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0x07, }; // F8RC Register Class... const MCPhysReg F8RC[] = { PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F31, PPC::F30, PPC::F29, PPC::F28, PPC::F27, PPC::F26, PPC::F25, PPC::F24, PPC::F23, PPC::F22, PPC::F21, PPC::F20, PPC::F19, PPC::F18, PPC::F17, PPC::F16, PPC::F15, PPC::F14, }; // F8RC Bit set. const uint8_t F8RCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0x01, }; // SPERC Register Class... const MCPhysReg SPERC[] = { PPC::S2, PPC::S3, PPC::S4, PPC::S5, PPC::S6, PPC::S7, PPC::S8, PPC::S9, PPC::S10, PPC::S11, PPC::S12, PPC::S30, PPC::S29, PPC::S28, PPC::S27, PPC::S26, PPC::S25, PPC::S24, PPC::S23, PPC::S22, PPC::S21, PPC::S20, PPC::S19, PPC::S18, PPC::S17, PPC::S16, PPC::S15, PPC::S14, PPC::S13, PPC::S31, PPC::S0, PPC::S1, }; // SPERC Bit set. const uint8_t SPERCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // VFRC Register Class... const MCPhysReg VFRC[] = { PPC::VF2, PPC::VF3, PPC::VF4, PPC::VF5, PPC::VF0, PPC::VF1, PPC::VF6, PPC::VF7, PPC::VF8, PPC::VF9, PPC::VF10, PPC::VF11, PPC::VF12, PPC::VF13, PPC::VF14, PPC::VF15, PPC::VF16, PPC::VF17, PPC::VF18, PPC::VF19, PPC::VF31, PPC::VF30, PPC::VF29, PPC::VF28, PPC::VF27, PPC::VF26, PPC::VF25, PPC::VF24, PPC::VF23, PPC::VF22, PPC::VF21, PPC::VF20, }; // VFRC Bit set. const uint8_t VFRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // SPERC_with_sub_32_in_GPRC_NOR0 Register Class... const MCPhysReg SPERC_with_sub_32_in_GPRC_NOR0[] = { PPC::S2, PPC::S3, PPC::S4, PPC::S5, PPC::S6, PPC::S7, PPC::S8, PPC::S9, PPC::S10, PPC::S11, PPC::S12, PPC::S30, PPC::S29, PPC::S28, PPC::S27, PPC::S26, PPC::S25, PPC::S24, PPC::S23, PPC::S22, PPC::S21, PPC::S20, PPC::S19, PPC::S18, PPC::S17, PPC::S16, PPC::S15, PPC::S14, PPC::S13, PPC::S31, PPC::S1, }; // SPERC_with_sub_32_in_GPRC_NOR0 Bit set. const uint8_t SPERC_with_sub_32_in_GPRC_NOR0Bits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0x07, }; // SPILLTOVSRRC_and_VFRC Register Class... const MCPhysReg SPILLTOVSRRC_and_VFRC[] = { PPC::VF2, PPC::VF3, PPC::VF4, PPC::VF5, PPC::VF0, PPC::VF1, PPC::VF6, PPC::VF7, PPC::VF8, PPC::VF9, PPC::VF10, PPC::VF11, PPC::VF12, PPC::VF13, PPC::VF14, PPC::VF15, PPC::VF16, PPC::VF17, PPC::VF18, PPC::VF19, }; // SPILLTOVSRRC_and_VFRC Bit set. const uint8_t SPILLTOVSRRC_and_VFRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x7f, }; // SPILLTOVSRRC_and_F4RC Register Class... const MCPhysReg SPILLTOVSRRC_and_F4RC[] = { PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, }; // SPILLTOVSRRC_and_F4RC Bit set. const uint8_t SPILLTOVSRRC_and_F4RCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x7f, }; // CTRRC8 Register Class... const MCPhysReg CTRRC8[] = { PPC::CTR8, }; // CTRRC8 Bit set. const uint8_t CTRRC8Bits[] = { 0x00, 0x00, 0x00, 0x10, }; // LR8RC Register Class... const MCPhysReg LR8RC[] = { PPC::LR8, }; // LR8RC Bit set. const uint8_t LR8RCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; // DMRROWRC Register Class... const MCPhysReg DMRROWRC[] = { PPC::DMRROW0, PPC::DMRROW1, PPC::DMRROW2, PPC::DMRROW3, PPC::DMRROW4, PPC::DMRROW5, PPC::DMRROW6, PPC::DMRROW7, PPC::DMRROW8, PPC::DMRROW9, PPC::DMRROW10, PPC::DMRROW11, PPC::DMRROW12, PPC::DMRROW13, PPC::DMRROW14, PPC::DMRROW15, PPC::DMRROW16, PPC::DMRROW17, PPC::DMRROW18, PPC::DMRROW19, PPC::DMRROW20, PPC::DMRROW21, PPC::DMRROW22, PPC::DMRROW23, PPC::DMRROW24, PPC::DMRROW25, PPC::DMRROW26, PPC::DMRROW27, PPC::DMRROW28, PPC::DMRROW29, PPC::DMRROW30, PPC::DMRROW31, PPC::DMRROW32, PPC::DMRROW33, PPC::DMRROW34, PPC::DMRROW35, PPC::DMRROW36, PPC::DMRROW37, PPC::DMRROW38, PPC::DMRROW39, PPC::DMRROW40, PPC::DMRROW41, PPC::DMRROW42, PPC::DMRROW43, PPC::DMRROW44, PPC::DMRROW45, PPC::DMRROW46, PPC::DMRROW47, PPC::DMRROW48, PPC::DMRROW49, PPC::DMRROW50, PPC::DMRROW51, PPC::DMRROW52, PPC::DMRROW53, PPC::DMRROW54, PPC::DMRROW55, PPC::DMRROW56, PPC::DMRROW57, PPC::DMRROW58, PPC::DMRROW59, PPC::DMRROW60, PPC::DMRROW61, PPC::DMRROW62, PPC::DMRROW63, }; // DMRROWRC Bit set. const uint8_t DMRROWRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; // VSRC Register Class... const MCPhysReg VSRC[] = { PPC::VSL0, PPC::VSL1, PPC::VSL2, PPC::VSL3, PPC::VSL4, PPC::VSL5, PPC::VSL6, PPC::VSL7, PPC::VSL8, PPC::VSL9, PPC::VSL10, PPC::VSL11, PPC::VSL12, PPC::VSL13, PPC::VSL31, PPC::VSL30, PPC::VSL29, PPC::VSL28, PPC::VSL27, PPC::VSL26, PPC::VSL25, PPC::VSL24, PPC::VSL23, PPC::VSL22, PPC::VSL21, PPC::VSL20, PPC::VSL19, PPC::VSL18, PPC::VSL17, PPC::VSL16, PPC::VSL15, PPC::VSL14, PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V0, PPC::V1, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V31, PPC::V30, PPC::V29, PPC::V28, PPC::V27, PPC::V26, PPC::V25, PPC::V24, PPC::V23, PPC::V22, PPC::V21, PPC::V20, }; // VSRC Bit set. const uint8_t VSRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // VSRC_with_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg VSRC_with_sub_64_in_SPILLTOVSRRC[] = { PPC::VSL0, PPC::VSL1, PPC::VSL2, PPC::VSL3, PPC::VSL4, PPC::VSL5, PPC::VSL6, PPC::VSL7, PPC::VSL8, PPC::VSL9, PPC::VSL10, PPC::VSL11, PPC::VSL12, PPC::VSL13, PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V0, PPC::V1, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, }; // VSRC_with_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t VSRC_with_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x01, }; // VRRC Register Class... const MCPhysReg VRRC[] = { PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V0, PPC::V1, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V31, PPC::V30, PPC::V29, PPC::V28, PPC::V27, PPC::V26, PPC::V25, PPC::V24, PPC::V23, PPC::V22, PPC::V21, PPC::V20, }; // VRRC Bit set. const uint8_t VRRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // VSLRC Register Class... const MCPhysReg VSLRC[] = { PPC::VSL0, PPC::VSL1, PPC::VSL2, PPC::VSL3, PPC::VSL4, PPC::VSL5, PPC::VSL6, PPC::VSL7, PPC::VSL8, PPC::VSL9, PPC::VSL10, PPC::VSL11, PPC::VSL12, PPC::VSL13, PPC::VSL31, PPC::VSL30, PPC::VSL29, PPC::VSL28, PPC::VSL27, PPC::VSL26, PPC::VSL25, PPC::VSL24, PPC::VSL23, PPC::VSL22, PPC::VSL21, PPC::VSL20, PPC::VSL19, PPC::VSL18, PPC::VSL17, PPC::VSL16, PPC::VSL15, PPC::VSL14, }; // VSLRC Bit set. const uint8_t VSLRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // VRRC_with_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg VRRC_with_sub_64_in_SPILLTOVSRRC[] = { PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V0, PPC::V1, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, }; // VRRC_with_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t VRRC_with_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x7f, }; // G8pRC Register Class... const MCPhysReg G8pRC[] = { PPC::G8p1, PPC::G8p2, PPC::G8p3, PPC::G8p4, PPC::G8p5, PPC::G8p14, PPC::G8p13, PPC::G8p12, PPC::G8p11, PPC::G8p10, PPC::G8p9, PPC::G8p8, PPC::G8p7, PPC::G8p15, PPC::G8p6, PPC::G8p0, }; // G8pRC Bit set. const uint8_t G8pRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xff, 0x0f, }; // G8pRC_with_sub_32_in_GPRC_NOR0 Register Class... const MCPhysReg G8pRC_with_sub_32_in_GPRC_NOR0[] = { PPC::G8p1, PPC::G8p2, PPC::G8p3, PPC::G8p4, PPC::G8p5, PPC::G8p14, PPC::G8p13, PPC::G8p12, PPC::G8p11, PPC::G8p10, PPC::G8p9, PPC::G8p8, PPC::G8p7, PPC::G8p15, PPC::G8p6, }; // G8pRC_with_sub_32_in_GPRC_NOR0 Bit set. const uint8_t G8pRC_with_sub_32_in_GPRC_NOR0Bits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0x0f, }; // VSLRC_with_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg VSLRC_with_sub_64_in_SPILLTOVSRRC[] = { PPC::VSL0, PPC::VSL1, PPC::VSL2, PPC::VSL3, PPC::VSL4, PPC::VSL5, PPC::VSL6, PPC::VSL7, PPC::VSL8, PPC::VSL9, PPC::VSL10, PPC::VSL11, PPC::VSL12, PPC::VSL13, }; // VSLRC_with_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t VSLRC_with_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x01, }; // DMRROWpRC Register Class... const MCPhysReg DMRROWpRC[] = { PPC::DMRROWp0, PPC::DMRROWp1, PPC::DMRROWp2, PPC::DMRROWp3, PPC::DMRROWp4, PPC::DMRROWp5, PPC::DMRROWp6, PPC::DMRROWp7, PPC::DMRROWp8, PPC::DMRROWp9, PPC::DMRROWp10, PPC::DMRROWp11, PPC::DMRROWp12, PPC::DMRROWp13, PPC::DMRROWp14, PPC::DMRROWp15, PPC::DMRROWp16, PPC::DMRROWp17, PPC::DMRROWp18, PPC::DMRROWp19, PPC::DMRROWp20, PPC::DMRROWp21, PPC::DMRROWp22, PPC::DMRROWp23, PPC::DMRROWp24, PPC::DMRROWp25, PPC::DMRROWp26, PPC::DMRROWp27, PPC::DMRROWp28, PPC::DMRROWp29, PPC::DMRROWp30, PPC::DMRROWp31, }; // DMRROWpRC Bit set. const uint8_t DMRROWpRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0x1f, }; // VSRpRC Register Class... const MCPhysReg VSRpRC[] = { PPC::VSRp17, PPC::VSRp18, PPC::VSRp16, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp31, PPC::VSRp30, PPC::VSRp29, PPC::VSRp28, PPC::VSRp27, PPC::VSRp26, PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, PPC::VSRp15, PPC::VSRp14, PPC::VSRp13, PPC::VSRp12, PPC::VSRp11, PPC::VSRp10, PPC::VSRp9, PPC::VSRp8, PPC::VSRp7, }; // VSRpRC Bit set. const uint8_t VSRpRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0x07, }; // VSRpRC_with_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg VSRpRC_with_sub_64_in_SPILLTOVSRRC[] = { PPC::VSRp17, PPC::VSRp18, PPC::VSRp16, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, }; // VSRpRC_with_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t VSRpRC_with_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 0xf8, 0x1f, }; // VSRpRC_with_sub_64_in_F4RC Register Class... const MCPhysReg VSRpRC_with_sub_64_in_F4RC[] = { PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, PPC::VSRp15, PPC::VSRp14, PPC::VSRp13, PPC::VSRp12, PPC::VSRp11, PPC::VSRp10, PPC::VSRp9, PPC::VSRp8, PPC::VSRp7, }; // VSRpRC_with_sub_64_in_F4RC Bit set. const uint8_t VSRpRC_with_sub_64_in_F4RCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x07, }; // VSRpRC_with_sub_64_in_VFRC Register Class... const MCPhysReg VSRpRC_with_sub_64_in_VFRC[] = { PPC::VSRp17, PPC::VSRp18, PPC::VSRp16, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp31, PPC::VSRp30, PPC::VSRp29, PPC::VSRp28, PPC::VSRp27, PPC::VSRp26, }; // VSRpRC_with_sub_64_in_VFRC Bit set. const uint8_t VSRpRC_with_sub_64_in_VFRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0x07, }; // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC Register Class... const MCPhysReg VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC[] = { PPC::VSRp17, PPC::VSRp18, PPC::VSRp16, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, }; // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC Bit set. const uint8_t VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x1f, }; // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC Register Class... const MCPhysReg VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC[] = { PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, }; // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC Bit set. const uint8_t VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, }; // ACCRC Register Class... const MCPhysReg ACCRC[] = { PPC::ACC0, PPC::ACC1, PPC::ACC2, PPC::ACC3, PPC::ACC4, PPC::ACC5, PPC::ACC6, PPC::ACC7, }; // ACCRC Bit set. const uint8_t ACCRCBits[] = { 0x00, 0xf8, 0x07, }; // UACCRC Register Class... const MCPhysReg UACCRC[] = { PPC::UACC0, PPC::UACC1, PPC::UACC2, PPC::UACC3, PPC::UACC4, PPC::UACC5, PPC::UACC6, PPC::UACC7, }; // UACCRC Bit set. const uint8_t UACCRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x07, }; // WACCRC Register Class... const MCPhysReg WACCRC[] = { PPC::WACC0, PPC::WACC1, PPC::WACC2, PPC::WACC3, PPC::WACC4, PPC::WACC5, PPC::WACC6, PPC::WACC7, }; // WACCRC Bit set. const uint8_t WACCRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x07, }; // WACC_HIRC Register Class... const MCPhysReg WACC_HIRC[] = { PPC::WACC_HI0, PPC::WACC_HI1, PPC::WACC_HI2, PPC::WACC_HI3, PPC::WACC_HI4, PPC::WACC_HI5, PPC::WACC_HI6, PPC::WACC_HI7, }; // WACC_HIRC Bit set. const uint8_t WACC_HIRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x07, }; // ACCRC_with_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg ACCRC_with_sub_64_in_SPILLTOVSRRC[] = { PPC::ACC0, PPC::ACC1, PPC::ACC2, PPC::ACC3, }; // ACCRC_with_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t ACCRC_with_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x78, }; // UACCRC_with_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg UACCRC_with_sub_64_in_SPILLTOVSRRC[] = { PPC::UACC0, PPC::UACC1, PPC::UACC2, PPC::UACC3, }; // UACCRC_with_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t UACCRC_with_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, }; // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC[] = { PPC::ACC0, PPC::ACC1, PPC::ACC2, }; // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x38, }; // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC Register Class... const MCPhysReg UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC[] = { PPC::UACC0, PPC::UACC1, PPC::UACC2, }; // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC Bit set. const uint8_t UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, }; // DMRRC Register Class... const MCPhysReg DMRRC[] = { PPC::DMR0, PPC::DMR1, PPC::DMR2, PPC::DMR3, PPC::DMR4, PPC::DMR5, PPC::DMR6, PPC::DMR7, }; // DMRRC Bit set. const uint8_t DMRRCBits[] = { 0x00, 0x00, 0x00, 0xe0, 0x1f, }; // DMRpRC Register Class... const MCPhysReg DMRpRC[] = { PPC::DMRp0, PPC::DMRp1, PPC::DMRp2, PPC::DMRp3, }; // DMRpRC Bit set. const uint8_t DMRpRCBits[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x01, }; } // end anonymous namespace #ifdef __GNUC__ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Woverlength-strings" #endif extern const char PPCRegClassStrings[] = { /* 0 */ "GPRC_and_GPRC_NOR0\0" /* 19 */ "SPERC_with_sub_32_in_GPRC_NOR0\0" /* 50 */ "G8pRC_with_sub_32_in_GPRC_NOR0\0" /* 81 */ "G8RC_and_G8RC_NOX0\0" /* 100 */ "CTRRC8\0" /* 107 */ "VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC\0" /* 151 */ "VSRpRC_with_sub_64_in_F4RC\0" /* 178 */ "F8RC\0" /* 183 */ "G8RC\0" /* 188 */ "LR8RC\0" /* 194 */ "UACCRC\0" /* 201 */ "WACCRC\0" /* 208 */ "SPERC\0" /* 214 */ "VRSAVERC\0" /* 223 */ "SPILLTOVSRRC_and_VSFRC\0" /* 246 */ "VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC\0" /* 290 */ "VSRpRC_with_sub_64_in_VFRC\0" /* 317 */ "WACC_HIRC\0" /* 327 */ "VSLRC\0" /* 333 */ "GPRC\0" /* 338 */ "CRRC\0" /* 343 */ "LRRC\0" /* 348 */ "DMRRC\0" /* 354 */ "UACCRC_with_sub_64_in_SPILLTOVSRRC\0" /* 389 */ "VSLRC_with_sub_64_in_SPILLTOVSRRC\0" /* 423 */ "VRRC_with_sub_64_in_SPILLTOVSRRC\0" /* 456 */ "VSRC_with_sub_64_in_SPILLTOVSRRC\0" /* 489 */ "VSRpRC_with_sub_64_in_SPILLTOVSRRC\0" /* 524 */ "UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC\0" /* 574 */ "CTRRC\0" /* 580 */ "VRRC\0" /* 585 */ "VSSRC\0" /* 591 */ "VSRC\0" /* 596 */ "CRBITRC\0" /* 604 */ "DMRROWRC\0" /* 613 */ "CARRYRC\0" /* 621 */ "G8pRC\0" /* 627 */ "DMRpRC\0" /* 634 */ "VSRpRC\0" /* 641 */ "DMRROWpRC\0" }; #ifdef __GNUC__ #pragma GCC diagnostic pop #endif extern const MCRegisterClass PPCMCRegisterClasses[] = { { VSSRC, VSSRCBits, 585, 64, sizeof(VSSRCBits), PPC::VSSRCRegClassID, 32, 1, true }, { GPRC, GPRCBits, 333, 34, sizeof(GPRCBits), PPC::GPRCRegClassID, 32, 1, true }, { GPRC_NOR0, GPRC_NOR0Bits, 9, 34, sizeof(GPRC_NOR0Bits), PPC::GPRC_NOR0RegClassID, 32, 1, true }, { GPRC_and_GPRC_NOR0, GPRC_and_GPRC_NOR0Bits, 0, 33, sizeof(GPRC_and_GPRC_NOR0Bits), PPC::GPRC_and_GPRC_NOR0RegClassID, 32, 1, true }, { CRBITRC, CRBITRCBits, 596, 32, sizeof(CRBITRCBits), PPC::CRBITRCRegClassID, 32, 1, true }, { F4RC, F4RCBits, 146, 32, sizeof(F4RCBits), PPC::F4RCRegClassID, 32, 1, true }, { CRRC, CRRCBits, 338, 8, sizeof(CRRCBits), PPC::CRRCRegClassID, 32, 1, true }, { CARRYRC, CARRYRCBits, 613, 2, sizeof(CARRYRCBits), PPC::CARRYRCRegClassID, 32, -1, true }, { CTRRC, CTRRCBits, 574, 1, sizeof(CTRRCBits), PPC::CTRRCRegClassID, 32, 1, false }, { LRRC, LRRCBits, 343, 1, sizeof(LRRCBits), PPC::LRRCRegClassID, 32, 1, false }, { VRSAVERC, VRSAVERCBits, 214, 1, sizeof(VRSAVERCBits), PPC::VRSAVERCRegClassID, 32, 1, true }, { SPILLTOVSRRC, SPILLTOVSRRCBits, 376, 68, sizeof(SPILLTOVSRRCBits), PPC::SPILLTOVSRRCRegClassID, 64, 1, true }, { VSFRC, VSFRCBits, 240, 64, sizeof(VSFRCBits), PPC::VSFRCRegClassID, 64, 1, true }, { G8RC, G8RCBits, 183, 34, sizeof(G8RCBits), PPC::G8RCRegClassID, 64, 1, true }, { G8RC_NOX0, G8RC_NOX0Bits, 90, 34, sizeof(G8RC_NOX0Bits), PPC::G8RC_NOX0RegClassID, 64, 1, true }, { SPILLTOVSRRC_and_VSFRC, SPILLTOVSRRC_and_VSFRCBits, 223, 34, sizeof(SPILLTOVSRRC_and_VSFRCBits), PPC::SPILLTOVSRRC_and_VSFRCRegClassID, 64, 1, true }, { G8RC_and_G8RC_NOX0, G8RC_and_G8RC_NOX0Bits, 81, 33, sizeof(G8RC_and_G8RC_NOX0Bits), PPC::G8RC_and_G8RC_NOX0RegClassID, 64, 1, true }, { F8RC, F8RCBits, 178, 32, sizeof(F8RCBits), PPC::F8RCRegClassID, 64, 1, true }, { SPERC, SPERCBits, 208, 32, sizeof(SPERCBits), PPC::SPERCRegClassID, 64, 1, true }, { VFRC, VFRCBits, 285, 32, sizeof(VFRCBits), PPC::VFRCRegClassID, 64, 1, true }, { SPERC_with_sub_32_in_GPRC_NOR0, SPERC_with_sub_32_in_GPRC_NOR0Bits, 19, 31, sizeof(SPERC_with_sub_32_in_GPRC_NOR0Bits), PPC::SPERC_with_sub_32_in_GPRC_NOR0RegClassID, 64, 1, true }, { SPILLTOVSRRC_and_VFRC, SPILLTOVSRRC_and_VFRCBits, 268, 20, sizeof(SPILLTOVSRRC_and_VFRCBits), PPC::SPILLTOVSRRC_and_VFRCRegClassID, 64, 1, true }, { SPILLTOVSRRC_and_F4RC, SPILLTOVSRRC_and_F4RCBits, 129, 14, sizeof(SPILLTOVSRRC_and_F4RCBits), PPC::SPILLTOVSRRC_and_F4RCRegClassID, 64, 1, true }, { CTRRC8, CTRRC8Bits, 100, 1, sizeof(CTRRC8Bits), PPC::CTRRC8RegClassID, 64, 1, false }, { LR8RC, LR8RCBits, 188, 1, sizeof(LR8RCBits), PPC::LR8RCRegClassID, 64, 1, false }, { DMRROWRC, DMRROWRCBits, 604, 64, sizeof(DMRROWRCBits), PPC::DMRROWRCRegClassID, 128, 1, true }, { VSRC, VSRCBits, 591, 64, sizeof(VSRCBits), PPC::VSRCRegClassID, 128, 1, true }, { VSRC_with_sub_64_in_SPILLTOVSRRC, VSRC_with_sub_64_in_SPILLTOVSRRCBits, 456, 34, sizeof(VSRC_with_sub_64_in_SPILLTOVSRRCBits), PPC::VSRC_with_sub_64_in_SPILLTOVSRRCRegClassID, 128, 1, true }, { VRRC, VRRCBits, 580, 32, sizeof(VRRCBits), PPC::VRRCRegClassID, 128, 1, true }, { VSLRC, VSLRCBits, 327, 32, sizeof(VSLRCBits), PPC::VSLRCRegClassID, 128, 1, true }, { VRRC_with_sub_64_in_SPILLTOVSRRC, VRRC_with_sub_64_in_SPILLTOVSRRCBits, 423, 20, sizeof(VRRC_with_sub_64_in_SPILLTOVSRRCBits), PPC::VRRC_with_sub_64_in_SPILLTOVSRRCRegClassID, 128, 1, true }, { G8pRC, G8pRCBits, 621, 16, sizeof(G8pRCBits), PPC::G8pRCRegClassID, 128, 1, true }, { G8pRC_with_sub_32_in_GPRC_NOR0, G8pRC_with_sub_32_in_GPRC_NOR0Bits, 50, 15, sizeof(G8pRC_with_sub_32_in_GPRC_NOR0Bits), PPC::G8pRC_with_sub_32_in_GPRC_NOR0RegClassID, 128, 1, true }, { VSLRC_with_sub_64_in_SPILLTOVSRRC, VSLRC_with_sub_64_in_SPILLTOVSRRCBits, 389, 14, sizeof(VSLRC_with_sub_64_in_SPILLTOVSRRCBits), PPC::VSLRC_with_sub_64_in_SPILLTOVSRRCRegClassID, 128, 1, true }, { DMRROWpRC, DMRROWpRCBits, 641, 32, sizeof(DMRROWpRCBits), PPC::DMRROWpRCRegClassID, 256, 1, true }, { VSRpRC, VSRpRCBits, 634, 32, sizeof(VSRpRCBits), PPC::VSRpRCRegClassID, 256, 1, true }, { VSRpRC_with_sub_64_in_SPILLTOVSRRC, VSRpRC_with_sub_64_in_SPILLTOVSRRCBits, 489, 17, sizeof(VSRpRC_with_sub_64_in_SPILLTOVSRRCBits), PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClassID, 256, 1, true }, { VSRpRC_with_sub_64_in_F4RC, VSRpRC_with_sub_64_in_F4RCBits, 151, 16, sizeof(VSRpRC_with_sub_64_in_F4RCBits), PPC::VSRpRC_with_sub_64_in_F4RCRegClassID, 256, 1, true }, { VSRpRC_with_sub_64_in_VFRC, VSRpRC_with_sub_64_in_VFRCBits, 290, 16, sizeof(VSRpRC_with_sub_64_in_VFRCBits), PPC::VSRpRC_with_sub_64_in_VFRCRegClassID, 256, 1, true }, { VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC, VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCBits, 246, 10, sizeof(VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCBits), PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCRegClassID, 256, 1, true }, { VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC, VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCBits, 107, 7, sizeof(VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCBits), PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCRegClassID, 256, 1, true }, { ACCRC, ACCRCBits, 195, 8, sizeof(ACCRCBits), PPC::ACCRCRegClassID, 512, 1, true }, { UACCRC, UACCRCBits, 194, 8, sizeof(UACCRCBits), PPC::UACCRCRegClassID, 512, 1, true }, { WACCRC, WACCRCBits, 201, 8, sizeof(WACCRCBits), PPC::WACCRCRegClassID, 512, 1, true }, { WACC_HIRC, WACC_HIRCBits, 317, 8, sizeof(WACC_HIRCBits), PPC::WACC_HIRCRegClassID, 512, 1, true }, { ACCRC_with_sub_64_in_SPILLTOVSRRC, ACCRC_with_sub_64_in_SPILLTOVSRRCBits, 355, 4, sizeof(ACCRC_with_sub_64_in_SPILLTOVSRRCBits), PPC::ACCRC_with_sub_64_in_SPILLTOVSRRCRegClassID, 512, 1, true }, { UACCRC_with_sub_64_in_SPILLTOVSRRC, UACCRC_with_sub_64_in_SPILLTOVSRRCBits, 354, 4, sizeof(UACCRC_with_sub_64_in_SPILLTOVSRRCBits), PPC::UACCRC_with_sub_64_in_SPILLTOVSRRCRegClassID, 512, 1, true }, { ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC, ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCBits, 525, 3, sizeof(ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCBits), PPC::ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClassID, 512, 1, true }, { UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC, UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCBits, 524, 3, sizeof(UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCBits), PPC::UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClassID, 512, 1, true }, { DMRRC, DMRRCBits, 348, 8, sizeof(DMRRCBits), PPC::DMRRCRegClassID, 1024, 1, true }, { DMRpRC, DMRpRCBits, 627, 4, sizeof(DMRpRCBits), PPC::DMRpRCRegClassID, 2048, 1, true }, }; // PPC Dwarf<->LLVM register mappings. extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour0Dwarf2L[] = { { 0U, PPC::X0 }, { 1U, PPC::X1 }, { 2U, PPC::X2 }, { 3U, PPC::X3 }, { 4U, PPC::X4 }, { 5U, PPC::X5 }, { 6U, PPC::X6 }, { 7U, PPC::X7 }, { 8U, PPC::X8 }, { 9U, PPC::X9 }, { 10U, PPC::X10 }, { 11U, PPC::X11 }, { 12U, PPC::X12 }, { 13U, PPC::X13 }, { 14U, PPC::X14 }, { 15U, PPC::X15 }, { 16U, PPC::X16 }, { 17U, PPC::X17 }, { 18U, PPC::X18 }, { 19U, PPC::X19 }, { 20U, PPC::X20 }, { 21U, PPC::X21 }, { 22U, PPC::X22 }, { 23U, PPC::X23 }, { 24U, PPC::X24 }, { 25U, PPC::X25 }, { 26U, PPC::X26 }, { 27U, PPC::X27 }, { 28U, PPC::X28 }, { 29U, PPC::X29 }, { 30U, PPC::X30 }, { 31U, PPC::X31 }, { 32U, PPC::F0 }, { 33U, PPC::F1 }, { 34U, PPC::F2 }, { 35U, PPC::F3 }, { 36U, PPC::F4 }, { 37U, PPC::F5 }, { 38U, PPC::F6 }, { 39U, PPC::F7 }, { 40U, PPC::F8 }, { 41U, PPC::F9 }, { 42U, PPC::F10 }, { 43U, PPC::F11 }, { 44U, PPC::F12 }, { 45U, PPC::F13 }, { 46U, PPC::F14 }, { 47U, PPC::F15 }, { 48U, PPC::F16 }, { 49U, PPC::F17 }, { 50U, PPC::F18 }, { 51U, PPC::F19 }, { 52U, PPC::F20 }, { 53U, PPC::F21 }, { 54U, PPC::F22 }, { 55U, PPC::F23 }, { 56U, PPC::F24 }, { 57U, PPC::F25 }, { 58U, PPC::F26 }, { 59U, PPC::F27 }, { 60U, PPC::F28 }, { 61U, PPC::F29 }, { 62U, PPC::F30 }, { 63U, PPC::F31 }, { 65U, PPC::LR8 }, { 66U, PPC::CTR8 }, { 68U, PPC::CR0 }, { 69U, PPC::CR1 }, { 70U, PPC::CR2 }, { 71U, PPC::CR3 }, { 72U, PPC::CR4 }, { 73U, PPC::CR5 }, { 74U, PPC::CR6 }, { 75U, PPC::CR7 }, { 76U, PPC::XER }, { 77U, PPC::VF0 }, { 78U, PPC::VF1 }, { 79U, PPC::VF2 }, { 80U, PPC::VF3 }, { 81U, PPC::VF4 }, { 82U, PPC::VF5 }, { 83U, PPC::VF6 }, { 84U, PPC::VF7 }, { 85U, PPC::VF8 }, { 86U, PPC::VF9 }, { 87U, PPC::VF10 }, { 88U, PPC::VF11 }, { 89U, PPC::VF12 }, { 90U, PPC::VF13 }, { 91U, PPC::VF14 }, { 92U, PPC::VF15 }, { 93U, PPC::VF16 }, { 94U, PPC::VF17 }, { 95U, PPC::VF18 }, { 96U, PPC::VF19 }, { 97U, PPC::VF20 }, { 98U, PPC::VF21 }, { 99U, PPC::VF22 }, { 100U, PPC::VF23 }, { 101U, PPC::VF24 }, { 102U, PPC::VF25 }, { 103U, PPC::VF26 }, { 104U, PPC::VF27 }, { 105U, PPC::VF28 }, { 106U, PPC::VF29 }, { 107U, PPC::VF30 }, { 108U, PPC::VF31 }, { 109U, PPC::VRSAVE }, { 612U, PPC::SPEFSCR }, { 1200U, PPC::S0 }, { 1201U, PPC::S1 }, { 1202U, PPC::S2 }, { 1203U, PPC::S3 }, { 1204U, PPC::S4 }, { 1205U, PPC::S5 }, { 1206U, PPC::S6 }, { 1207U, PPC::S7 }, { 1208U, PPC::S8 }, { 1209U, PPC::S9 }, { 1210U, PPC::S10 }, { 1211U, PPC::S11 }, { 1212U, PPC::S12 }, { 1213U, PPC::S13 }, { 1214U, PPC::S14 }, { 1215U, PPC::S15 }, { 1216U, PPC::S16 }, { 1217U, PPC::S17 }, { 1218U, PPC::S18 }, { 1219U, PPC::S19 }, { 1220U, PPC::S20 }, { 1221U, PPC::S21 }, { 1222U, PPC::S22 }, { 1223U, PPC::S23 }, { 1224U, PPC::S24 }, { 1225U, PPC::S25 }, { 1226U, PPC::S26 }, { 1227U, PPC::S27 }, { 1228U, PPC::S28 }, { 1229U, PPC::S29 }, { 1230U, PPC::S30 }, { 1231U, PPC::S31 }, }; extern const unsigned PPCDwarfFlavour0Dwarf2LSize = std::size(PPCDwarfFlavour0Dwarf2L); extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour1Dwarf2L[] = { { 0U, PPC::R0 }, { 1U, PPC::R1 }, { 2U, PPC::R2 }, { 3U, PPC::R3 }, { 4U, PPC::R4 }, { 5U, PPC::R5 }, { 6U, PPC::R6 }, { 7U, PPC::R7 }, { 8U, PPC::R8 }, { 9U, PPC::R9 }, { 10U, PPC::R10 }, { 11U, PPC::R11 }, { 12U, PPC::R12 }, { 13U, PPC::R13 }, { 14U, PPC::R14 }, { 15U, PPC::R15 }, { 16U, PPC::R16 }, { 17U, PPC::R17 }, { 18U, PPC::R18 }, { 19U, PPC::R19 }, { 20U, PPC::R20 }, { 21U, PPC::R21 }, { 22U, PPC::R22 }, { 23U, PPC::R23 }, { 24U, PPC::R24 }, { 25U, PPC::R25 }, { 26U, PPC::R26 }, { 27U, PPC::R27 }, { 28U, PPC::R28 }, { 29U, PPC::R29 }, { 30U, PPC::R30 }, { 31U, PPC::R31 }, { 32U, PPC::F0 }, { 33U, PPC::F1 }, { 34U, PPC::F2 }, { 35U, PPC::F3 }, { 36U, PPC::F4 }, { 37U, PPC::F5 }, { 38U, PPC::F6 }, { 39U, PPC::F7 }, { 40U, PPC::F8 }, { 41U, PPC::F9 }, { 42U, PPC::F10 }, { 43U, PPC::F11 }, { 44U, PPC::F12 }, { 45U, PPC::F13 }, { 46U, PPC::F14 }, { 47U, PPC::F15 }, { 48U, PPC::F16 }, { 49U, PPC::F17 }, { 50U, PPC::F18 }, { 51U, PPC::F19 }, { 52U, PPC::F20 }, { 53U, PPC::F21 }, { 54U, PPC::F22 }, { 55U, PPC::F23 }, { 56U, PPC::F24 }, { 57U, PPC::F25 }, { 58U, PPC::F26 }, { 59U, PPC::F27 }, { 60U, PPC::F28 }, { 61U, PPC::F29 }, { 62U, PPC::F30 }, { 63U, PPC::F31 }, { 65U, PPC::LR }, { 66U, PPC::CTR }, { 68U, PPC::CR0 }, { 69U, PPC::CR1 }, { 70U, PPC::CR2 }, { 71U, PPC::CR3 }, { 72U, PPC::CR4 }, { 73U, PPC::CR5 }, { 74U, PPC::CR6 }, { 75U, PPC::CR7 }, { 77U, PPC::VF0 }, { 78U, PPC::VF1 }, { 79U, PPC::VF2 }, { 80U, PPC::VF3 }, { 81U, PPC::VF4 }, { 82U, PPC::VF5 }, { 83U, PPC::VF6 }, { 84U, PPC::VF7 }, { 85U, PPC::VF8 }, { 86U, PPC::VF9 }, { 87U, PPC::VF10 }, { 88U, PPC::VF11 }, { 89U, PPC::VF12 }, { 90U, PPC::VF13 }, { 91U, PPC::VF14 }, { 92U, PPC::VF15 }, { 93U, PPC::VF16 }, { 94U, PPC::VF17 }, { 95U, PPC::VF18 }, { 96U, PPC::VF19 }, { 97U, PPC::VF20 }, { 98U, PPC::VF21 }, { 99U, PPC::VF22 }, { 100U, PPC::VF23 }, { 101U, PPC::VF24 }, { 102U, PPC::VF25 }, { 103U, PPC::VF26 }, { 104U, PPC::VF27 }, { 105U, PPC::VF28 }, { 106U, PPC::VF29 }, { 107U, PPC::VF30 }, { 108U, PPC::VF31 }, { 112U, PPC::SPEFSCR }, { 1200U, PPC::S0 }, { 1201U, PPC::S1 }, { 1202U, PPC::S2 }, { 1203U, PPC::S3 }, { 1204U, PPC::S4 }, { 1205U, PPC::S5 }, { 1206U, PPC::S6 }, { 1207U, PPC::S7 }, { 1208U, PPC::S8 }, { 1209U, PPC::S9 }, { 1210U, PPC::S10 }, { 1211U, PPC::S11 }, { 1212U, PPC::S12 }, { 1213U, PPC::S13 }, { 1214U, PPC::S14 }, { 1215U, PPC::S15 }, { 1216U, PPC::S16 }, { 1217U, PPC::S17 }, { 1218U, PPC::S18 }, { 1219U, PPC::S19 }, { 1220U, PPC::S20 }, { 1221U, PPC::S21 }, { 1222U, PPC::S22 }, { 1223U, PPC::S23 }, { 1224U, PPC::S24 }, { 1225U, PPC::S25 }, { 1226U, PPC::S26 }, { 1227U, PPC::S27 }, { 1228U, PPC::S28 }, { 1229U, PPC::S29 }, { 1230U, PPC::S30 }, { 1231U, PPC::S31 }, }; extern const unsigned PPCDwarfFlavour1Dwarf2LSize = std::size(PPCDwarfFlavour1Dwarf2L); extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour0Dwarf2L[] = { { 0U, PPC::X0 }, { 1U, PPC::X1 }, { 2U, PPC::X2 }, { 3U, PPC::X3 }, { 4U, PPC::X4 }, { 5U, PPC::X5 }, { 6U, PPC::X6 }, { 7U, PPC::X7 }, { 8U, PPC::X8 }, { 9U, PPC::X9 }, { 10U, PPC::X10 }, { 11U, PPC::X11 }, { 12U, PPC::X12 }, { 13U, PPC::X13 }, { 14U, PPC::X14 }, { 15U, PPC::X15 }, { 16U, PPC::X16 }, { 17U, PPC::X17 }, { 18U, PPC::X18 }, { 19U, PPC::X19 }, { 20U, PPC::X20 }, { 21U, PPC::X21 }, { 22U, PPC::X22 }, { 23U, PPC::X23 }, { 24U, PPC::X24 }, { 25U, PPC::X25 }, { 26U, PPC::X26 }, { 27U, PPC::X27 }, { 28U, PPC::X28 }, { 29U, PPC::X29 }, { 30U, PPC::X30 }, { 31U, PPC::X31 }, { 32U, PPC::F0 }, { 33U, PPC::F1 }, { 34U, PPC::F2 }, { 35U, PPC::F3 }, { 36U, PPC::F4 }, { 37U, PPC::F5 }, { 38U, PPC::F6 }, { 39U, PPC::F7 }, { 40U, PPC::F8 }, { 41U, PPC::F9 }, { 42U, PPC::F10 }, { 43U, PPC::F11 }, { 44U, PPC::F12 }, { 45U, PPC::F13 }, { 46U, PPC::F14 }, { 47U, PPC::F15 }, { 48U, PPC::F16 }, { 49U, PPC::F17 }, { 50U, PPC::F18 }, { 51U, PPC::F19 }, { 52U, PPC::F20 }, { 53U, PPC::F21 }, { 54U, PPC::F22 }, { 55U, PPC::F23 }, { 56U, PPC::F24 }, { 57U, PPC::F25 }, { 58U, PPC::F26 }, { 59U, PPC::F27 }, { 60U, PPC::F28 }, { 61U, PPC::F29 }, { 62U, PPC::F30 }, { 63U, PPC::F31 }, { 65U, PPC::LR8 }, { 66U, PPC::CTR8 }, { 68U, PPC::CR0 }, { 69U, PPC::CR1 }, { 70U, PPC::CR2 }, { 71U, PPC::CR3 }, { 72U, PPC::CR4 }, { 73U, PPC::CR5 }, { 74U, PPC::CR6 }, { 75U, PPC::CR7 }, { 76U, PPC::XER }, { 77U, PPC::VF0 }, { 78U, PPC::VF1 }, { 79U, PPC::VF2 }, { 80U, PPC::VF3 }, { 81U, PPC::VF4 }, { 82U, PPC::VF5 }, { 83U, PPC::VF6 }, { 84U, PPC::VF7 }, { 85U, PPC::VF8 }, { 86U, PPC::VF9 }, { 87U, PPC::VF10 }, { 88U, PPC::VF11 }, { 89U, PPC::VF12 }, { 90U, PPC::VF13 }, { 91U, PPC::VF14 }, { 92U, PPC::VF15 }, { 93U, PPC::VF16 }, { 94U, PPC::VF17 }, { 95U, PPC::VF18 }, { 96U, PPC::VF19 }, { 97U, PPC::VF20 }, { 98U, PPC::VF21 }, { 99U, PPC::VF22 }, { 100U, PPC::VF23 }, { 101U, PPC::VF24 }, { 102U, PPC::VF25 }, { 103U, PPC::VF26 }, { 104U, PPC::VF27 }, { 105U, PPC::VF28 }, { 106U, PPC::VF29 }, { 107U, PPC::VF30 }, { 108U, PPC::VF31 }, { 109U, PPC::VRSAVE }, { 612U, PPC::SPEFSCR }, { 1200U, PPC::S0 }, { 1201U, PPC::S1 }, { 1202U, PPC::S2 }, { 1203U, PPC::S3 }, { 1204U, PPC::S4 }, { 1205U, PPC::S5 }, { 1206U, PPC::S6 }, { 1207U, PPC::S7 }, { 1208U, PPC::S8 }, { 1209U, PPC::S9 }, { 1210U, PPC::S10 }, { 1211U, PPC::S11 }, { 1212U, PPC::S12 }, { 1213U, PPC::S13 }, { 1214U, PPC::S14 }, { 1215U, PPC::S15 }, { 1216U, PPC::S16 }, { 1217U, PPC::S17 }, { 1218U, PPC::S18 }, { 1219U, PPC::S19 }, { 1220U, PPC::S20 }, { 1221U, PPC::S21 }, { 1222U, PPC::S22 }, { 1223U, PPC::S23 }, { 1224U, PPC::S24 }, { 1225U, PPC::S25 }, { 1226U, PPC::S26 }, { 1227U, PPC::S27 }, { 1228U, PPC::S28 }, { 1229U, PPC::S29 }, { 1230U, PPC::S30 }, { 1231U, PPC::S31 }, }; extern const unsigned PPCEHFlavour0Dwarf2LSize = std::size(PPCEHFlavour0Dwarf2L); extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour1Dwarf2L[] = { { 0U, PPC::R0 }, { 1U, PPC::R1 }, { 2U, PPC::R2 }, { 3U, PPC::R3 }, { 4U, PPC::R4 }, { 5U, PPC::R5 }, { 6U, PPC::R6 }, { 7U, PPC::R7 }, { 8U, PPC::R8 }, { 9U, PPC::R9 }, { 10U, PPC::R10 }, { 11U, PPC::R11 }, { 12U, PPC::R12 }, { 13U, PPC::R13 }, { 14U, PPC::R14 }, { 15U, PPC::R15 }, { 16U, PPC::R16 }, { 17U, PPC::R17 }, { 18U, PPC::R18 }, { 19U, PPC::R19 }, { 20U, PPC::R20 }, { 21U, PPC::R21 }, { 22U, PPC::R22 }, { 23U, PPC::R23 }, { 24U, PPC::R24 }, { 25U, PPC::R25 }, { 26U, PPC::R26 }, { 27U, PPC::R27 }, { 28U, PPC::R28 }, { 29U, PPC::R29 }, { 30U, PPC::R30 }, { 31U, PPC::R31 }, { 32U, PPC::F0 }, { 33U, PPC::F1 }, { 34U, PPC::F2 }, { 35U, PPC::F3 }, { 36U, PPC::F4 }, { 37U, PPC::F5 }, { 38U, PPC::F6 }, { 39U, PPC::F7 }, { 40U, PPC::F8 }, { 41U, PPC::F9 }, { 42U, PPC::F10 }, { 43U, PPC::F11 }, { 44U, PPC::F12 }, { 45U, PPC::F13 }, { 46U, PPC::F14 }, { 47U, PPC::F15 }, { 48U, PPC::F16 }, { 49U, PPC::F17 }, { 50U, PPC::F18 }, { 51U, PPC::F19 }, { 52U, PPC::F20 }, { 53U, PPC::F21 }, { 54U, PPC::F22 }, { 55U, PPC::F23 }, { 56U, PPC::F24 }, { 57U, PPC::F25 }, { 58U, PPC::F26 }, { 59U, PPC::F27 }, { 60U, PPC::F28 }, { 61U, PPC::F29 }, { 62U, PPC::F30 }, { 63U, PPC::F31 }, { 65U, PPC::LR }, { 66U, PPC::CTR }, { 68U, PPC::CR0 }, { 69U, PPC::CR1 }, { 70U, PPC::CR2 }, { 71U, PPC::CR3 }, { 72U, PPC::CR4 }, { 73U, PPC::CR5 }, { 74U, PPC::CR6 }, { 75U, PPC::CR7 }, { 77U, PPC::VF0 }, { 78U, PPC::VF1 }, { 79U, PPC::VF2 }, { 80U, PPC::VF3 }, { 81U, PPC::VF4 }, { 82U, PPC::VF5 }, { 83U, PPC::VF6 }, { 84U, PPC::VF7 }, { 85U, PPC::VF8 }, { 86U, PPC::VF9 }, { 87U, PPC::VF10 }, { 88U, PPC::VF11 }, { 89U, PPC::VF12 }, { 90U, PPC::VF13 }, { 91U, PPC::VF14 }, { 92U, PPC::VF15 }, { 93U, PPC::VF16 }, { 94U, PPC::VF17 }, { 95U, PPC::VF18 }, { 96U, PPC::VF19 }, { 97U, PPC::VF20 }, { 98U, PPC::VF21 }, { 99U, PPC::VF22 }, { 100U, PPC::VF23 }, { 101U, PPC::VF24 }, { 102U, PPC::VF25 }, { 103U, PPC::VF26 }, { 104U, PPC::VF27 }, { 105U, PPC::VF28 }, { 106U, PPC::VF29 }, { 107U, PPC::VF30 }, { 108U, PPC::VF31 }, { 112U, PPC::SPEFSCR }, { 1200U, PPC::S0 }, { 1201U, PPC::S1 }, { 1202U, PPC::S2 }, { 1203U, PPC::S3 }, { 1204U, PPC::S4 }, { 1205U, PPC::S5 }, { 1206U, PPC::S6 }, { 1207U, PPC::S7 }, { 1208U, PPC::S8 }, { 1209U, PPC::S9 }, { 1210U, PPC::S10 }, { 1211U, PPC::S11 }, { 1212U, PPC::S12 }, { 1213U, PPC::S13 }, { 1214U, PPC::S14 }, { 1215U, PPC::S15 }, { 1216U, PPC::S16 }, { 1217U, PPC::S17 }, { 1218U, PPC::S18 }, { 1219U, PPC::S19 }, { 1220U, PPC::S20 }, { 1221U, PPC::S21 }, { 1222U, PPC::S22 }, { 1223U, PPC::S23 }, { 1224U, PPC::S24 }, { 1225U, PPC::S25 }, { 1226U, PPC::S26 }, { 1227U, PPC::S27 }, { 1228U, PPC::S28 }, { 1229U, PPC::S29 }, { 1230U, PPC::S30 }, { 1231U, PPC::S31 }, }; extern const unsigned PPCEHFlavour1Dwarf2LSize = std::size(PPCEHFlavour1Dwarf2L); extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour0L2Dwarf[] = { { PPC::CARRY, 76U }, { PPC::CTR, -2U }, { PPC::LR, -2U }, { PPC::SPEFSCR, 612U }, { PPC::VRSAVE, 109U }, { PPC::XER, 76U }, { PPC::ZERO, -2U }, { PPC::CR0, 68U }, { PPC::CR1, 69U }, { PPC::CR2, 70U }, { PPC::CR3, 71U }, { PPC::CR4, 72U }, { PPC::CR5, 73U }, { PPC::CR6, 74U }, { PPC::CR7, 75U }, { PPC::CTR8, 66U }, { PPC::F0, 32U }, { PPC::F1, 33U }, { PPC::F2, 34U }, { PPC::F3, 35U }, { PPC::F4, 36U }, { PPC::F5, 37U }, { PPC::F6, 38U }, { PPC::F7, 39U }, { PPC::F8, 40U }, { PPC::F9, 41U }, { PPC::F10, 42U }, { PPC::F11, 43U }, { PPC::F12, 44U }, { PPC::F13, 45U }, { PPC::F14, 46U }, { PPC::F15, 47U }, { PPC::F16, 48U }, { PPC::F17, 49U }, { PPC::F18, 50U }, { PPC::F19, 51U }, { PPC::F20, 52U }, { PPC::F21, 53U }, { PPC::F22, 54U }, { PPC::F23, 55U }, { PPC::F24, 56U }, { PPC::F25, 57U }, { PPC::F26, 58U }, { PPC::F27, 59U }, { PPC::F28, 60U }, { PPC::F29, 61U }, { PPC::F30, 62U }, { PPC::F31, 63U }, { PPC::LR8, 65U }, { PPC::R0, -2U }, { PPC::R1, -2U }, { PPC::R2, -2U }, { PPC::R3, -2U }, { PPC::R4, -2U }, { PPC::R5, -2U }, { PPC::R6, -2U }, { PPC::R7, -2U }, { PPC::R8, -2U }, { PPC::R9, -2U }, { PPC::R10, -2U }, { PPC::R11, -2U }, { PPC::R12, -2U }, { PPC::R13, -2U }, { PPC::R14, -2U }, { PPC::R15, -2U }, { PPC::R16, -2U }, { PPC::R17, -2U }, { PPC::R18, -2U }, { PPC::R19, -2U }, { PPC::R20, -2U }, { PPC::R21, -2U }, { PPC::R22, -2U }, { PPC::R23, -2U }, { PPC::R24, -2U }, { PPC::R25, -2U }, { PPC::R26, -2U }, { PPC::R27, -2U }, { PPC::R28, -2U }, { PPC::R29, -2U }, { PPC::R30, -2U }, { PPC::R31, -2U }, { PPC::S0, 1200U }, { PPC::S1, 1201U }, { PPC::S2, 1202U }, { PPC::S3, 1203U }, { PPC::S4, 1204U }, { PPC::S5, 1205U }, { PPC::S6, 1206U }, { PPC::S7, 1207U }, { PPC::S8, 1208U }, { PPC::S9, 1209U }, { PPC::S10, 1210U }, { PPC::S11, 1211U }, { PPC::S12, 1212U }, { PPC::S13, 1213U }, { PPC::S14, 1214U }, { PPC::S15, 1215U }, { PPC::S16, 1216U }, { PPC::S17, 1217U }, { PPC::S18, 1218U }, { PPC::S19, 1219U }, { PPC::S20, 1220U }, { PPC::S21, 1221U }, { PPC::S22, 1222U }, { PPC::S23, 1223U }, { PPC::S24, 1224U }, { PPC::S25, 1225U }, { PPC::S26, 1226U }, { PPC::S27, 1227U }, { PPC::S28, 1228U }, { PPC::S29, 1229U }, { PPC::S30, 1230U }, { PPC::S31, 1231U }, { PPC::V0, 77U }, { PPC::V1, 78U }, { PPC::V2, 79U }, { PPC::V3, 80U }, { PPC::V4, 81U }, { PPC::V5, 82U }, { PPC::V6, 83U }, { PPC::V7, 84U }, { PPC::V8, 85U }, { PPC::V9, 86U }, { PPC::V10, 87U }, { PPC::V11, 88U }, { PPC::V12, 89U }, { PPC::V13, 90U }, { PPC::V14, 91U }, { PPC::V15, 92U }, { PPC::V16, 93U }, { PPC::V17, 94U }, { PPC::V18, 95U }, { PPC::V19, 96U }, { PPC::V20, 97U }, { PPC::V21, 98U }, { PPC::V22, 99U }, { PPC::V23, 100U }, { PPC::V24, 101U }, { PPC::V25, 102U }, { PPC::V26, 103U }, { PPC::V27, 104U }, { PPC::V28, 105U }, { PPC::V29, 106U }, { PPC::V30, 107U }, { PPC::V31, 108U }, { PPC::VF0, 77U }, { PPC::VF1, 78U }, { PPC::VF2, 79U }, { PPC::VF3, 80U }, { PPC::VF4, 81U }, { PPC::VF5, 82U }, { PPC::VF6, 83U }, { PPC::VF7, 84U }, { PPC::VF8, 85U }, { PPC::VF9, 86U }, { PPC::VF10, 87U }, { PPC::VF11, 88U }, { PPC::VF12, 89U }, { PPC::VF13, 90U }, { PPC::VF14, 91U }, { PPC::VF15, 92U }, { PPC::VF16, 93U }, { PPC::VF17, 94U }, { PPC::VF18, 95U }, { PPC::VF19, 96U }, { PPC::VF20, 97U }, { PPC::VF21, 98U }, { PPC::VF22, 99U }, { PPC::VF23, 100U }, { PPC::VF24, 101U }, { PPC::VF25, 102U }, { PPC::VF26, 103U }, { PPC::VF27, 104U }, { PPC::VF28, 105U }, { PPC::VF29, 106U }, { PPC::VF30, 107U }, { PPC::VF31, 108U }, { PPC::VSL0, 32U }, { PPC::VSL1, 33U }, { PPC::VSL2, 34U }, { PPC::VSL3, 35U }, { PPC::VSL4, 36U }, { PPC::VSL5, 37U }, { PPC::VSL6, 38U }, { PPC::VSL7, 39U }, { PPC::VSL8, 40U }, { PPC::VSL9, 41U }, { PPC::VSL10, 42U }, { PPC::VSL11, 43U }, { PPC::VSL12, 44U }, { PPC::VSL13, 45U }, { PPC::VSL14, 46U }, { PPC::VSL15, 47U }, { PPC::VSL16, 48U }, { PPC::VSL17, 49U }, { PPC::VSL18, 50U }, { PPC::VSL19, 51U }, { PPC::VSL20, 52U }, { PPC::VSL21, 53U }, { PPC::VSL22, 54U }, { PPC::VSL23, 55U }, { PPC::VSL24, 56U }, { PPC::VSL25, 57U }, { PPC::VSL26, 58U }, { PPC::VSL27, 59U }, { PPC::VSL28, 60U }, { PPC::VSL29, 61U }, { PPC::VSL30, 62U }, { PPC::VSL31, 63U }, { PPC::X0, 0U }, { PPC::X1, 1U }, { PPC::X2, 2U }, { PPC::X3, 3U }, { PPC::X4, 4U }, { PPC::X5, 5U }, { PPC::X6, 6U }, { PPC::X7, 7U }, { PPC::X8, 8U }, { PPC::X9, 9U }, { PPC::X10, 10U }, { PPC::X11, 11U }, { PPC::X12, 12U }, { PPC::X13, 13U }, { PPC::X14, 14U }, { PPC::X15, 15U }, { PPC::X16, 16U }, { PPC::X17, 17U }, { PPC::X18, 18U }, { PPC::X19, 19U }, { PPC::X20, 20U }, { PPC::X21, 21U }, { PPC::X22, 22U }, { PPC::X23, 23U }, { PPC::X24, 24U }, { PPC::X25, 25U }, { PPC::X26, 26U }, { PPC::X27, 27U }, { PPC::X28, 28U }, { PPC::X29, 29U }, { PPC::X30, 30U }, { PPC::X31, 31U }, { PPC::ZERO8, 0U }, }; extern const unsigned PPCDwarfFlavour0L2DwarfSize = std::size(PPCDwarfFlavour0L2Dwarf); extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour1L2Dwarf[] = { { PPC::CTR, 66U }, { PPC::LR, 65U }, { PPC::SPEFSCR, 112U }, { PPC::ZERO, 0U }, { PPC::CR0, 68U }, { PPC::CR1, 69U }, { PPC::CR2, 70U }, { PPC::CR3, 71U }, { PPC::CR4, 72U }, { PPC::CR5, 73U }, { PPC::CR6, 74U }, { PPC::CR7, 75U }, { PPC::CTR8, -2U }, { PPC::F0, 32U }, { PPC::F1, 33U }, { PPC::F2, 34U }, { PPC::F3, 35U }, { PPC::F4, 36U }, { PPC::F5, 37U }, { PPC::F6, 38U }, { PPC::F7, 39U }, { PPC::F8, 40U }, { PPC::F9, 41U }, { PPC::F10, 42U }, { PPC::F11, 43U }, { PPC::F12, 44U }, { PPC::F13, 45U }, { PPC::F14, 46U }, { PPC::F15, 47U }, { PPC::F16, 48U }, { PPC::F17, 49U }, { PPC::F18, 50U }, { PPC::F19, 51U }, { PPC::F20, 52U }, { PPC::F21, 53U }, { PPC::F22, 54U }, { PPC::F23, 55U }, { PPC::F24, 56U }, { PPC::F25, 57U }, { PPC::F26, 58U }, { PPC::F27, 59U }, { PPC::F28, 60U }, { PPC::F29, 61U }, { PPC::F30, 62U }, { PPC::F31, 63U }, { PPC::LR8, -2U }, { PPC::R0, 0U }, { PPC::R1, 1U }, { PPC::R2, 2U }, { PPC::R3, 3U }, { PPC::R4, 4U }, { PPC::R5, 5U }, { PPC::R6, 6U }, { PPC::R7, 7U }, { PPC::R8, 8U }, { PPC::R9, 9U }, { PPC::R10, 10U }, { PPC::R11, 11U }, { PPC::R12, 12U }, { PPC::R13, 13U }, { PPC::R14, 14U }, { PPC::R15, 15U }, { PPC::R16, 16U }, { PPC::R17, 17U }, { PPC::R18, 18U }, { PPC::R19, 19U }, { PPC::R20, 20U }, { PPC::R21, 21U }, { PPC::R22, 22U }, { PPC::R23, 23U }, { PPC::R24, 24U }, { PPC::R25, 25U }, { PPC::R26, 26U }, { PPC::R27, 27U }, { PPC::R28, 28U }, { PPC::R29, 29U }, { PPC::R30, 30U }, { PPC::R31, 31U }, { PPC::S0, 1200U }, { PPC::S1, 1201U }, { PPC::S2, 1202U }, { PPC::S3, 1203U }, { PPC::S4, 1204U }, { PPC::S5, 1205U }, { PPC::S6, 1206U }, { PPC::S7, 1207U }, { PPC::S8, 1208U }, { PPC::S9, 1209U }, { PPC::S10, 1210U }, { PPC::S11, 1211U }, { PPC::S12, 1212U }, { PPC::S13, 1213U }, { PPC::S14, 1214U }, { PPC::S15, 1215U }, { PPC::S16, 1216U }, { PPC::S17, 1217U }, { PPC::S18, 1218U }, { PPC::S19, 1219U }, { PPC::S20, 1220U }, { PPC::S21, 1221U }, { PPC::S22, 1222U }, { PPC::S23, 1223U }, { PPC::S24, 1224U }, { PPC::S25, 1225U }, { PPC::S26, 1226U }, { PPC::S27, 1227U }, { PPC::S28, 1228U }, { PPC::S29, 1229U }, { PPC::S30, 1230U }, { PPC::S31, 1231U }, { PPC::V0, 77U }, { PPC::V1, 78U }, { PPC::V2, 79U }, { PPC::V3, 80U }, { PPC::V4, 81U }, { PPC::V5, 82U }, { PPC::V6, 83U }, { PPC::V7, 84U }, { PPC::V8, 85U }, { PPC::V9, 86U }, { PPC::V10, 87U }, { PPC::V11, 88U }, { PPC::V12, 89U }, { PPC::V13, 90U }, { PPC::V14, 91U }, { PPC::V15, 92U }, { PPC::V16, 93U }, { PPC::V17, 94U }, { PPC::V18, 95U }, { PPC::V19, 96U }, { PPC::V20, 97U }, { PPC::V21, 98U }, { PPC::V22, 99U }, { PPC::V23, 100U }, { PPC::V24, 101U }, { PPC::V25, 102U }, { PPC::V26, 103U }, { PPC::V27, 104U }, { PPC::V28, 105U }, { PPC::V29, 106U }, { PPC::V30, 107U }, { PPC::V31, 108U }, { PPC::VF0, 77U }, { PPC::VF1, 78U }, { PPC::VF2, 79U }, { PPC::VF3, 80U }, { PPC::VF4, 81U }, { PPC::VF5, 82U }, { PPC::VF6, 83U }, { PPC::VF7, 84U }, { PPC::VF8, 85U }, { PPC::VF9, 86U }, { PPC::VF10, 87U }, { PPC::VF11, 88U }, { PPC::VF12, 89U }, { PPC::VF13, 90U }, { PPC::VF14, 91U }, { PPC::VF15, 92U }, { PPC::VF16, 93U }, { PPC::VF17, 94U }, { PPC::VF18, 95U }, { PPC::VF19, 96U }, { PPC::VF20, 97U }, { PPC::VF21, 98U }, { PPC::VF22, 99U }, { PPC::VF23, 100U }, { PPC::VF24, 101U }, { PPC::VF25, 102U }, { PPC::VF26, 103U }, { PPC::VF27, 104U }, { PPC::VF28, 105U }, { PPC::VF29, 106U }, { PPC::VF30, 107U }, { PPC::VF31, 108U }, { PPC::VSL0, 32U }, { PPC::VSL1, 33U }, { PPC::VSL2, 34U }, { PPC::VSL3, 35U }, { PPC::VSL4, 36U }, { PPC::VSL5, 37U }, { PPC::VSL6, 38U }, { PPC::VSL7, 39U }, { PPC::VSL8, 40U }, { PPC::VSL9, 41U }, { PPC::VSL10, 42U }, { PPC::VSL11, 43U }, { PPC::VSL12, 44U }, { PPC::VSL13, 45U }, { PPC::VSL14, 46U }, { PPC::VSL15, 47U }, { PPC::VSL16, 48U }, { PPC::VSL17, 49U }, { PPC::VSL18, 50U }, { PPC::VSL19, 51U }, { PPC::VSL20, 52U }, { PPC::VSL21, 53U }, { PPC::VSL22, 54U }, { PPC::VSL23, 55U }, { PPC::VSL24, 56U }, { PPC::VSL25, 57U }, { PPC::VSL26, 58U }, { PPC::VSL27, 59U }, { PPC::VSL28, 60U }, { PPC::VSL29, 61U }, { PPC::VSL30, 62U }, { PPC::VSL31, 63U }, { PPC::X0, -2U }, { PPC::X1, -2U }, { PPC::X2, -2U }, { PPC::X3, -2U }, { PPC::X4, -2U }, { PPC::X5, -2U }, { PPC::X6, -2U }, { PPC::X7, -2U }, { PPC::X8, -2U }, { PPC::X9, -2U }, { PPC::X10, -2U }, { PPC::X11, -2U }, { PPC::X12, -2U }, { PPC::X13, -2U }, { PPC::X14, -2U }, { PPC::X15, -2U }, { PPC::X16, -2U }, { PPC::X17, -2U }, { PPC::X18, -2U }, { PPC::X19, -2U }, { PPC::X20, -2U }, { PPC::X21, -2U }, { PPC::X22, -2U }, { PPC::X23, -2U }, { PPC::X24, -2U }, { PPC::X25, -2U }, { PPC::X26, -2U }, { PPC::X27, -2U }, { PPC::X28, -2U }, { PPC::X29, -2U }, { PPC::X30, -2U }, { PPC::X31, -2U }, { PPC::ZERO8, -2U }, }; extern const unsigned PPCDwarfFlavour1L2DwarfSize = std::size(PPCDwarfFlavour1L2Dwarf); extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour0L2Dwarf[] = { { PPC::CARRY, 76U }, { PPC::CTR, -2U }, { PPC::LR, -2U }, { PPC::SPEFSCR, 612U }, { PPC::VRSAVE, 109U }, { PPC::XER, 76U }, { PPC::ZERO, -2U }, { PPC::CR0, 68U }, { PPC::CR1, 69U }, { PPC::CR2, 70U }, { PPC::CR3, 71U }, { PPC::CR4, 72U }, { PPC::CR5, 73U }, { PPC::CR6, 74U }, { PPC::CR7, 75U }, { PPC::CTR8, 66U }, { PPC::F0, 32U }, { PPC::F1, 33U }, { PPC::F2, 34U }, { PPC::F3, 35U }, { PPC::F4, 36U }, { PPC::F5, 37U }, { PPC::F6, 38U }, { PPC::F7, 39U }, { PPC::F8, 40U }, { PPC::F9, 41U }, { PPC::F10, 42U }, { PPC::F11, 43U }, { PPC::F12, 44U }, { PPC::F13, 45U }, { PPC::F14, 46U }, { PPC::F15, 47U }, { PPC::F16, 48U }, { PPC::F17, 49U }, { PPC::F18, 50U }, { PPC::F19, 51U }, { PPC::F20, 52U }, { PPC::F21, 53U }, { PPC::F22, 54U }, { PPC::F23, 55U }, { PPC::F24, 56U }, { PPC::F25, 57U }, { PPC::F26, 58U }, { PPC::F27, 59U }, { PPC::F28, 60U }, { PPC::F29, 61U }, { PPC::F30, 62U }, { PPC::F31, 63U }, { PPC::LR8, 65U }, { PPC::R0, -2U }, { PPC::R1, -2U }, { PPC::R2, -2U }, { PPC::R3, -2U }, { PPC::R4, -2U }, { PPC::R5, -2U }, { PPC::R6, -2U }, { PPC::R7, -2U }, { PPC::R8, -2U }, { PPC::R9, -2U }, { PPC::R10, -2U }, { PPC::R11, -2U }, { PPC::R12, -2U }, { PPC::R13, -2U }, { PPC::R14, -2U }, { PPC::R15, -2U }, { PPC::R16, -2U }, { PPC::R17, -2U }, { PPC::R18, -2U }, { PPC::R19, -2U }, { PPC::R20, -2U }, { PPC::R21, -2U }, { PPC::R22, -2U }, { PPC::R23, -2U }, { PPC::R24, -2U }, { PPC::R25, -2U }, { PPC::R26, -2U }, { PPC::R27, -2U }, { PPC::R28, -2U }, { PPC::R29, -2U }, { PPC::R30, -2U }, { PPC::R31, -2U }, { PPC::S0, 1200U }, { PPC::S1, 1201U }, { PPC::S2, 1202U }, { PPC::S3, 1203U }, { PPC::S4, 1204U }, { PPC::S5, 1205U }, { PPC::S6, 1206U }, { PPC::S7, 1207U }, { PPC::S8, 1208U }, { PPC::S9, 1209U }, { PPC::S10, 1210U }, { PPC::S11, 1211U }, { PPC::S12, 1212U }, { PPC::S13, 1213U }, { PPC::S14, 1214U }, { PPC::S15, 1215U }, { PPC::S16, 1216U }, { PPC::S17, 1217U }, { PPC::S18, 1218U }, { PPC::S19, 1219U }, { PPC::S20, 1220U }, { PPC::S21, 1221U }, { PPC::S22, 1222U }, { PPC::S23, 1223U }, { PPC::S24, 1224U }, { PPC::S25, 1225U }, { PPC::S26, 1226U }, { PPC::S27, 1227U }, { PPC::S28, 1228U }, { PPC::S29, 1229U }, { PPC::S30, 1230U }, { PPC::S31, 1231U }, { PPC::V0, 77U }, { PPC::V1, 78U }, { PPC::V2, 79U }, { PPC::V3, 80U }, { PPC::V4, 81U }, { PPC::V5, 82U }, { PPC::V6, 83U }, { PPC::V7, 84U }, { PPC::V8, 85U }, { PPC::V9, 86U }, { PPC::V10, 87U }, { PPC::V11, 88U }, { PPC::V12, 89U }, { PPC::V13, 90U }, { PPC::V14, 91U }, { PPC::V15, 92U }, { PPC::V16, 93U }, { PPC::V17, 94U }, { PPC::V18, 95U }, { PPC::V19, 96U }, { PPC::V20, 97U }, { PPC::V21, 98U }, { PPC::V22, 99U }, { PPC::V23, 100U }, { PPC::V24, 101U }, { PPC::V25, 102U }, { PPC::V26, 103U }, { PPC::V27, 104U }, { PPC::V28, 105U }, { PPC::V29, 106U }, { PPC::V30, 107U }, { PPC::V31, 108U }, { PPC::VF0, 77U }, { PPC::VF1, 78U }, { PPC::VF2, 79U }, { PPC::VF3, 80U }, { PPC::VF4, 81U }, { PPC::VF5, 82U }, { PPC::VF6, 83U }, { PPC::VF7, 84U }, { PPC::VF8, 85U }, { PPC::VF9, 86U }, { PPC::VF10, 87U }, { PPC::VF11, 88U }, { PPC::VF12, 89U }, { PPC::VF13, 90U }, { PPC::VF14, 91U }, { PPC::VF15, 92U }, { PPC::VF16, 93U }, { PPC::VF17, 94U }, { PPC::VF18, 95U }, { PPC::VF19, 96U }, { PPC::VF20, 97U }, { PPC::VF21, 98U }, { PPC::VF22, 99U }, { PPC::VF23, 100U }, { PPC::VF24, 101U }, { PPC::VF25, 102U }, { PPC::VF26, 103U }, { PPC::VF27, 104U }, { PPC::VF28, 105U }, { PPC::VF29, 106U }, { PPC::VF30, 107U }, { PPC::VF31, 108U }, { PPC::VSL0, 32U }, { PPC::VSL1, 33U }, { PPC::VSL2, 34U }, { PPC::VSL3, 35U }, { PPC::VSL4, 36U }, { PPC::VSL5, 37U }, { PPC::VSL6, 38U }, { PPC::VSL7, 39U }, { PPC::VSL8, 40U }, { PPC::VSL9, 41U }, { PPC::VSL10, 42U }, { PPC::VSL11, 43U }, { PPC::VSL12, 44U }, { PPC::VSL13, 45U }, { PPC::VSL14, 46U }, { PPC::VSL15, 47U }, { PPC::VSL16, 48U }, { PPC::VSL17, 49U }, { PPC::VSL18, 50U }, { PPC::VSL19, 51U }, { PPC::VSL20, 52U }, { PPC::VSL21, 53U }, { PPC::VSL22, 54U }, { PPC::VSL23, 55U }, { PPC::VSL24, 56U }, { PPC::VSL25, 57U }, { PPC::VSL26, 58U }, { PPC::VSL27, 59U }, { PPC::VSL28, 60U }, { PPC::VSL29, 61U }, { PPC::VSL30, 62U }, { PPC::VSL31, 63U }, { PPC::X0, 0U }, { PPC::X1, 1U }, { PPC::X2, 2U }, { PPC::X3, 3U }, { PPC::X4, 4U }, { PPC::X5, 5U }, { PPC::X6, 6U }, { PPC::X7, 7U }, { PPC::X8, 8U }, { PPC::X9, 9U }, { PPC::X10, 10U }, { PPC::X11, 11U }, { PPC::X12, 12U }, { PPC::X13, 13U }, { PPC::X14, 14U }, { PPC::X15, 15U }, { PPC::X16, 16U }, { PPC::X17, 17U }, { PPC::X18, 18U }, { PPC::X19, 19U }, { PPC::X20, 20U }, { PPC::X21, 21U }, { PPC::X22, 22U }, { PPC::X23, 23U }, { PPC::X24, 24U }, { PPC::X25, 25U }, { PPC::X26, 26U }, { PPC::X27, 27U }, { PPC::X28, 28U }, { PPC::X29, 29U }, { PPC::X30, 30U }, { PPC::X31, 31U }, { PPC::ZERO8, 0U }, }; extern const unsigned PPCEHFlavour0L2DwarfSize = std::size(PPCEHFlavour0L2Dwarf); extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour1L2Dwarf[] = { { PPC::CTR, 66U }, { PPC::LR, 65U }, { PPC::SPEFSCR, 112U }, { PPC::ZERO, 0U }, { PPC::CR0, 68U }, { PPC::CR1, 69U }, { PPC::CR2, 70U }, { PPC::CR3, 71U }, { PPC::CR4, 72U }, { PPC::CR5, 73U }, { PPC::CR6, 74U }, { PPC::CR7, 75U }, { PPC::CTR8, -2U }, { PPC::F0, 32U }, { PPC::F1, 33U }, { PPC::F2, 34U }, { PPC::F3, 35U }, { PPC::F4, 36U }, { PPC::F5, 37U }, { PPC::F6, 38U }, { PPC::F7, 39U }, { PPC::F8, 40U }, { PPC::F9, 41U }, { PPC::F10, 42U }, { PPC::F11, 43U }, { PPC::F12, 44U }, { PPC::F13, 45U }, { PPC::F14, 46U }, { PPC::F15, 47U }, { PPC::F16, 48U }, { PPC::F17, 49U }, { PPC::F18, 50U }, { PPC::F19, 51U }, { PPC::F20, 52U }, { PPC::F21, 53U }, { PPC::F22, 54U }, { PPC::F23, 55U }, { PPC::F24, 56U }, { PPC::F25, 57U }, { PPC::F26, 58U }, { PPC::F27, 59U }, { PPC::F28, 60U }, { PPC::F29, 61U }, { PPC::F30, 62U }, { PPC::F31, 63U }, { PPC::LR8, -2U }, { PPC::R0, 0U }, { PPC::R1, 1U }, { PPC::R2, 2U }, { PPC::R3, 3U }, { PPC::R4, 4U }, { PPC::R5, 5U }, { PPC::R6, 6U }, { PPC::R7, 7U }, { PPC::R8, 8U }, { PPC::R9, 9U }, { PPC::R10, 10U }, { PPC::R11, 11U }, { PPC::R12, 12U }, { PPC::R13, 13U }, { PPC::R14, 14U }, { PPC::R15, 15U }, { PPC::R16, 16U }, { PPC::R17, 17U }, { PPC::R18, 18U }, { PPC::R19, 19U }, { PPC::R20, 20U }, { PPC::R21, 21U }, { PPC::R22, 22U }, { PPC::R23, 23U }, { PPC::R24, 24U }, { PPC::R25, 25U }, { PPC::R26, 26U }, { PPC::R27, 27U }, { PPC::R28, 28U }, { PPC::R29, 29U }, { PPC::R30, 30U }, { PPC::R31, 31U }, { PPC::S0, 1200U }, { PPC::S1, 1201U }, { PPC::S2, 1202U }, { PPC::S3, 1203U }, { PPC::S4, 1204U }, { PPC::S5, 1205U }, { PPC::S6, 1206U }, { PPC::S7, 1207U }, { PPC::S8, 1208U }, { PPC::S9, 1209U }, { PPC::S10, 1210U }, { PPC::S11, 1211U }, { PPC::S12, 1212U }, { PPC::S13, 1213U }, { PPC::S14, 1214U }, { PPC::S15, 1215U }, { PPC::S16, 1216U }, { PPC::S17, 1217U }, { PPC::S18, 1218U }, { PPC::S19, 1219U }, { PPC::S20, 1220U }, { PPC::S21, 1221U }, { PPC::S22, 1222U }, { PPC::S23, 1223U }, { PPC::S24, 1224U }, { PPC::S25, 1225U }, { PPC::S26, 1226U }, { PPC::S27, 1227U }, { PPC::S28, 1228U }, { PPC::S29, 1229U }, { PPC::S30, 1230U }, { PPC::S31, 1231U }, { PPC::V0, 77U }, { PPC::V1, 78U }, { PPC::V2, 79U }, { PPC::V3, 80U }, { PPC::V4, 81U }, { PPC::V5, 82U }, { PPC::V6, 83U }, { PPC::V7, 84U }, { PPC::V8, 85U }, { PPC::V9, 86U }, { PPC::V10, 87U }, { PPC::V11, 88U }, { PPC::V12, 89U }, { PPC::V13, 90U }, { PPC::V14, 91U }, { PPC::V15, 92U }, { PPC::V16, 93U }, { PPC::V17, 94U }, { PPC::V18, 95U }, { PPC::V19, 96U }, { PPC::V20, 97U }, { PPC::V21, 98U }, { PPC::V22, 99U }, { PPC::V23, 100U }, { PPC::V24, 101U }, { PPC::V25, 102U }, { PPC::V26, 103U }, { PPC::V27, 104U }, { PPC::V28, 105U }, { PPC::V29, 106U }, { PPC::V30, 107U }, { PPC::V31, 108U }, { PPC::VF0, 77U }, { PPC::VF1, 78U }, { PPC::VF2, 79U }, { PPC::VF3, 80U }, { PPC::VF4, 81U }, { PPC::VF5, 82U }, { PPC::VF6, 83U }, { PPC::VF7, 84U }, { PPC::VF8, 85U }, { PPC::VF9, 86U }, { PPC::VF10, 87U }, { PPC::VF11, 88U }, { PPC::VF12, 89U }, { PPC::VF13, 90U }, { PPC::VF14, 91U }, { PPC::VF15, 92U }, { PPC::VF16, 93U }, { PPC::VF17, 94U }, { PPC::VF18, 95U }, { PPC::VF19, 96U }, { PPC::VF20, 97U }, { PPC::VF21, 98U }, { PPC::VF22, 99U }, { PPC::VF23, 100U }, { PPC::VF24, 101U }, { PPC::VF25, 102U }, { PPC::VF26, 103U }, { PPC::VF27, 104U }, { PPC::VF28, 105U }, { PPC::VF29, 106U }, { PPC::VF30, 107U }, { PPC::VF31, 108U }, { PPC::VSL0, 32U }, { PPC::VSL1, 33U }, { PPC::VSL2, 34U }, { PPC::VSL3, 35U }, { PPC::VSL4, 36U }, { PPC::VSL5, 37U }, { PPC::VSL6, 38U }, { PPC::VSL7, 39U }, { PPC::VSL8, 40U }, { PPC::VSL9, 41U }, { PPC::VSL10, 42U }, { PPC::VSL11, 43U }, { PPC::VSL12, 44U }, { PPC::VSL13, 45U }, { PPC::VSL14, 46U }, { PPC::VSL15, 47U }, { PPC::VSL16, 48U }, { PPC::VSL17, 49U }, { PPC::VSL18, 50U }, { PPC::VSL19, 51U }, { PPC::VSL20, 52U }, { PPC::VSL21, 53U }, { PPC::VSL22, 54U }, { PPC::VSL23, 55U }, { PPC::VSL24, 56U }, { PPC::VSL25, 57U }, { PPC::VSL26, 58U }, { PPC::VSL27, 59U }, { PPC::VSL28, 60U }, { PPC::VSL29, 61U }, { PPC::VSL30, 62U }, { PPC::VSL31, 63U }, { PPC::X0, -2U }, { PPC::X1, -2U }, { PPC::X2, -2U }, { PPC::X3, -2U }, { PPC::X4, -2U }, { PPC::X5, -2U }, { PPC::X6, -2U }, { PPC::X7, -2U }, { PPC::X8, -2U }, { PPC::X9, -2U }, { PPC::X10, -2U }, { PPC::X11, -2U }, { PPC::X12, -2U }, { PPC::X13, -2U }, { PPC::X14, -2U }, { PPC::X15, -2U }, { PPC::X16, -2U }, { PPC::X17, -2U }, { PPC::X18, -2U }, { PPC::X19, -2U }, { PPC::X20, -2U }, { PPC::X21, -2U }, { PPC::X22, -2U }, { PPC::X23, -2U }, { PPC::X24, -2U }, { PPC::X25, -2U }, { PPC::X26, -2U }, { PPC::X27, -2U }, { PPC::X28, -2U }, { PPC::X29, -2U }, { PPC::X30, -2U }, { PPC::X31, -2U }, { PPC::ZERO8, -2U }, }; extern const unsigned PPCEHFlavour1L2DwarfSize = std::size(PPCEHFlavour1L2Dwarf); extern const uint16_t PPCRegEncodingTable[] = { 0, 0, 1, 9, 0, 8, 0, 512, 256, 1, 0, 0, 1, 2, 3, 4, 5, 6, 7, 0, 0, 1, 2, 3, 4, 5, 6, 7, 9, 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 0, 1, 2, 3, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 0, 8, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 0, 2, 6, 10, 14, 18, 22, 26, 30, 1, 5, 9, 13, 17, 21, 25, 29, 0, 4, 8, 12, 16, 20, 24, 28, 3, 7, 11, 15, 19, 23, 27, 31, 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, }; static inline void InitPPCMCRegisterInfo(MCRegisterInfo *RI, unsigned RA, unsigned DwarfFlavour = 0, unsigned EHFlavour = 0, unsigned PC = 0) { RI->InitMCRegisterInfo(PPCRegDesc, 500, RA, PC, PPCMCRegisterClasses, 51, PPCRegUnitRoots, 235, PPCRegDiffLists, PPCLaneMaskLists, PPCRegStrings, PPCRegClassStrings, PPCSubRegIdxLists, 49, PPCSubRegIdxRanges, PPCRegEncodingTable); switch (DwarfFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: RI->mapDwarfRegsToLLVMRegs(PPCDwarfFlavour0Dwarf2L, PPCDwarfFlavour0Dwarf2LSize, false); break; case 1: RI->mapDwarfRegsToLLVMRegs(PPCDwarfFlavour1Dwarf2L, PPCDwarfFlavour1Dwarf2LSize, false); break; } switch (EHFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: RI->mapDwarfRegsToLLVMRegs(PPCEHFlavour0Dwarf2L, PPCEHFlavour0Dwarf2LSize, true); break; case 1: RI->mapDwarfRegsToLLVMRegs(PPCEHFlavour1Dwarf2L, PPCEHFlavour1Dwarf2LSize, true); break; } switch (DwarfFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: RI->mapLLVMRegsToDwarfRegs(PPCDwarfFlavour0L2Dwarf, PPCDwarfFlavour0L2DwarfSize, false); break; case 1: RI->mapLLVMRegsToDwarfRegs(PPCDwarfFlavour1L2Dwarf, PPCDwarfFlavour1L2DwarfSize, false); break; } switch (EHFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: RI->mapLLVMRegsToDwarfRegs(PPCEHFlavour0L2Dwarf, PPCEHFlavour0L2DwarfSize, true); break; case 1: RI->mapLLVMRegsToDwarfRegs(PPCEHFlavour1L2Dwarf, PPCEHFlavour1L2DwarfSize, true); break; } } } // end namespace llvm #endif // GET_REGINFO_MC_DESC /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |* *| |* Register Information Header Fragment *| |* *| |* Automatically generated file, do not edit! *| |* *| \*===----------------------------------------------------------------------===*/ #ifdef GET_REGINFO_HEADER #undef GET_REGINFO_HEADER #include "llvm/CodeGen/TargetRegisterInfo.h" namespace llvm { class PPCFrameLowering; struct PPCGenRegisterInfo : public TargetRegisterInfo { explicit PPCGenRegisterInfo(unsigned RA, unsigned D = 0, unsigned E = 0, unsigned PC = 0, unsigned HwMode = 0); unsigned composeSubRegIndicesImpl(unsigned, unsigned) const override; LaneBitmask composeSubRegIndexLaneMaskImpl(unsigned, LaneBitmask) const override; LaneBitmask reverseComposeSubRegIndexLaneMaskImpl(unsigned, LaneBitmask) const override; const TargetRegisterClass *getSubClassWithSubReg(const TargetRegisterClass *, unsigned) const override; const TargetRegisterClass *getSubRegisterClass(const TargetRegisterClass *, unsigned) const override; const RegClassWeight &getRegClassWeight(const TargetRegisterClass *RC) const override; unsigned getRegUnitWeight(unsigned RegUnit) const override; unsigned getNumRegPressureSets() const override; const char *getRegPressureSetName(unsigned Idx) const override; unsigned getRegPressureSetLimit(const MachineFunction &MF, unsigned Idx) const override; const int *getRegClassPressureSets(const TargetRegisterClass *RC) const override; const int *getRegUnitPressureSets(unsigned RegUnit) const override; ArrayRef getRegMaskNames() const override; ArrayRef getRegMasks() const override; bool isGeneralPurposeRegister(const MachineFunction &, MCRegister) const override; bool isFixedRegister(const MachineFunction &, MCRegister) const override; bool isArgumentRegister(const MachineFunction &, MCRegister) const override; bool isConstantPhysReg(MCRegister PhysReg) const override final; /// Devirtualized TargetFrameLowering. static const PPCFrameLowering *getFrameLowering( const MachineFunction &MF); }; namespace PPC { // Register classes extern const TargetRegisterClass VSSRCRegClass; extern const TargetRegisterClass GPRCRegClass; extern const TargetRegisterClass GPRC_NOR0RegClass; extern const TargetRegisterClass GPRC_and_GPRC_NOR0RegClass; extern const TargetRegisterClass CRBITRCRegClass; extern const TargetRegisterClass F4RCRegClass; extern const TargetRegisterClass CRRCRegClass; extern const TargetRegisterClass CARRYRCRegClass; extern const TargetRegisterClass CTRRCRegClass; extern const TargetRegisterClass LRRCRegClass; extern const TargetRegisterClass VRSAVERCRegClass; extern const TargetRegisterClass SPILLTOVSRRCRegClass; extern const TargetRegisterClass VSFRCRegClass; extern const TargetRegisterClass G8RCRegClass; extern const TargetRegisterClass G8RC_NOX0RegClass; extern const TargetRegisterClass SPILLTOVSRRC_and_VSFRCRegClass; extern const TargetRegisterClass G8RC_and_G8RC_NOX0RegClass; extern const TargetRegisterClass F8RCRegClass; extern const TargetRegisterClass SPERCRegClass; extern const TargetRegisterClass VFRCRegClass; extern const TargetRegisterClass SPERC_with_sub_32_in_GPRC_NOR0RegClass; extern const TargetRegisterClass SPILLTOVSRRC_and_VFRCRegClass; extern const TargetRegisterClass SPILLTOVSRRC_and_F4RCRegClass; extern const TargetRegisterClass CTRRC8RegClass; extern const TargetRegisterClass LR8RCRegClass; extern const TargetRegisterClass DMRROWRCRegClass; extern const TargetRegisterClass VSRCRegClass; extern const TargetRegisterClass VSRC_with_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass VRRCRegClass; extern const TargetRegisterClass VSLRCRegClass; extern const TargetRegisterClass VRRC_with_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass G8pRCRegClass; extern const TargetRegisterClass G8pRC_with_sub_32_in_GPRC_NOR0RegClass; extern const TargetRegisterClass VSLRC_with_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass DMRROWpRCRegClass; extern const TargetRegisterClass VSRpRCRegClass; extern const TargetRegisterClass VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass VSRpRC_with_sub_64_in_F4RCRegClass; extern const TargetRegisterClass VSRpRC_with_sub_64_in_VFRCRegClass; extern const TargetRegisterClass VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCRegClass; extern const TargetRegisterClass VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCRegClass; extern const TargetRegisterClass ACCRCRegClass; extern const TargetRegisterClass UACCRCRegClass; extern const TargetRegisterClass WACCRCRegClass; extern const TargetRegisterClass WACC_HIRCRegClass; extern const TargetRegisterClass ACCRC_with_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass UACCRC_with_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClass; extern const TargetRegisterClass DMRRCRegClass; extern const TargetRegisterClass DMRpRCRegClass; } // end namespace PPC } // end namespace llvm #endif // GET_REGINFO_HEADER /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |* *| |* Target Register and Register Classes Information *| |* *| |* Automatically generated file, do not edit! *| |* *| \*===----------------------------------------------------------------------===*/ #ifdef GET_REGINFO_TARGET_DESC #undef GET_REGINFO_TARGET_DESC namespace llvm { extern const MCRegisterClass PPCMCRegisterClasses[]; static const MVT::SimpleValueType VTLists[] = { /* 0 */ MVT::i1, MVT::Other, /* 2 */ MVT::i32, MVT::Other, /* 4 */ MVT::i64, MVT::Other, /* 6 */ MVT::i128, MVT::Other, /* 8 */ MVT::i32, MVT::f32, MVT::Other, /* 11 */ MVT::i64, MVT::f64, MVT::Other, /* 14 */ MVT::v16i8, MVT::v8i16, MVT::v4i32, MVT::v2i64, MVT::v1i128, MVT::v4f32, MVT::v2f64, MVT::f128, MVT::Other, /* 23 */ MVT::v128i1, MVT::Other, /* 25 */ MVT::v256i1, MVT::Other, /* 27 */ MVT::v512i1, MVT::Other, /* 29 */ MVT::v1024i1, MVT::Other, /* 31 */ MVT::v2048i1, MVT::Other, /* 33 */ MVT::v4i32, MVT::v4f32, MVT::v2f64, MVT::v2i64, MVT::Other, }; static const char *SubRegIndexNameTable[] = { "sub_32", "sub_64", "sub_dmr0", "sub_dmr1", "sub_dmrrow0", "sub_dmrrow1", "sub_dmrrowp0", "sub_dmrrowp1", "sub_eq", "sub_gp8_x0", "sub_gp8_x1", "sub_gt", "sub_lt", "sub_pair0", "sub_pair1", "sub_un", "sub_vsx0", "sub_vsx1", "sub_wacc_hi", "sub_wacc_lo", "sub_vsx1_then_sub_64", "sub_pair1_then_sub_64", "sub_pair1_then_sub_vsx0", "sub_pair1_then_sub_vsx1", "sub_pair1_then_sub_vsx1_then_sub_64", "sub_dmrrowp1_then_sub_dmrrow0", "sub_dmrrowp1_then_sub_dmrrow1", "sub_wacc_hi_then_sub_dmrrow0", "sub_wacc_hi_then_sub_dmrrow1", "sub_wacc_hi_then_sub_dmrrowp0", "sub_wacc_hi_then_sub_dmrrowp1", "sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0", "sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1", "sub_dmr1_then_sub_dmrrow0", "sub_dmr1_then_sub_dmrrow1", "sub_dmr1_then_sub_dmrrowp0", "sub_dmr1_then_sub_dmrrowp1", "sub_dmr1_then_sub_wacc_hi", "sub_dmr1_then_sub_wacc_lo", "sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0", "sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1", "sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0", "sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1", "sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0", "sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1", "sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0", "sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1", "sub_gp8_x1_then_sub_32", "" }; static const LaneBitmask SubRegIndexLaneMaskTable[] = { LaneBitmask::getAll(), LaneBitmask(0x0000000000000001), // sub_32 LaneBitmask(0x0000000000000002), // sub_64 LaneBitmask(0x000000000001F80C), // sub_dmr0 LaneBitmask(0x0000000001FE0000), // sub_dmr1 LaneBitmask(0x0000000000000004), // sub_dmrrow0 LaneBitmask(0x0000000000000008), // sub_dmrrow1 LaneBitmask(0x000000000000000C), // sub_dmrrowp0 LaneBitmask(0x0000000000001800), // sub_dmrrowp1 LaneBitmask(0x0000000000000010), // sub_eq LaneBitmask(0x0000000000000001), // sub_gp8_x0 LaneBitmask(0x0000000002000000), // sub_gp8_x1 LaneBitmask(0x0000000000000020), // sub_gt LaneBitmask(0x0000000000000040), // sub_lt LaneBitmask(0x0000000000000102), // sub_pair0 LaneBitmask(0x0000000000000600), // sub_pair1 LaneBitmask(0x0000000000000080), // sub_un LaneBitmask(0x0000000000000002), // sub_vsx0 LaneBitmask(0x0000000000000100), // sub_vsx1 LaneBitmask(0x000000000001E000), // sub_wacc_hi LaneBitmask(0x000000000000180C), // sub_wacc_lo LaneBitmask(0x0000000000000100), // sub_vsx1_then_sub_64 LaneBitmask(0x0000000000000200), // sub_pair1_then_sub_64 LaneBitmask(0x0000000000000200), // sub_pair1_then_sub_vsx0 LaneBitmask(0x0000000000000400), // sub_pair1_then_sub_vsx1 LaneBitmask(0x0000000000000400), // sub_pair1_then_sub_vsx1_then_sub_64 LaneBitmask(0x0000000000000800), // sub_dmrrowp1_then_sub_dmrrow0 LaneBitmask(0x0000000000001000), // sub_dmrrowp1_then_sub_dmrrow1 LaneBitmask(0x0000000000002000), // sub_wacc_hi_then_sub_dmrrow0 LaneBitmask(0x0000000000004000), // sub_wacc_hi_then_sub_dmrrow1 LaneBitmask(0x0000000000006000), // sub_wacc_hi_then_sub_dmrrowp0 LaneBitmask(0x0000000000018000), // sub_wacc_hi_then_sub_dmrrowp1 LaneBitmask(0x0000000000008000), // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 LaneBitmask(0x0000000000010000), // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 LaneBitmask(0x0000000000020000), // sub_dmr1_then_sub_dmrrow0 LaneBitmask(0x0000000000040000), // sub_dmr1_then_sub_dmrrow1 LaneBitmask(0x0000000000060000), // sub_dmr1_then_sub_dmrrowp0 LaneBitmask(0x0000000000180000), // sub_dmr1_then_sub_dmrrowp1 LaneBitmask(0x0000000001E00000), // sub_dmr1_then_sub_wacc_hi LaneBitmask(0x00000000001E0000), // sub_dmr1_then_sub_wacc_lo LaneBitmask(0x0000000000080000), // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 LaneBitmask(0x0000000000100000), // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 LaneBitmask(0x0000000000200000), // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 LaneBitmask(0x0000000000400000), // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 LaneBitmask(0x0000000000600000), // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 LaneBitmask(0x0000000001800000), // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 LaneBitmask(0x0000000000800000), // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 LaneBitmask(0x0000000001000000), // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 LaneBitmask(0x0000000002000000), // sub_gp8_x1_then_sub_32 }; static const TargetRegisterInfo::RegClassInfo RegClassInfos[] = { // Mode = 0 (Default) { 32, 32, 32, VTLists+9 }, // VSSRC { 32, 32, 32, VTLists+8 }, // GPRC { 32, 32, 32, VTLists+8 }, // GPRC_NOR0 { 32, 32, 32, VTLists+8 }, // GPRC_and_GPRC_NOR0 { 32, 32, 32, VTLists+0 }, // CRBITRC { 32, 32, 32, VTLists+9 }, // F4RC { 32, 32, 32, VTLists+2 }, // CRRC { 32, 32, 32, VTLists+2 }, // CARRYRC { 32, 32, 32, VTLists+2 }, // CTRRC { 32, 32, 32, VTLists+2 }, // LRRC { 32, 32, 32, VTLists+2 }, // VRSAVERC { 64, 64, 64, VTLists+11 }, // SPILLTOVSRRC { 64, 64, 64, VTLists+12 }, // VSFRC { 64, 64, 64, VTLists+4 }, // G8RC { 64, 64, 64, VTLists+4 }, // G8RC_NOX0 { 64, 64, 64, VTLists+12 }, // SPILLTOVSRRC_and_VSFRC { 64, 64, 64, VTLists+4 }, // G8RC_and_G8RC_NOX0 { 64, 64, 64, VTLists+12 }, // F8RC { 64, 64, 64, VTLists+12 }, // SPERC { 64, 64, 64, VTLists+12 }, // VFRC { 64, 64, 64, VTLists+12 }, // SPERC_with_sub_32_in_GPRC_NOR0 { 64, 64, 64, VTLists+12 }, // SPILLTOVSRRC_and_VFRC { 64, 64, 64, VTLists+12 }, // SPILLTOVSRRC_and_F4RC { 64, 64, 64, VTLists+4 }, // CTRRC8 { 64, 64, 64, VTLists+4 }, // LR8RC { 128, 128, 128, VTLists+23 }, // DMRROWRC { 128, 128, 128, VTLists+33 }, // VSRC { 128, 128, 128, VTLists+33 }, // VSRC_with_sub_64_in_SPILLTOVSRRC { 128, 128, 128, VTLists+14 }, // VRRC { 128, 128, 128, VTLists+33 }, // VSLRC { 128, 128, 128, VTLists+14 }, // VRRC_with_sub_64_in_SPILLTOVSRRC { 128, 128, 128, VTLists+6 }, // G8pRC { 128, 128, 128, VTLists+6 }, // G8pRC_with_sub_32_in_GPRC_NOR0 { 128, 128, 128, VTLists+33 }, // VSLRC_with_sub_64_in_SPILLTOVSRRC { 256, 256, 128, VTLists+25 }, // DMRROWpRC { 256, 256, 128, VTLists+25 }, // VSRpRC { 256, 256, 128, VTLists+25 }, // VSRpRC_with_sub_64_in_SPILLTOVSRRC { 256, 256, 128, VTLists+25 }, // VSRpRC_with_sub_64_in_F4RC { 256, 256, 128, VTLists+25 }, // VSRpRC_with_sub_64_in_VFRC { 256, 256, 128, VTLists+25 }, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC { 256, 256, 128, VTLists+25 }, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC { 512, 512, 128, VTLists+27 }, // ACCRC { 512, 512, 128, VTLists+27 }, // UACCRC { 512, 512, 128, VTLists+27 }, // WACCRC { 512, 512, 128, VTLists+27 }, // WACC_HIRC { 512, 512, 128, VTLists+27 }, // ACCRC_with_sub_64_in_SPILLTOVSRRC { 512, 512, 128, VTLists+27 }, // UACCRC_with_sub_64_in_SPILLTOVSRRC { 512, 512, 128, VTLists+27 }, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC { 512, 512, 128, VTLists+27 }, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC { 1024, 1024, 128, VTLists+29 }, // DMRRC { 2048, 2048, 128, VTLists+31 }, // DMRpRC }; static const TargetRegisterClass *const NullRegClasses[] = { nullptr }; static const uint32_t VSSRCSubClassMask[] = { 0x006a9021, 0x00000000, 0x7c000000, 0x0001e7fa, // sub_64 0x00000000, 0x0001e7f8, // sub_vsx1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx1_then_sub_64 }; static const uint32_t GPRCSubClassMask[] = { 0x0000000a, 0x00000000, 0x80152000, 0x00000001, // sub_32 0x80000000, 0x00000001, // sub_gp8_x1_then_sub_32 }; static const uint32_t GPRC_NOR0SubClassMask[] = { 0x0000000c, 0x00000000, 0x00114000, 0x00000001, // sub_32 0x80000000, 0x00000001, // sub_gp8_x1_then_sub_32 }; static const uint32_t GPRC_and_GPRC_NOR0SubClassMask[] = { 0x00000008, 0x00000000, 0x00110000, 0x00000001, // sub_32 0x80000000, 0x00000001, // sub_gp8_x1_then_sub_32 }; static const uint32_t CRBITRCSubClassMask[] = { 0x00000010, 0x00000000, 0x00000040, 0x00000000, // sub_eq 0x00000040, 0x00000000, // sub_gt 0x00000040, 0x00000000, // sub_lt 0x00000040, 0x00000000, // sub_un }; static const uint32_t F4RCSubClassMask[] = { 0x00420020, 0x00000000, 0x20000000, 0x0001e722, // sub_64 0x00000000, 0x0001e720, // sub_vsx1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx1_then_sub_64 }; static const uint32_t CRRCSubClassMask[] = { 0x00000040, 0x00000000, }; static const uint32_t CARRYRCSubClassMask[] = { 0x00000080, 0x00000000, }; static const uint32_t CTRRCSubClassMask[] = { 0x00000100, 0x00000000, }; static const uint32_t LRRCSubClassMask[] = { 0x00000200, 0x00000000, }; static const uint32_t VRSAVERCSubClassMask[] = { 0x00000400, 0x00000000, }; static const uint32_t SPILLTOVSRRCSubClassMask[] = { 0x0061a800, 0x00000000, 0x48000000, 0x0001e192, // sub_64 0x80000000, 0x00000001, // sub_gp8_x0 0x80000000, 0x00000001, // sub_gp8_x1 0x00000000, 0x0001e190, // sub_vsx1_then_sub_64 0x00000000, 0x00018000, // sub_pair1_then_sub_64 0x00000000, 0x00018000, // sub_pair1_then_sub_vsx1_then_sub_64 }; static const uint32_t VSFRCSubClassMask[] = { 0x006a9000, 0x00000000, 0x7c000000, 0x0001e7fa, // sub_64 0x00000000, 0x0001e7f8, // sub_vsx1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx1_then_sub_64 }; static const uint32_t G8RCSubClassMask[] = { 0x00012000, 0x00000000, 0x80000000, 0x00000001, // sub_gp8_x0 0x80000000, 0x00000001, // sub_gp8_x1 }; static const uint32_t G8RC_NOX0SubClassMask[] = { 0x00014000, 0x00000000, 0x00000000, 0x00000001, // sub_gp8_x0 0x80000000, 0x00000001, // sub_gp8_x1 }; static const uint32_t SPILLTOVSRRC_and_VSFRCSubClassMask[] = { 0x00608000, 0x00000000, 0x48000000, 0x0001e192, // sub_64 0x00000000, 0x0001e190, // sub_vsx1_then_sub_64 0x00000000, 0x00018000, // sub_pair1_then_sub_64 0x00000000, 0x00018000, // sub_pair1_then_sub_vsx1_then_sub_64 }; static const uint32_t G8RC_and_G8RC_NOX0SubClassMask[] = { 0x00010000, 0x00000000, 0x00000000, 0x00000001, // sub_gp8_x0 0x80000000, 0x00000001, // sub_gp8_x1 }; static const uint32_t F8RCSubClassMask[] = { 0x00420000, 0x00000000, 0x20000000, 0x0001e722, // sub_64 0x00000000, 0x0001e720, // sub_vsx1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_64 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx1_then_sub_64 }; static const uint32_t SPERCSubClassMask[] = { 0x00140000, 0x00000000, }; static const uint32_t VFRCSubClassMask[] = { 0x00280000, 0x00000000, 0x50000000, 0x000000c0, // sub_64 0x00000000, 0x000000c0, // sub_vsx1_then_sub_64 }; static const uint32_t SPERC_with_sub_32_in_GPRC_NOR0SubClassMask[] = { 0x00100000, 0x00000000, }; static const uint32_t SPILLTOVSRRC_and_VFRCSubClassMask[] = { 0x00200000, 0x00000000, 0x40000000, 0x00000080, // sub_64 0x00000000, 0x00000080, // sub_vsx1_then_sub_64 }; static const uint32_t SPILLTOVSRRC_and_F4RCSubClassMask[] = { 0x00400000, 0x00000000, 0x00000000, 0x0001e102, // sub_64 0x00000000, 0x0001e100, // sub_vsx1_then_sub_64 0x00000000, 0x00018000, // sub_pair1_then_sub_64 0x00000000, 0x00018000, // sub_pair1_then_sub_vsx1_then_sub_64 }; static const uint32_t CTRRC8SubClassMask[] = { 0x00800000, 0x00000000, }; static const uint32_t LR8RCSubClassMask[] = { 0x01000000, 0x00000000, }; static const uint32_t DMRROWRCSubClassMask[] = { 0x02000000, 0x00000000, 0x00000000, 0x00061804, // sub_dmrrow0 0x00000000, 0x00061804, // sub_dmrrow1 0x00000000, 0x00061800, // sub_dmrrowp1_then_sub_dmrrow0 0x00000000, 0x00061800, // sub_dmrrowp1_then_sub_dmrrow1 0x00000000, 0x00060000, // sub_wacc_hi_then_sub_dmrrow0 0x00000000, 0x00060000, // sub_wacc_hi_then_sub_dmrrow1 0x00000000, 0x00060000, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0x00000000, 0x00060000, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0x00000000, 0x00040000, // sub_dmr1_then_sub_dmrrow0 0x00000000, 0x00040000, // sub_dmr1_then_sub_dmrrow1 0x00000000, 0x00040000, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0x00000000, 0x00040000, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 }; static const uint32_t VSRCSubClassMask[] = { 0x7c000000, 0x00000002, 0x00000000, 0x0001e7f8, // sub_vsx0 0x00000000, 0x0001e7f8, // sub_vsx1 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx0 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx1 }; static const uint32_t VSRC_with_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x48000000, 0x00000002, 0x00000000, 0x0001e190, // sub_vsx0 0x00000000, 0x0001e190, // sub_vsx1 0x00000000, 0x00018000, // sub_pair1_then_sub_vsx0 0x00000000, 0x00018000, // sub_pair1_then_sub_vsx1 }; static const uint32_t VRRCSubClassMask[] = { 0x50000000, 0x00000000, 0x00000000, 0x000000c0, // sub_vsx0 0x00000000, 0x000000c0, // sub_vsx1 }; static const uint32_t VSLRCSubClassMask[] = { 0x20000000, 0x00000002, 0x00000000, 0x0001e720, // sub_vsx0 0x00000000, 0x0001e720, // sub_vsx1 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx0 0x00000000, 0x0001e600, // sub_pair1_then_sub_vsx1 }; static const uint32_t VRRC_with_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x40000000, 0x00000000, 0x00000000, 0x00000080, // sub_vsx0 0x00000000, 0x00000080, // sub_vsx1 }; static const uint32_t G8pRCSubClassMask[] = { 0x80000000, 0x00000001, }; static const uint32_t G8pRC_with_sub_32_in_GPRC_NOR0SubClassMask[] = { 0x00000000, 0x00000001, }; static const uint32_t VSLRC_with_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x00000000, 0x00000002, 0x00000000, 0x0001e100, // sub_vsx0 0x00000000, 0x0001e100, // sub_vsx1 0x00000000, 0x00018000, // sub_pair1_then_sub_vsx0 0x00000000, 0x00018000, // sub_pair1_then_sub_vsx1 }; static const uint32_t DMRROWpRCSubClassMask[] = { 0x00000000, 0x00000004, 0x00000000, 0x00061800, // sub_dmrrowp0 0x00000000, 0x00061800, // sub_dmrrowp1 0x00000000, 0x00060000, // sub_wacc_hi_then_sub_dmrrowp0 0x00000000, 0x00060000, // sub_wacc_hi_then_sub_dmrrowp1 0x00000000, 0x00040000, // sub_dmr1_then_sub_dmrrowp0 0x00000000, 0x00040000, // sub_dmr1_then_sub_dmrrowp1 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 }; static const uint32_t VSRpRCSubClassMask[] = { 0x00000000, 0x000001f8, 0x00000000, 0x0001e600, // sub_pair0 0x00000000, 0x0001e600, // sub_pair1 }; static const uint32_t VSRpRC_with_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x00000000, 0x00000190, 0x00000000, 0x0001e000, // sub_pair0 0x00000000, 0x00018000, // sub_pair1 }; static const uint32_t VSRpRC_with_sub_64_in_F4RCSubClassMask[] = { 0x00000000, 0x00000120, 0x00000000, 0x0001e600, // sub_pair0 0x00000000, 0x0001e600, // sub_pair1 }; static const uint32_t VSRpRC_with_sub_64_in_VFRCSubClassMask[] = { 0x00000000, 0x000000c0, }; static const uint32_t VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCSubClassMask[] = { 0x00000000, 0x00000080, }; static const uint32_t VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCSubClassMask[] = { 0x00000000, 0x00000100, 0x00000000, 0x0001e000, // sub_pair0 0x00000000, 0x00018000, // sub_pair1 }; static const uint32_t ACCRCSubClassMask[] = { 0x00000000, 0x0000a200, }; static const uint32_t UACCRCSubClassMask[] = { 0x00000000, 0x00014400, }; static const uint32_t WACCRCSubClassMask[] = { 0x00000000, 0x00000800, 0x00000000, 0x00060000, // sub_wacc_lo 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_lo }; static const uint32_t WACC_HIRCSubClassMask[] = { 0x00000000, 0x00001000, 0x00000000, 0x00060000, // sub_wacc_hi 0x00000000, 0x00040000, // sub_dmr1_then_sub_wacc_hi }; static const uint32_t ACCRC_with_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x00000000, 0x0000a000, }; static const uint32_t UACCRC_with_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x00000000, 0x00014000, }; static const uint32_t ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x00000000, 0x00008000, }; static const uint32_t UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSubClassMask[] = { 0x00000000, 0x00010000, }; static const uint32_t DMRRCSubClassMask[] = { 0x00000000, 0x00020000, 0x00000000, 0x00040000, // sub_dmr0 0x00000000, 0x00040000, // sub_dmr1 }; static const uint32_t DMRpRCSubClassMask[] = { 0x00000000, 0x00040000, }; static const uint16_t SuperRegIdxSeqs[] = { /* 0 */ 3, 4, 0, /* 3 */ 10, 11, 0, /* 6 */ 14, 15, 0, /* 9 */ 9, 12, 13, 16, 0, /* 14 */ 17, 18, 0, /* 17 */ 2, 21, 0, /* 20 */ 17, 18, 23, 24, 0, /* 25 */ 2, 21, 22, 25, 0, /* 30 */ 2, 10, 11, 21, 22, 25, 0, /* 37 */ 19, 38, 0, /* 40 */ 20, 39, 0, /* 43 */ 7, 8, 30, 31, 36, 37, 44, 45, 0, /* 52 */ 5, 6, 26, 27, 28, 29, 32, 33, 34, 35, 40, 41, 42, 43, 46, 47, 0, /* 69 */ 1, 48, 0, }; static const TargetRegisterClass *const GPRC_and_GPRC_NOR0Superclasses[] = { &PPC::GPRCRegClass, &PPC::GPRC_NOR0RegClass, nullptr }; static const TargetRegisterClass *const F4RCSuperclasses[] = { &PPC::VSSRCRegClass, nullptr }; static const TargetRegisterClass *const VSFRCSuperclasses[] = { &PPC::VSSRCRegClass, nullptr }; static const TargetRegisterClass *const G8RCSuperclasses[] = { &PPC::SPILLTOVSRRCRegClass, nullptr }; static const TargetRegisterClass *const SPILLTOVSRRC_and_VSFRCSuperclasses[] = { &PPC::VSSRCRegClass, &PPC::SPILLTOVSRRCRegClass, &PPC::VSFRCRegClass, nullptr }; static const TargetRegisterClass *const G8RC_and_G8RC_NOX0Superclasses[] = { &PPC::SPILLTOVSRRCRegClass, &PPC::G8RCRegClass, &PPC::G8RC_NOX0RegClass, nullptr }; static const TargetRegisterClass *const F8RCSuperclasses[] = { &PPC::VSSRCRegClass, &PPC::F4RCRegClass, &PPC::VSFRCRegClass, nullptr }; static const TargetRegisterClass *const VFRCSuperclasses[] = { &PPC::VSSRCRegClass, &PPC::VSFRCRegClass, nullptr }; static const TargetRegisterClass *const SPERC_with_sub_32_in_GPRC_NOR0Superclasses[] = { &PPC::SPERCRegClass, nullptr }; static const TargetRegisterClass *const SPILLTOVSRRC_and_VFRCSuperclasses[] = { &PPC::VSSRCRegClass, &PPC::SPILLTOVSRRCRegClass, &PPC::VSFRCRegClass, &PPC::SPILLTOVSRRC_and_VSFRCRegClass, &PPC::VFRCRegClass, nullptr }; static const TargetRegisterClass *const SPILLTOVSRRC_and_F4RCSuperclasses[] = { &PPC::VSSRCRegClass, &PPC::F4RCRegClass, &PPC::SPILLTOVSRRCRegClass, &PPC::VSFRCRegClass, &PPC::SPILLTOVSRRC_and_VSFRCRegClass, &PPC::F8RCRegClass, nullptr }; static const TargetRegisterClass *const VSRC_with_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::VSRCRegClass, nullptr }; static const TargetRegisterClass *const VRRCSuperclasses[] = { &PPC::VSRCRegClass, nullptr }; static const TargetRegisterClass *const VSLRCSuperclasses[] = { &PPC::VSRCRegClass, nullptr }; static const TargetRegisterClass *const VRRC_with_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::VSRCRegClass, &PPC::VSRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::VRRCRegClass, nullptr }; static const TargetRegisterClass *const G8pRC_with_sub_32_in_GPRC_NOR0Superclasses[] = { &PPC::G8pRCRegClass, nullptr }; static const TargetRegisterClass *const VSLRC_with_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::VSRCRegClass, &PPC::VSRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::VSLRCRegClass, nullptr }; static const TargetRegisterClass *const VSRpRC_with_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::VSRpRCRegClass, nullptr }; static const TargetRegisterClass *const VSRpRC_with_sub_64_in_F4RCSuperclasses[] = { &PPC::VSRpRCRegClass, nullptr }; static const TargetRegisterClass *const VSRpRC_with_sub_64_in_VFRCSuperclasses[] = { &PPC::VSRpRCRegClass, nullptr }; static const TargetRegisterClass *const VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCSuperclasses[] = { &PPC::VSRpRCRegClass, &PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::VSRpRC_with_sub_64_in_VFRCRegClass, nullptr }; static const TargetRegisterClass *const VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCSuperclasses[] = { &PPC::VSRpRCRegClass, &PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::VSRpRC_with_sub_64_in_F4RCRegClass, nullptr }; static const TargetRegisterClass *const ACCRC_with_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::ACCRCRegClass, nullptr }; static const TargetRegisterClass *const UACCRC_with_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::UACCRCRegClass, nullptr }; static const TargetRegisterClass *const ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::ACCRCRegClass, &PPC::ACCRC_with_sub_64_in_SPILLTOVSRRCRegClass, nullptr }; static const TargetRegisterClass *const UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSuperclasses[] = { &PPC::UACCRCRegClass, &PPC::UACCRC_with_sub_64_in_SPILLTOVSRRCRegClass, nullptr }; static inline unsigned GPRCAltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().getGPRAllocationOrderIdx(); } static ArrayRef GPRCGetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R31, PPC::R0, PPC::R1, PPC::FP, PPC::BP, PPC::R2 }; static const MCPhysReg AltOrder2[] = { PPC::R2, PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R31, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R0, PPC::R1, PPC::FP, PPC::BP }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::GPRCRegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1), ArrayRef(AltOrder2) }; const unsigned Select = GPRCAltOrderSelect(MF); assert(Select < 3); return Order[Select]; } static inline unsigned GPRC_NOR0AltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().getGPRAllocationOrderIdx(); } static ArrayRef GPRC_NOR0GetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R31, PPC::R1, PPC::FP, PPC::BP, PPC::ZERO, PPC::R2 }; static const MCPhysReg AltOrder2[] = { PPC::R2, PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R31, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R1, PPC::FP, PPC::BP, PPC::ZERO }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::GPRC_NOR0RegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1), ArrayRef(AltOrder2) }; const unsigned Select = GPRC_NOR0AltOrderSelect(MF); assert(Select < 3); return Order[Select]; } static inline unsigned GPRC_and_GPRC_NOR0AltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().getGPRAllocationOrderIdx(); } static ArrayRef GPRC_and_GPRC_NOR0GetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R31, PPC::R1, PPC::FP, PPC::BP, PPC::R2 }; static const MCPhysReg AltOrder2[] = { PPC::R2, PPC::R3, PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R11, PPC::R12, PPC::R31, PPC::R30, PPC::R29, PPC::R28, PPC::R27, PPC::R26, PPC::R25, PPC::R24, PPC::R23, PPC::R22, PPC::R21, PPC::R20, PPC::R19, PPC::R18, PPC::R17, PPC::R16, PPC::R15, PPC::R14, PPC::R13, PPC::R1, PPC::FP, PPC::BP }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::GPRC_and_GPRC_NOR0RegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1), ArrayRef(AltOrder2) }; const unsigned Select = GPRC_and_GPRC_NOR0AltOrderSelect(MF); assert(Select < 3); return Order[Select]; } static inline unsigned CRBITRCAltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().isELFv2ABI() && MF.getInfo()->isNonVolatileCRDisabled(); } static ArrayRef CRBITRCGetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::CR5LT, PPC::CR5GT, PPC::CR5EQ, PPC::CR5UN, PPC::CR6LT, PPC::CR6GT, PPC::CR6EQ, PPC::CR6UN, PPC::CR7LT, PPC::CR7GT, PPC::CR7EQ, PPC::CR7UN, PPC::CR1LT, PPC::CR1GT, PPC::CR1EQ, PPC::CR1UN, PPC::CR0LT, PPC::CR0GT, PPC::CR0EQ, PPC::CR0UN }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::CRBITRCRegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1) }; const unsigned Select = CRBITRCAltOrderSelect(MF); assert(Select < 2); return Order[Select]; } static inline unsigned CRRCAltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().isELFv2ABI() && MF.getInfo()->isNonVolatileCRDisabled(); } static ArrayRef CRRCGetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::CR0, PPC::CR1, PPC::CR5, PPC::CR6, PPC::CR7 }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::CRRCRegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1) }; const unsigned Select = CRRCAltOrderSelect(MF); assert(Select < 2); return Order[Select]; } static inline unsigned G8RCAltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().getGPRAllocationOrderIdx(); } static ArrayRef G8RCGetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X31, PPC::X13, PPC::X0, PPC::X1, PPC::FP8, PPC::BP8, PPC::X2 }; static const MCPhysReg AltOrder2[] = { PPC::X2, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X31, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X13, PPC::X0, PPC::X1, PPC::FP8, PPC::BP8 }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::G8RCRegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1), ArrayRef(AltOrder2) }; const unsigned Select = G8RCAltOrderSelect(MF); assert(Select < 3); return Order[Select]; } static inline unsigned G8RC_NOX0AltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().getGPRAllocationOrderIdx(); } static ArrayRef G8RC_NOX0GetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X31, PPC::X13, PPC::X1, PPC::FP8, PPC::BP8, PPC::ZERO8, PPC::X2 }; static const MCPhysReg AltOrder2[] = { PPC::X2, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X31, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X13, PPC::X1, PPC::FP8, PPC::BP8, PPC::ZERO8 }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::G8RC_NOX0RegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1), ArrayRef(AltOrder2) }; const unsigned Select = G8RC_NOX0AltOrderSelect(MF); assert(Select < 3); return Order[Select]; } static inline unsigned G8RC_and_G8RC_NOX0AltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().getGPRAllocationOrderIdx(); } static ArrayRef G8RC_and_G8RC_NOX0GetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X31, PPC::X13, PPC::X1, PPC::FP8, PPC::BP8, PPC::X2 }; static const MCPhysReg AltOrder2[] = { PPC::X2, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X11, PPC::X12, PPC::X31, PPC::X30, PPC::X29, PPC::X28, PPC::X27, PPC::X26, PPC::X25, PPC::X24, PPC::X23, PPC::X22, PPC::X21, PPC::X20, PPC::X19, PPC::X18, PPC::X17, PPC::X16, PPC::X15, PPC::X14, PPC::X13, PPC::X1, PPC::FP8, PPC::BP8 }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::G8RC_and_G8RC_NOX0RegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1), ArrayRef(AltOrder2) }; const unsigned Select = G8RC_and_G8RC_NOX0AltOrderSelect(MF); assert(Select < 3); return Order[Select]; } static inline unsigned G8pRCAltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().is64BitELFABI(); } static ArrayRef G8pRCGetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::G8p2, PPC::G8p3, PPC::G8p4, PPC::G8p5, PPC::G8p14, PPC::G8p13, PPC::G8p12, PPC::G8p11, PPC::G8p10, PPC::G8p9, PPC::G8p8, PPC::G8p7, PPC::G8p15, PPC::G8p6, PPC::G8p0, PPC::G8p1 }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::G8pRCRegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1) }; const unsigned Select = G8pRCAltOrderSelect(MF); assert(Select < 2); return Order[Select]; } static inline unsigned G8pRC_with_sub_32_in_GPRC_NOR0AltOrderSelect(const MachineFunction &MF) { return MF.getSubtarget().is64BitELFABI(); } static ArrayRef G8pRC_with_sub_32_in_GPRC_NOR0GetRawAllocationOrder(const MachineFunction &MF) { static const MCPhysReg AltOrder1[] = { PPC::G8p2, PPC::G8p3, PPC::G8p4, PPC::G8p5, PPC::G8p14, PPC::G8p13, PPC::G8p12, PPC::G8p11, PPC::G8p10, PPC::G8p9, PPC::G8p8, PPC::G8p7, PPC::G8p15, PPC::G8p6, PPC::G8p1 }; const MCRegisterClass &MCR = PPCMCRegisterClasses[PPC::G8pRC_with_sub_32_in_GPRC_NOR0RegClassID]; const ArrayRef Order[] = { ArrayRef(MCR.begin(), MCR.getNumRegs()), ArrayRef(AltOrder1) }; const unsigned Select = G8pRC_with_sub_32_in_GPRC_NOR0AltOrderSelect(MF); assert(Select < 2); return Order[Select]; } namespace PPC { // Register class instances extern const TargetRegisterClass VSSRCRegClass = { &PPCMCRegisterClasses[VSSRCRegClassID], VSSRCSubClassMask, SuperRegIdxSeqs + 25, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass GPRCRegClass = { &PPCMCRegisterClasses[GPRCRegClassID], GPRCSubClassMask, SuperRegIdxSeqs + 69, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, GPRCGetRawAllocationOrder }; extern const TargetRegisterClass GPRC_NOR0RegClass = { &PPCMCRegisterClasses[GPRC_NOR0RegClassID], GPRC_NOR0SubClassMask, SuperRegIdxSeqs + 69, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, GPRC_NOR0GetRawAllocationOrder }; extern const TargetRegisterClass GPRC_and_GPRC_NOR0RegClass = { &PPCMCRegisterClasses[GPRC_and_GPRC_NOR0RegClassID], GPRC_and_GPRC_NOR0SubClassMask, SuperRegIdxSeqs + 69, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ GPRC_and_GPRC_NOR0Superclasses, GPRC_and_GPRC_NOR0GetRawAllocationOrder }; extern const TargetRegisterClass CRBITRCRegClass = { &PPCMCRegisterClasses[CRBITRCRegClassID], CRBITRCSubClassMask, SuperRegIdxSeqs + 9, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, CRBITRCGetRawAllocationOrder }; extern const TargetRegisterClass F4RCRegClass = { &PPCMCRegisterClasses[F4RCRegClassID], F4RCSubClassMask, SuperRegIdxSeqs + 25, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ F4RCSuperclasses, nullptr }; extern const TargetRegisterClass CRRCRegClass = { &PPCMCRegisterClasses[CRRCRegClassID], CRRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x00000000000000F0), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, CRRCGetRawAllocationOrder }; extern const TargetRegisterClass CARRYRCRegClass = { &PPCMCRegisterClasses[CARRYRCRegClassID], CARRYRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass CTRRCRegClass = { &PPCMCRegisterClasses[CTRRCRegClassID], CTRRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass LRRCRegClass = { &PPCMCRegisterClasses[LRRCRegClassID], LRRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass VRSAVERCRegClass = { &PPCMCRegisterClasses[VRSAVERCRegClassID], VRSAVERCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[SPILLTOVSRRCRegClassID], SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 30, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass VSFRCRegClass = { &PPCMCRegisterClasses[VSFRCRegClassID], VSFRCSubClassMask, SuperRegIdxSeqs + 25, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSFRCSuperclasses, nullptr }; extern const TargetRegisterClass G8RCRegClass = { &PPCMCRegisterClasses[G8RCRegClassID], G8RCSubClassMask, SuperRegIdxSeqs + 3, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ G8RCSuperclasses, G8RCGetRawAllocationOrder }; extern const TargetRegisterClass G8RC_NOX0RegClass = { &PPCMCRegisterClasses[G8RC_NOX0RegClassID], G8RC_NOX0SubClassMask, SuperRegIdxSeqs + 3, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, G8RC_NOX0GetRawAllocationOrder }; extern const TargetRegisterClass SPILLTOVSRRC_and_VSFRCRegClass = { &PPCMCRegisterClasses[SPILLTOVSRRC_and_VSFRCRegClassID], SPILLTOVSRRC_and_VSFRCSubClassMask, SuperRegIdxSeqs + 25, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ SPILLTOVSRRC_and_VSFRCSuperclasses, nullptr }; extern const TargetRegisterClass G8RC_and_G8RC_NOX0RegClass = { &PPCMCRegisterClasses[G8RC_and_G8RC_NOX0RegClassID], G8RC_and_G8RC_NOX0SubClassMask, SuperRegIdxSeqs + 3, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ G8RC_and_G8RC_NOX0Superclasses, G8RC_and_G8RC_NOX0GetRawAllocationOrder }; extern const TargetRegisterClass F8RCRegClass = { &PPCMCRegisterClasses[F8RCRegClassID], F8RCSubClassMask, SuperRegIdxSeqs + 25, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ F8RCSuperclasses, nullptr }; extern const TargetRegisterClass SPERCRegClass = { &PPCMCRegisterClasses[SPERCRegClassID], SPERCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass VFRCRegClass = { &PPCMCRegisterClasses[VFRCRegClassID], VFRCSubClassMask, SuperRegIdxSeqs + 17, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VFRCSuperclasses, nullptr }; extern const TargetRegisterClass SPERC_with_sub_32_in_GPRC_NOR0RegClass = { &PPCMCRegisterClasses[SPERC_with_sub_32_in_GPRC_NOR0RegClassID], SPERC_with_sub_32_in_GPRC_NOR0SubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ SPERC_with_sub_32_in_GPRC_NOR0Superclasses, nullptr }; extern const TargetRegisterClass SPILLTOVSRRC_and_VFRCRegClass = { &PPCMCRegisterClasses[SPILLTOVSRRC_and_VFRCRegClassID], SPILLTOVSRRC_and_VFRCSubClassMask, SuperRegIdxSeqs + 17, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ SPILLTOVSRRC_and_VFRCSuperclasses, nullptr }; extern const TargetRegisterClass SPILLTOVSRRC_and_F4RCRegClass = { &PPCMCRegisterClasses[SPILLTOVSRRC_and_F4RCRegClassID], SPILLTOVSRRC_and_F4RCSubClassMask, SuperRegIdxSeqs + 25, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ SPILLTOVSRRC_and_F4RCSuperclasses, nullptr }; extern const TargetRegisterClass CTRRC8RegClass = { &PPCMCRegisterClasses[CTRRC8RegClassID], CTRRC8SubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass LR8RCRegClass = { &PPCMCRegisterClasses[LR8RCRegClassID], LR8RCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass DMRROWRCRegClass = { &PPCMCRegisterClasses[DMRROWRCRegClassID], DMRROWRCSubClassMask, SuperRegIdxSeqs + 52, LaneBitmask(0x0000000000000001), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass VSRCRegClass = { &PPCMCRegisterClasses[VSRCRegClassID], VSRCSubClassMask, SuperRegIdxSeqs + 20, LaneBitmask(0x0000000000000002), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass VSRC_with_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[VSRC_with_sub_64_in_SPILLTOVSRRCRegClassID], VSRC_with_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 20, LaneBitmask(0x0000000000000002), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSRC_with_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass VRRCRegClass = { &PPCMCRegisterClasses[VRRCRegClassID], VRRCSubClassMask, SuperRegIdxSeqs + 14, LaneBitmask(0x0000000000000002), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VRRCSuperclasses, nullptr }; extern const TargetRegisterClass VSLRCRegClass = { &PPCMCRegisterClasses[VSLRCRegClassID], VSLRCSubClassMask, SuperRegIdxSeqs + 20, LaneBitmask(0x0000000000000002), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSLRCSuperclasses, nullptr }; extern const TargetRegisterClass VRRC_with_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[VRRC_with_sub_64_in_SPILLTOVSRRCRegClassID], VRRC_with_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 14, LaneBitmask(0x0000000000000002), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VRRC_with_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass G8pRCRegClass = { &PPCMCRegisterClasses[G8pRCRegClassID], G8pRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000002000001), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, G8pRCGetRawAllocationOrder }; extern const TargetRegisterClass G8pRC_with_sub_32_in_GPRC_NOR0RegClass = { &PPCMCRegisterClasses[G8pRC_with_sub_32_in_GPRC_NOR0RegClassID], G8pRC_with_sub_32_in_GPRC_NOR0SubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000002000001), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ G8pRC_with_sub_32_in_GPRC_NOR0Superclasses, G8pRC_with_sub_32_in_GPRC_NOR0GetRawAllocationOrder }; extern const TargetRegisterClass VSLRC_with_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[VSLRC_with_sub_64_in_SPILLTOVSRRCRegClassID], VSLRC_with_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 20, LaneBitmask(0x0000000000000002), 0, false, 0x00, /* TSFlags */ false, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSLRC_with_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass DMRROWpRCRegClass = { &PPCMCRegisterClasses[DMRROWpRCRegClassID], DMRROWpRCSubClassMask, SuperRegIdxSeqs + 43, LaneBitmask(0x000000000000000C), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass VSRpRCRegClass = { &PPCMCRegisterClasses[VSRpRCRegClassID], VSRpRCSubClassMask, SuperRegIdxSeqs + 6, LaneBitmask(0x0000000000000102), 2, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClassID], VSRpRC_with_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 6, LaneBitmask(0x0000000000000102), 2, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSRpRC_with_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass VSRpRC_with_sub_64_in_F4RCRegClass = { &PPCMCRegisterClasses[VSRpRC_with_sub_64_in_F4RCRegClassID], VSRpRC_with_sub_64_in_F4RCSubClassMask, SuperRegIdxSeqs + 6, LaneBitmask(0x0000000000000102), 2, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSRpRC_with_sub_64_in_F4RCSuperclasses, nullptr }; extern const TargetRegisterClass VSRpRC_with_sub_64_in_VFRCRegClass = { &PPCMCRegisterClasses[VSRpRC_with_sub_64_in_VFRCRegClassID], VSRpRC_with_sub_64_in_VFRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000102), 2, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSRpRC_with_sub_64_in_VFRCSuperclasses, nullptr }; extern const TargetRegisterClass VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCRegClass = { &PPCMCRegisterClasses[VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCRegClassID], VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000102), 2, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCSuperclasses, nullptr }; extern const TargetRegisterClass VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCRegClass = { &PPCMCRegisterClasses[VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCRegClassID], VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCSubClassMask, SuperRegIdxSeqs + 6, LaneBitmask(0x0000000000000102), 2, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCSuperclasses, nullptr }; extern const TargetRegisterClass ACCRCRegClass = { &PPCMCRegisterClasses[ACCRCRegClassID], ACCRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000702), 31, true, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass UACCRCRegClass = { &PPCMCRegisterClasses[UACCRCRegClassID], UACCRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000702), 4, true, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass WACCRCRegClass = { &PPCMCRegisterClasses[WACCRCRegClassID], WACCRCSubClassMask, SuperRegIdxSeqs + 40, LaneBitmask(0x000000000000180C), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass WACC_HIRCRegClass = { &PPCMCRegisterClasses[WACC_HIRCRegClassID], WACC_HIRCSubClassMask, SuperRegIdxSeqs + 37, LaneBitmask(0x000000000000180C), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass ACCRC_with_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[ACCRC_with_sub_64_in_SPILLTOVSRRCRegClassID], ACCRC_with_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000702), 31, true, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ ACCRC_with_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass UACCRC_with_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[UACCRC_with_sub_64_in_SPILLTOVSRRCRegClassID], UACCRC_with_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000702), 4, true, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ UACCRC_with_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClassID], ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000702), 31, true, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClass = { &PPCMCRegisterClasses[UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClassID], UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000000000702), 4, true, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCSuperclasses, nullptr }; extern const TargetRegisterClass DMRRCRegClass = { &PPCMCRegisterClasses[DMRRCRegClassID], DMRRCSubClassMask, SuperRegIdxSeqs + 0, LaneBitmask(0x000000000001F80C), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; extern const TargetRegisterClass DMRpRCRegClass = { &PPCMCRegisterClasses[DMRpRCRegClassID], DMRpRCSubClassMask, SuperRegIdxSeqs + 2, LaneBitmask(0x0000000001FFF80C), 0, false, 0x00, /* TSFlags */ true, /* HasDisjunctSubRegs */ false, /* CoveredBySubRegs */ NullRegClasses, nullptr }; } // end namespace PPC namespace { const TargetRegisterClass *const RegisterClasses[] = { &PPC::VSSRCRegClass, &PPC::GPRCRegClass, &PPC::GPRC_NOR0RegClass, &PPC::GPRC_and_GPRC_NOR0RegClass, &PPC::CRBITRCRegClass, &PPC::F4RCRegClass, &PPC::CRRCRegClass, &PPC::CARRYRCRegClass, &PPC::CTRRCRegClass, &PPC::LRRCRegClass, &PPC::VRSAVERCRegClass, &PPC::SPILLTOVSRRCRegClass, &PPC::VSFRCRegClass, &PPC::G8RCRegClass, &PPC::G8RC_NOX0RegClass, &PPC::SPILLTOVSRRC_and_VSFRCRegClass, &PPC::G8RC_and_G8RC_NOX0RegClass, &PPC::F8RCRegClass, &PPC::SPERCRegClass, &PPC::VFRCRegClass, &PPC::SPERC_with_sub_32_in_GPRC_NOR0RegClass, &PPC::SPILLTOVSRRC_and_VFRCRegClass, &PPC::SPILLTOVSRRC_and_F4RCRegClass, &PPC::CTRRC8RegClass, &PPC::LR8RCRegClass, &PPC::DMRROWRCRegClass, &PPC::VSRCRegClass, &PPC::VSRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::VRRCRegClass, &PPC::VSLRCRegClass, &PPC::VRRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::G8pRCRegClass, &PPC::G8pRC_with_sub_32_in_GPRC_NOR0RegClass, &PPC::VSLRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::DMRROWpRCRegClass, &PPC::VSRpRCRegClass, &PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::VSRpRC_with_sub_64_in_F4RCRegClass, &PPC::VSRpRC_with_sub_64_in_VFRCRegClass, &PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRCRegClass, &PPC::VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RCRegClass, &PPC::ACCRCRegClass, &PPC::UACCRCRegClass, &PPC::WACCRCRegClass, &PPC::WACC_HIRCRegClass, &PPC::ACCRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::UACCRC_with_sub_64_in_SPILLTOVSRRCRegClass, &PPC::ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClass, &PPC::UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRCRegClass, &PPC::DMRRCRegClass, &PPC::DMRpRCRegClass, }; } // end anonymous namespace static const uint8_t CostPerUseTable[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; static const bool InAllocatableClassTable[] = { false, true, true, false, true, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, }; static const TargetRegisterInfoDesc PPCRegInfoDesc = { // Extra Descriptors CostPerUseTable, 1, InAllocatableClassTable}; unsigned PPCGenRegisterInfo::composeSubRegIndicesImpl(unsigned IdxA, unsigned IdxB) const { static const uint8_t RowMap[48] = { 0, 0, 0, 1, 0, 0, 0, 2, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2, 3, 0, 0, 0, 1, 3, 0, 0, 0, 0, 0, 3, 4, 0, 0, 0, 0, 1, 5, 6, 1, 0, 0, 0, 0, 6, 7, 0, 0, 0, }; static const uint8_t Rows[8][48] = { { PPC::sub_32, PPC::sub_64, 0, 0, PPC::sub_dmrrow0, PPC::sub_dmrrow1, PPC::sub_dmrrowp0, PPC::sub_dmrrowp1, 0, 0, 0, 0, 0, 0, 0, 0, PPC::sub_vsx0, PPC::sub_vsx1, PPC::sub_wacc_hi, PPC::sub_wacc_lo, PPC::sub_vsx1_then_sub_64, 0, 0, 0, 0, PPC::sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_dmrrowp1_then_sub_dmrrow1, PPC::sub_wacc_hi_then_sub_dmrrow0, PPC::sub_wacc_hi_then_sub_dmrrow1, PPC::sub_wacc_hi_then_sub_dmrrowp0, PPC::sub_wacc_hi_then_sub_dmrrowp1, PPC::sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { PPC::sub_gp8_x1_then_sub_32, PPC::sub_pair1_then_sub_64, 0, 0, PPC::sub_dmr1_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_dmrrow1, PPC::sub_dmr1_then_sub_dmrrowp0, PPC::sub_dmr1_then_sub_dmrrowp1, 0, 0, 0, 0, 0, 0, 0, 0, PPC::sub_pair1_then_sub_vsx0, PPC::sub_pair1_then_sub_vsx1, PPC::sub_dmr1_then_sub_wacc_hi, PPC::sub_dmr1_then_sub_wacc_lo, PPC::sub_pair1_then_sub_vsx1_then_sub_64, 0, 0, 0, 0, PPC::sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { 0, PPC::sub_vsx1_then_sub_64, 0, 0, PPC::sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { 0, PPC::sub_pair1_then_sub_vsx1_then_sub_64, 0, 0, PPC::sub_wacc_hi_then_sub_dmrrow0, PPC::sub_wacc_hi_then_sub_dmrrow1, PPC::sub_wacc_hi_then_sub_dmrrowp0, PPC::sub_wacc_hi_then_sub_dmrrowp1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, PPC::sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { 0, 0, 0, 0, PPC::sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { 0, 0, 0, 0, PPC::sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { 0, 0, 0, 0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { 0, 0, 0, 0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0, PPC::sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, }; --IdxA; assert(IdxA < 48); (void) IdxA; --IdxB; assert(IdxB < 48); return Rows[RowMap[IdxA]][IdxB]; } struct MaskRolOp { LaneBitmask Mask; uint8_t RotateLeft; }; static const MaskRolOp LaneMaskComposeSequences[] = { { LaneBitmask(0xFFFFFFFFFFFFFFFF), 0 }, { LaneBitmask::getNone(), 0 }, // Sequence 0 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 1 }, { LaneBitmask::getNone(), 0 }, // Sequence 2 { LaneBitmask(0x000000000000000C), 15 }, { LaneBitmask(0x000000000001F800), 8 }, { LaneBitmask::getNone(), 0 }, // Sequence 4 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 2 }, { LaneBitmask::getNone(), 0 }, // Sequence 7 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 3 }, { LaneBitmask::getNone(), 0 }, // Sequence 9 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 9 }, { LaneBitmask::getNone(), 0 }, // Sequence 11 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 4 }, { LaneBitmask::getNone(), 0 }, // Sequence 13 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 25 }, { LaneBitmask::getNone(), 0 }, // Sequence 15 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 5 }, { LaneBitmask::getNone(), 0 }, // Sequence 17 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 6 }, { LaneBitmask::getNone(), 0 }, // Sequence 19 { LaneBitmask(0x0000000000000002), 8 }, { LaneBitmask(0x0000000000000100), 2 }, { LaneBitmask::getNone(), 0 }, // Sequence 21 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 7 }, { LaneBitmask::getNone(), 0 }, // Sequence 24 { LaneBitmask(0x000000000000000C), 11 }, { LaneBitmask(0x0000000000001800), 4 }, { LaneBitmask::getNone(), 0 }, // Sequence 26 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 8 }, { LaneBitmask::getNone(), 0 }, // Sequence 29 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 10 }, { LaneBitmask::getNone(), 0 }, // Sequence 31 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 11 }, { LaneBitmask::getNone(), 0 }, // Sequence 33 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 12 }, { LaneBitmask::getNone(), 0 }, // Sequence 35 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 13 }, { LaneBitmask::getNone(), 0 }, // Sequence 37 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 14 }, { LaneBitmask::getNone(), 0 }, // Sequence 39 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 15 }, { LaneBitmask::getNone(), 0 }, // Sequence 41 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 16 }, { LaneBitmask::getNone(), 0 }, // Sequence 43 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 17 }, { LaneBitmask::getNone(), 0 }, // Sequence 45 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 18 }, { LaneBitmask::getNone(), 0 }, // Sequence 47 { LaneBitmask(0x000000000000000C), 19 }, { LaneBitmask(0x0000000000001800), 12 }, { LaneBitmask::getNone(), 0 }, // Sequence 49 { LaneBitmask(0x000000000000000C), 15 }, { LaneBitmask(0x0000000000001800), 8 }, { LaneBitmask::getNone(), 0 }, // Sequence 52 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 19 }, { LaneBitmask::getNone(), 0 }, // Sequence 55 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 20 }, { LaneBitmask::getNone(), 0 }, // Sequence 57 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 21 }, { LaneBitmask::getNone(), 0 }, // Sequence 59 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 22 }, { LaneBitmask::getNone(), 0 }, // Sequence 61 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 23 }, { LaneBitmask::getNone(), 0 }, // Sequence 63 { LaneBitmask(0xFFFFFFFFFFFFFFFF), 24 }, { LaneBitmask::getNone(), 0 } // Sequence 65 }; static const uint8_t CompositeSequences[] = { 0, // to sub_32 2, // to sub_64 0, // to sub_dmr0 4, // to sub_dmr1 7, // to sub_dmrrow0 9, // to sub_dmrrow1 0, // to sub_dmrrowp0 11, // to sub_dmrrowp1 13, // to sub_eq 0, // to sub_gp8_x0 15, // to sub_gp8_x1 17, // to sub_gt 19, // to sub_lt 0, // to sub_pair0 21, // to sub_pair1 24, // to sub_un 0, // to sub_vsx0 24, // to sub_vsx1 26, // to sub_wacc_hi 0, // to sub_wacc_lo 29, // to sub_vsx1_then_sub_64 11, // to sub_pair1_then_sub_64 29, // to sub_pair1_then_sub_vsx0 11, // to sub_pair1_then_sub_vsx1 31, // to sub_pair1_then_sub_vsx1_then_sub_64 33, // to sub_dmrrowp1_then_sub_dmrrow0 35, // to sub_dmrrowp1_then_sub_dmrrow1 37, // to sub_wacc_hi_then_sub_dmrrow0 39, // to sub_wacc_hi_then_sub_dmrrow1 33, // to sub_wacc_hi_then_sub_dmrrowp0 37, // to sub_wacc_hi_then_sub_dmrrowp1 41, // to sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 43, // to sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 45, // to sub_dmr1_then_sub_dmrrow0 47, // to sub_dmr1_then_sub_dmrrow1 41, // to sub_dmr1_then_sub_dmrrowp0 45, // to sub_dmr1_then_sub_dmrrowp1 49, // to sub_dmr1_then_sub_wacc_hi 52, // to sub_dmr1_then_sub_wacc_lo 55, // to sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 57, // to sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 59, // to sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 61, // to sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 55, // to sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 59, // to sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 63, // to sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 65, // to sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 15 // to sub_gp8_x1_then_sub_32 }; LaneBitmask PPCGenRegisterInfo::composeSubRegIndexLaneMaskImpl(unsigned IdxA, LaneBitmask LaneMask) const { --IdxA; assert(IdxA < 48 && "Subregister index out of bounds"); LaneBitmask Result; for (const MaskRolOp *Ops = &LaneMaskComposeSequences[CompositeSequences[IdxA]]; Ops->Mask.any(); ++Ops) { LaneBitmask::Type M = LaneMask.getAsInteger() & Ops->Mask.getAsInteger(); if (unsigned S = Ops->RotateLeft) Result |= LaneBitmask((M << S) | (M >> (LaneBitmask::BitWidth - S))); else Result |= LaneBitmask(M); } return Result; } LaneBitmask PPCGenRegisterInfo::reverseComposeSubRegIndexLaneMaskImpl(unsigned IdxA, LaneBitmask LaneMask) const { LaneMask &= getSubRegIndexLaneMask(IdxA); --IdxA; assert(IdxA < 48 && "Subregister index out of bounds"); LaneBitmask Result; for (const MaskRolOp *Ops = &LaneMaskComposeSequences[CompositeSequences[IdxA]]; Ops->Mask.any(); ++Ops) { LaneBitmask::Type M = LaneMask.getAsInteger(); if (unsigned S = Ops->RotateLeft) Result |= LaneBitmask((M >> S) | (M << (LaneBitmask::BitWidth - S))); else Result |= LaneBitmask(M); } return Result; } const TargetRegisterClass *PPCGenRegisterInfo::getSubClassWithSubReg(const TargetRegisterClass *RC, unsigned Idx) const { static const uint8_t Table[51][48] = { { // VSSRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // GPRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // GPRC_NOR0 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // GPRC_and_GPRC_NOR0 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // CRBITRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // F4RC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // CRRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 7, // sub_eq -> CRRC 0, // sub_gp8_x0 0, // sub_gp8_x1 7, // sub_gt -> CRRC 7, // sub_lt -> CRRC 0, // sub_pair0 0, // sub_pair1 7, // sub_un -> CRRC 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // CARRYRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // CTRRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // LRRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VRSAVERC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC 14, // sub_32 -> G8RC 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSFRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // G8RC 14, // sub_32 -> G8RC 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // G8RC_NOX0 15, // sub_32 -> G8RC_NOX0 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC_and_VSFRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // G8RC_and_G8RC_NOX0 17, // sub_32 -> G8RC_and_G8RC_NOX0 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // F8RC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // SPERC 19, // sub_32 -> SPERC 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VFRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // SPERC_with_sub_32_in_GPRC_NOR0 21, // sub_32 -> SPERC_with_sub_32_in_GPRC_NOR0 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC_and_VFRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC_and_F4RC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // CTRRC8 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // LR8RC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // DMRROWRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRC 0, // sub_32 27, // sub_64 -> VSRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_32 28, // sub_64 -> VSRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VRRC 0, // sub_32 29, // sub_64 -> VRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSLRC 0, // sub_32 30, // sub_64 -> VSLRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VRRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_32 31, // sub_64 -> VRRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // G8pRC 32, // sub_32 -> G8pRC 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 32, // sub_gp8_x0 -> G8pRC 32, // sub_gp8_x1 -> G8pRC 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 32, // sub_gp8_x1_then_sub_32 -> G8pRC }, { // G8pRC_with_sub_32_in_GPRC_NOR0 33, // sub_32 -> G8pRC_with_sub_32_in_GPRC_NOR0 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 33, // sub_gp8_x0 -> G8pRC_with_sub_32_in_GPRC_NOR0 33, // sub_gp8_x1 -> G8pRC_with_sub_32_in_GPRC_NOR0 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 33, // sub_gp8_x1_then_sub_32 -> G8pRC_with_sub_32_in_GPRC_NOR0 }, { // VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_32 34, // sub_64 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // DMRROWpRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 35, // sub_dmrrow0 -> DMRROWpRC 35, // sub_dmrrow1 -> DMRROWpRC 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRpRC 0, // sub_32 36, // sub_64 -> VSRpRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 36, // sub_vsx0 -> VSRpRC 36, // sub_vsx1 -> VSRpRC 0, // sub_wacc_hi 0, // sub_wacc_lo 36, // sub_vsx1_then_sub_64 -> VSRpRC 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_32 37, // sub_64 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 37, // sub_vsx0 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC 37, // sub_vsx1 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_wacc_hi 0, // sub_wacc_lo 37, // sub_vsx1_then_sub_64 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_F4RC 0, // sub_32 38, // sub_64 -> VSRpRC_with_sub_64_in_F4RC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 38, // sub_vsx0 -> VSRpRC_with_sub_64_in_F4RC 38, // sub_vsx1 -> VSRpRC_with_sub_64_in_F4RC 0, // sub_wacc_hi 0, // sub_wacc_lo 38, // sub_vsx1_then_sub_64 -> VSRpRC_with_sub_64_in_F4RC 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_VFRC 0, // sub_32 39, // sub_64 -> VSRpRC_with_sub_64_in_VFRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 39, // sub_vsx0 -> VSRpRC_with_sub_64_in_VFRC 39, // sub_vsx1 -> VSRpRC_with_sub_64_in_VFRC 0, // sub_wacc_hi 0, // sub_wacc_lo 39, // sub_vsx1_then_sub_64 -> VSRpRC_with_sub_64_in_VFRC 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC 0, // sub_32 40, // sub_64 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 40, // sub_vsx0 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC 40, // sub_vsx1 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC 0, // sub_wacc_hi 0, // sub_wacc_lo 40, // sub_vsx1_then_sub_64 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 0, // sub_32 41, // sub_64 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 41, // sub_vsx0 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 41, // sub_vsx1 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 0, // sub_wacc_hi 0, // sub_wacc_lo 41, // sub_vsx1_then_sub_64 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // ACCRC 0, // sub_32 42, // sub_64 -> ACCRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 42, // sub_pair0 -> ACCRC 42, // sub_pair1 -> ACCRC 0, // sub_un 42, // sub_vsx0 -> ACCRC 42, // sub_vsx1 -> ACCRC 0, // sub_wacc_hi 0, // sub_wacc_lo 42, // sub_vsx1_then_sub_64 -> ACCRC 42, // sub_pair1_then_sub_64 -> ACCRC 42, // sub_pair1_then_sub_vsx0 -> ACCRC 42, // sub_pair1_then_sub_vsx1 -> ACCRC 42, // sub_pair1_then_sub_vsx1_then_sub_64 -> ACCRC 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // UACCRC 0, // sub_32 43, // sub_64 -> UACCRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 43, // sub_pair0 -> UACCRC 43, // sub_pair1 -> UACCRC 0, // sub_un 43, // sub_vsx0 -> UACCRC 43, // sub_vsx1 -> UACCRC 0, // sub_wacc_hi 0, // sub_wacc_lo 43, // sub_vsx1_then_sub_64 -> UACCRC 43, // sub_pair1_then_sub_64 -> UACCRC 43, // sub_pair1_then_sub_vsx0 -> UACCRC 43, // sub_pair1_then_sub_vsx1 -> UACCRC 43, // sub_pair1_then_sub_vsx1_then_sub_64 -> UACCRC 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // WACCRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 44, // sub_dmrrow0 -> WACCRC 44, // sub_dmrrow1 -> WACCRC 44, // sub_dmrrowp0 -> WACCRC 44, // sub_dmrrowp1 -> WACCRC 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 44, // sub_dmrrowp1_then_sub_dmrrow0 -> WACCRC 44, // sub_dmrrowp1_then_sub_dmrrow1 -> WACCRC 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // WACC_HIRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 45, // sub_dmrrow0 -> WACC_HIRC 45, // sub_dmrrow1 -> WACC_HIRC 45, // sub_dmrrowp0 -> WACC_HIRC 45, // sub_dmrrowp1 -> WACC_HIRC 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 0, // sub_wacc_hi 0, // sub_wacc_lo 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 45, // sub_dmrrowp1_then_sub_dmrrow0 -> WACC_HIRC 45, // sub_dmrrowp1_then_sub_dmrrow1 -> WACC_HIRC 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // ACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_32 46, // sub_64 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 46, // sub_pair0 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 46, // sub_pair1 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_un 46, // sub_vsx0 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 46, // sub_vsx1 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_wacc_hi 0, // sub_wacc_lo 46, // sub_vsx1_then_sub_64 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 46, // sub_pair1_then_sub_64 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 46, // sub_pair1_then_sub_vsx0 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 46, // sub_pair1_then_sub_vsx1 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 46, // sub_pair1_then_sub_vsx1_then_sub_64 -> ACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // UACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_32 47, // sub_64 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 47, // sub_pair0 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 47, // sub_pair1 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_un 47, // sub_vsx0 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 47, // sub_vsx1 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_wacc_hi 0, // sub_wacc_lo 47, // sub_vsx1_then_sub_64 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 47, // sub_pair1_then_sub_64 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 47, // sub_pair1_then_sub_vsx0 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 47, // sub_pair1_then_sub_vsx1 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 47, // sub_pair1_then_sub_vsx1_then_sub_64 -> UACCRC_with_sub_64_in_SPILLTOVSRRC 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_32 48, // sub_64 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 48, // sub_pair0 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 48, // sub_pair1 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_un 48, // sub_vsx0 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 48, // sub_vsx1 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_wacc_hi 0, // sub_wacc_lo 48, // sub_vsx1_then_sub_64 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 48, // sub_pair1_then_sub_64 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 48, // sub_pair1_then_sub_vsx0 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 48, // sub_pair1_then_sub_vsx1 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 48, // sub_pair1_then_sub_vsx1_then_sub_64 -> ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_32 49, // sub_64 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_dmr0 0, // sub_dmr1 0, // sub_dmrrow0 0, // sub_dmrrow1 0, // sub_dmrrowp0 0, // sub_dmrrowp1 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 49, // sub_pair0 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 49, // sub_pair1 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_un 49, // sub_vsx0 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 49, // sub_vsx1 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_wacc_hi 0, // sub_wacc_lo 49, // sub_vsx1_then_sub_64 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 49, // sub_pair1_then_sub_64 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 49, // sub_pair1_then_sub_vsx0 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 49, // sub_pair1_then_sub_vsx1 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 49, // sub_pair1_then_sub_vsx1_then_sub_64 -> UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmrrowp1_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrow1 0, // sub_wacc_hi_then_sub_dmrrowp0 0, // sub_wacc_hi_then_sub_dmrrowp1 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // DMRRC 0, // sub_32 0, // sub_64 0, // sub_dmr0 0, // sub_dmr1 50, // sub_dmrrow0 -> DMRRC 50, // sub_dmrrow1 -> DMRRC 50, // sub_dmrrowp0 -> DMRRC 50, // sub_dmrrowp1 -> DMRRC 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 50, // sub_wacc_hi -> DMRRC 50, // sub_wacc_lo -> DMRRC 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 50, // sub_dmrrowp1_then_sub_dmrrow0 -> DMRRC 50, // sub_dmrrowp1_then_sub_dmrrow1 -> DMRRC 50, // sub_wacc_hi_then_sub_dmrrow0 -> DMRRC 50, // sub_wacc_hi_then_sub_dmrrow1 -> DMRRC 50, // sub_wacc_hi_then_sub_dmrrowp0 -> DMRRC 50, // sub_wacc_hi_then_sub_dmrrowp1 -> DMRRC 50, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRRC 50, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRRC 0, // sub_dmr1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi 0, // sub_dmr1_then_sub_wacc_lo 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // sub_gp8_x1_then_sub_32 }, { // DMRpRC 0, // sub_32 0, // sub_64 51, // sub_dmr0 -> DMRpRC 51, // sub_dmr1 -> DMRpRC 51, // sub_dmrrow0 -> DMRpRC 51, // sub_dmrrow1 -> DMRpRC 51, // sub_dmrrowp0 -> DMRpRC 51, // sub_dmrrowp1 -> DMRpRC 0, // sub_eq 0, // sub_gp8_x0 0, // sub_gp8_x1 0, // sub_gt 0, // sub_lt 0, // sub_pair0 0, // sub_pair1 0, // sub_un 0, // sub_vsx0 0, // sub_vsx1 51, // sub_wacc_hi -> DMRpRC 51, // sub_wacc_lo -> DMRpRC 0, // sub_vsx1_then_sub_64 0, // sub_pair1_then_sub_64 0, // sub_pair1_then_sub_vsx0 0, // sub_pair1_then_sub_vsx1 0, // sub_pair1_then_sub_vsx1_then_sub_64 51, // sub_dmrrowp1_then_sub_dmrrow0 -> DMRpRC 51, // sub_dmrrowp1_then_sub_dmrrow1 -> DMRpRC 51, // sub_wacc_hi_then_sub_dmrrow0 -> DMRpRC 51, // sub_wacc_hi_then_sub_dmrrow1 -> DMRpRC 51, // sub_wacc_hi_then_sub_dmrrowp0 -> DMRpRC 51, // sub_wacc_hi_then_sub_dmrrowp1 -> DMRpRC 51, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRpRC 51, // sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRpRC 51, // sub_dmr1_then_sub_dmrrow0 -> DMRpRC 51, // sub_dmr1_then_sub_dmrrow1 -> DMRpRC 51, // sub_dmr1_then_sub_dmrrowp0 -> DMRpRC 51, // sub_dmr1_then_sub_dmrrowp1 -> DMRpRC 51, // sub_dmr1_then_sub_wacc_hi -> DMRpRC 51, // sub_dmr1_then_sub_wacc_lo -> DMRpRC 51, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRpRC 51, // sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRpRC 51, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 -> DMRpRC 51, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 -> DMRpRC 51, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 -> DMRpRC 51, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 -> DMRpRC 51, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRpRC 51, // sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRpRC 0, // sub_gp8_x1_then_sub_32 }, }; assert(RC && "Missing regclass"); if (!Idx) return RC; --Idx; assert(Idx < 48 && "Bad subreg"); unsigned TV = Table[RC->getID()][Idx]; return TV ? getRegClass(TV - 1) : nullptr; } const TargetRegisterClass *PPCGenRegisterInfo::getSubRegisterClass(const TargetRegisterClass *RC, unsigned Idx) const { static const uint8_t Table[51][48] = { { // VSSRC 0, // VSSRC:sub_32 0, // VSSRC:sub_64 0, // VSSRC:sub_dmr0 0, // VSSRC:sub_dmr1 0, // VSSRC:sub_dmrrow0 0, // VSSRC:sub_dmrrow1 0, // VSSRC:sub_dmrrowp0 0, // VSSRC:sub_dmrrowp1 0, // VSSRC:sub_eq 0, // VSSRC:sub_gp8_x0 0, // VSSRC:sub_gp8_x1 0, // VSSRC:sub_gt 0, // VSSRC:sub_lt 0, // VSSRC:sub_pair0 0, // VSSRC:sub_pair1 0, // VSSRC:sub_un 0, // VSSRC:sub_vsx0 0, // VSSRC:sub_vsx1 0, // VSSRC:sub_wacc_hi 0, // VSSRC:sub_wacc_lo 0, // VSSRC:sub_vsx1_then_sub_64 0, // VSSRC:sub_pair1_then_sub_64 0, // VSSRC:sub_pair1_then_sub_vsx0 0, // VSSRC:sub_pair1_then_sub_vsx1 0, // VSSRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSSRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSSRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSSRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSSRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSSRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSSRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSSRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSSRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSSRC:sub_dmr1_then_sub_dmrrow0 0, // VSSRC:sub_dmr1_then_sub_dmrrow1 0, // VSSRC:sub_dmr1_then_sub_dmrrowp0 0, // VSSRC:sub_dmr1_then_sub_dmrrowp1 0, // VSSRC:sub_dmr1_then_sub_wacc_hi 0, // VSSRC:sub_dmr1_then_sub_wacc_lo 0, // VSSRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSSRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSSRC:sub_gp8_x1_then_sub_32 }, { // GPRC 0, // GPRC:sub_32 0, // GPRC:sub_64 0, // GPRC:sub_dmr0 0, // GPRC:sub_dmr1 0, // GPRC:sub_dmrrow0 0, // GPRC:sub_dmrrow1 0, // GPRC:sub_dmrrowp0 0, // GPRC:sub_dmrrowp1 0, // GPRC:sub_eq 0, // GPRC:sub_gp8_x0 0, // GPRC:sub_gp8_x1 0, // GPRC:sub_gt 0, // GPRC:sub_lt 0, // GPRC:sub_pair0 0, // GPRC:sub_pair1 0, // GPRC:sub_un 0, // GPRC:sub_vsx0 0, // GPRC:sub_vsx1 0, // GPRC:sub_wacc_hi 0, // GPRC:sub_wacc_lo 0, // GPRC:sub_vsx1_then_sub_64 0, // GPRC:sub_pair1_then_sub_64 0, // GPRC:sub_pair1_then_sub_vsx0 0, // GPRC:sub_pair1_then_sub_vsx1 0, // GPRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // GPRC:sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC:sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC:sub_wacc_hi_then_sub_dmrrow0 0, // GPRC:sub_wacc_hi_then_sub_dmrrow1 0, // GPRC:sub_wacc_hi_then_sub_dmrrowp0 0, // GPRC:sub_wacc_hi_then_sub_dmrrowp1 0, // GPRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC:sub_dmr1_then_sub_dmrrow0 0, // GPRC:sub_dmr1_then_sub_dmrrow1 0, // GPRC:sub_dmr1_then_sub_dmrrowp0 0, // GPRC:sub_dmr1_then_sub_dmrrowp1 0, // GPRC:sub_dmr1_then_sub_wacc_hi 0, // GPRC:sub_dmr1_then_sub_wacc_lo 0, // GPRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // GPRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // GPRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // GPRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // GPRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC:sub_gp8_x1_then_sub_32 }, { // GPRC_NOR0 0, // GPRC_NOR0:sub_32 0, // GPRC_NOR0:sub_64 0, // GPRC_NOR0:sub_dmr0 0, // GPRC_NOR0:sub_dmr1 0, // GPRC_NOR0:sub_dmrrow0 0, // GPRC_NOR0:sub_dmrrow1 0, // GPRC_NOR0:sub_dmrrowp0 0, // GPRC_NOR0:sub_dmrrowp1 0, // GPRC_NOR0:sub_eq 0, // GPRC_NOR0:sub_gp8_x0 0, // GPRC_NOR0:sub_gp8_x1 0, // GPRC_NOR0:sub_gt 0, // GPRC_NOR0:sub_lt 0, // GPRC_NOR0:sub_pair0 0, // GPRC_NOR0:sub_pair1 0, // GPRC_NOR0:sub_un 0, // GPRC_NOR0:sub_vsx0 0, // GPRC_NOR0:sub_vsx1 0, // GPRC_NOR0:sub_wacc_hi 0, // GPRC_NOR0:sub_wacc_lo 0, // GPRC_NOR0:sub_vsx1_then_sub_64 0, // GPRC_NOR0:sub_pair1_then_sub_64 0, // GPRC_NOR0:sub_pair1_then_sub_vsx0 0, // GPRC_NOR0:sub_pair1_then_sub_vsx1 0, // GPRC_NOR0:sub_pair1_then_sub_vsx1_then_sub_64 0, // GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow0 0, // GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow1 0, // GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp0 0, // GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1 0, // GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_NOR0:sub_dmr1_then_sub_dmrrow0 0, // GPRC_NOR0:sub_dmr1_then_sub_dmrrow1 0, // GPRC_NOR0:sub_dmr1_then_sub_dmrrowp0 0, // GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_hi 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_lo 0, // GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_NOR0:sub_gp8_x1_then_sub_32 }, { // GPRC_and_GPRC_NOR0 0, // GPRC_and_GPRC_NOR0:sub_32 0, // GPRC_and_GPRC_NOR0:sub_64 0, // GPRC_and_GPRC_NOR0:sub_dmr0 0, // GPRC_and_GPRC_NOR0:sub_dmr1 0, // GPRC_and_GPRC_NOR0:sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_dmrrowp0 0, // GPRC_and_GPRC_NOR0:sub_dmrrowp1 0, // GPRC_and_GPRC_NOR0:sub_eq 0, // GPRC_and_GPRC_NOR0:sub_gp8_x0 0, // GPRC_and_GPRC_NOR0:sub_gp8_x1 0, // GPRC_and_GPRC_NOR0:sub_gt 0, // GPRC_and_GPRC_NOR0:sub_lt 0, // GPRC_and_GPRC_NOR0:sub_pair0 0, // GPRC_and_GPRC_NOR0:sub_pair1 0, // GPRC_and_GPRC_NOR0:sub_un 0, // GPRC_and_GPRC_NOR0:sub_vsx0 0, // GPRC_and_GPRC_NOR0:sub_vsx1 0, // GPRC_and_GPRC_NOR0:sub_wacc_hi 0, // GPRC_and_GPRC_NOR0:sub_wacc_lo 0, // GPRC_and_GPRC_NOR0:sub_vsx1_then_sub_64 0, // GPRC_and_GPRC_NOR0:sub_pair1_then_sub_64 0, // GPRC_and_GPRC_NOR0:sub_pair1_then_sub_vsx0 0, // GPRC_and_GPRC_NOR0:sub_pair1_then_sub_vsx1 0, // GPRC_and_GPRC_NOR0:sub_pair1_then_sub_vsx1_then_sub_64 0, // GPRC_and_GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp0 0, // GPRC_and_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1 0, // GPRC_and_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp0 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_lo 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // GPRC_and_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // GPRC_and_GPRC_NOR0:sub_gp8_x1_then_sub_32 }, { // CRBITRC 0, // CRBITRC:sub_32 0, // CRBITRC:sub_64 0, // CRBITRC:sub_dmr0 0, // CRBITRC:sub_dmr1 0, // CRBITRC:sub_dmrrow0 0, // CRBITRC:sub_dmrrow1 0, // CRBITRC:sub_dmrrowp0 0, // CRBITRC:sub_dmrrowp1 0, // CRBITRC:sub_eq 0, // CRBITRC:sub_gp8_x0 0, // CRBITRC:sub_gp8_x1 0, // CRBITRC:sub_gt 0, // CRBITRC:sub_lt 0, // CRBITRC:sub_pair0 0, // CRBITRC:sub_pair1 0, // CRBITRC:sub_un 0, // CRBITRC:sub_vsx0 0, // CRBITRC:sub_vsx1 0, // CRBITRC:sub_wacc_hi 0, // CRBITRC:sub_wacc_lo 0, // CRBITRC:sub_vsx1_then_sub_64 0, // CRBITRC:sub_pair1_then_sub_64 0, // CRBITRC:sub_pair1_then_sub_vsx0 0, // CRBITRC:sub_pair1_then_sub_vsx1 0, // CRBITRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // CRBITRC:sub_dmrrowp1_then_sub_dmrrow0 0, // CRBITRC:sub_dmrrowp1_then_sub_dmrrow1 0, // CRBITRC:sub_wacc_hi_then_sub_dmrrow0 0, // CRBITRC:sub_wacc_hi_then_sub_dmrrow1 0, // CRBITRC:sub_wacc_hi_then_sub_dmrrowp0 0, // CRBITRC:sub_wacc_hi_then_sub_dmrrowp1 0, // CRBITRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CRBITRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CRBITRC:sub_dmr1_then_sub_dmrrow0 0, // CRBITRC:sub_dmr1_then_sub_dmrrow1 0, // CRBITRC:sub_dmr1_then_sub_dmrrowp0 0, // CRBITRC:sub_dmr1_then_sub_dmrrowp1 0, // CRBITRC:sub_dmr1_then_sub_wacc_hi 0, // CRBITRC:sub_dmr1_then_sub_wacc_lo 0, // CRBITRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CRBITRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CRBITRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // CRBITRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // CRBITRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // CRBITRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // CRBITRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CRBITRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CRBITRC:sub_gp8_x1_then_sub_32 }, { // F4RC 0, // F4RC:sub_32 0, // F4RC:sub_64 0, // F4RC:sub_dmr0 0, // F4RC:sub_dmr1 0, // F4RC:sub_dmrrow0 0, // F4RC:sub_dmrrow1 0, // F4RC:sub_dmrrowp0 0, // F4RC:sub_dmrrowp1 0, // F4RC:sub_eq 0, // F4RC:sub_gp8_x0 0, // F4RC:sub_gp8_x1 0, // F4RC:sub_gt 0, // F4RC:sub_lt 0, // F4RC:sub_pair0 0, // F4RC:sub_pair1 0, // F4RC:sub_un 0, // F4RC:sub_vsx0 0, // F4RC:sub_vsx1 0, // F4RC:sub_wacc_hi 0, // F4RC:sub_wacc_lo 0, // F4RC:sub_vsx1_then_sub_64 0, // F4RC:sub_pair1_then_sub_64 0, // F4RC:sub_pair1_then_sub_vsx0 0, // F4RC:sub_pair1_then_sub_vsx1 0, // F4RC:sub_pair1_then_sub_vsx1_then_sub_64 0, // F4RC:sub_dmrrowp1_then_sub_dmrrow0 0, // F4RC:sub_dmrrowp1_then_sub_dmrrow1 0, // F4RC:sub_wacc_hi_then_sub_dmrrow0 0, // F4RC:sub_wacc_hi_then_sub_dmrrow1 0, // F4RC:sub_wacc_hi_then_sub_dmrrowp0 0, // F4RC:sub_wacc_hi_then_sub_dmrrowp1 0, // F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // F4RC:sub_dmr1_then_sub_dmrrow0 0, // F4RC:sub_dmr1_then_sub_dmrrow1 0, // F4RC:sub_dmr1_then_sub_dmrrowp0 0, // F4RC:sub_dmr1_then_sub_dmrrowp1 0, // F4RC:sub_dmr1_then_sub_wacc_hi 0, // F4RC:sub_dmr1_then_sub_wacc_lo 0, // F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // F4RC:sub_gp8_x1_then_sub_32 }, { // CRRC 0, // CRRC:sub_32 0, // CRRC:sub_64 0, // CRRC:sub_dmr0 0, // CRRC:sub_dmr1 0, // CRRC:sub_dmrrow0 0, // CRRC:sub_dmrrow1 0, // CRRC:sub_dmrrowp0 0, // CRRC:sub_dmrrowp1 5, // CRRC:sub_eq -> CRBITRC 0, // CRRC:sub_gp8_x0 0, // CRRC:sub_gp8_x1 5, // CRRC:sub_gt -> CRBITRC 5, // CRRC:sub_lt -> CRBITRC 0, // CRRC:sub_pair0 0, // CRRC:sub_pair1 5, // CRRC:sub_un -> CRBITRC 0, // CRRC:sub_vsx0 0, // CRRC:sub_vsx1 0, // CRRC:sub_wacc_hi 0, // CRRC:sub_wacc_lo 0, // CRRC:sub_vsx1_then_sub_64 0, // CRRC:sub_pair1_then_sub_64 0, // CRRC:sub_pair1_then_sub_vsx0 0, // CRRC:sub_pair1_then_sub_vsx1 0, // CRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // CRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // CRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // CRRC:sub_wacc_hi_then_sub_dmrrow0 0, // CRRC:sub_wacc_hi_then_sub_dmrrow1 0, // CRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // CRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // CRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CRRC:sub_dmr1_then_sub_dmrrow0 0, // CRRC:sub_dmr1_then_sub_dmrrow1 0, // CRRC:sub_dmr1_then_sub_dmrrowp0 0, // CRRC:sub_dmr1_then_sub_dmrrowp1 0, // CRRC:sub_dmr1_then_sub_wacc_hi 0, // CRRC:sub_dmr1_then_sub_wacc_lo 0, // CRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // CRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // CRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // CRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // CRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CRRC:sub_gp8_x1_then_sub_32 }, { // CARRYRC 0, // CARRYRC:sub_32 0, // CARRYRC:sub_64 0, // CARRYRC:sub_dmr0 0, // CARRYRC:sub_dmr1 0, // CARRYRC:sub_dmrrow0 0, // CARRYRC:sub_dmrrow1 0, // CARRYRC:sub_dmrrowp0 0, // CARRYRC:sub_dmrrowp1 0, // CARRYRC:sub_eq 0, // CARRYRC:sub_gp8_x0 0, // CARRYRC:sub_gp8_x1 0, // CARRYRC:sub_gt 0, // CARRYRC:sub_lt 0, // CARRYRC:sub_pair0 0, // CARRYRC:sub_pair1 0, // CARRYRC:sub_un 0, // CARRYRC:sub_vsx0 0, // CARRYRC:sub_vsx1 0, // CARRYRC:sub_wacc_hi 0, // CARRYRC:sub_wacc_lo 0, // CARRYRC:sub_vsx1_then_sub_64 0, // CARRYRC:sub_pair1_then_sub_64 0, // CARRYRC:sub_pair1_then_sub_vsx0 0, // CARRYRC:sub_pair1_then_sub_vsx1 0, // CARRYRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // CARRYRC:sub_dmrrowp1_then_sub_dmrrow0 0, // CARRYRC:sub_dmrrowp1_then_sub_dmrrow1 0, // CARRYRC:sub_wacc_hi_then_sub_dmrrow0 0, // CARRYRC:sub_wacc_hi_then_sub_dmrrow1 0, // CARRYRC:sub_wacc_hi_then_sub_dmrrowp0 0, // CARRYRC:sub_wacc_hi_then_sub_dmrrowp1 0, // CARRYRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CARRYRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CARRYRC:sub_dmr1_then_sub_dmrrow0 0, // CARRYRC:sub_dmr1_then_sub_dmrrow1 0, // CARRYRC:sub_dmr1_then_sub_dmrrowp0 0, // CARRYRC:sub_dmr1_then_sub_dmrrowp1 0, // CARRYRC:sub_dmr1_then_sub_wacc_hi 0, // CARRYRC:sub_dmr1_then_sub_wacc_lo 0, // CARRYRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CARRYRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CARRYRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // CARRYRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // CARRYRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // CARRYRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // CARRYRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CARRYRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CARRYRC:sub_gp8_x1_then_sub_32 }, { // CTRRC 0, // CTRRC:sub_32 0, // CTRRC:sub_64 0, // CTRRC:sub_dmr0 0, // CTRRC:sub_dmr1 0, // CTRRC:sub_dmrrow0 0, // CTRRC:sub_dmrrow1 0, // CTRRC:sub_dmrrowp0 0, // CTRRC:sub_dmrrowp1 0, // CTRRC:sub_eq 0, // CTRRC:sub_gp8_x0 0, // CTRRC:sub_gp8_x1 0, // CTRRC:sub_gt 0, // CTRRC:sub_lt 0, // CTRRC:sub_pair0 0, // CTRRC:sub_pair1 0, // CTRRC:sub_un 0, // CTRRC:sub_vsx0 0, // CTRRC:sub_vsx1 0, // CTRRC:sub_wacc_hi 0, // CTRRC:sub_wacc_lo 0, // CTRRC:sub_vsx1_then_sub_64 0, // CTRRC:sub_pair1_then_sub_64 0, // CTRRC:sub_pair1_then_sub_vsx0 0, // CTRRC:sub_pair1_then_sub_vsx1 0, // CTRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // CTRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC:sub_wacc_hi_then_sub_dmrrow0 0, // CTRRC:sub_wacc_hi_then_sub_dmrrow1 0, // CTRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // CTRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // CTRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC:sub_dmr1_then_sub_dmrrow0 0, // CTRRC:sub_dmr1_then_sub_dmrrow1 0, // CTRRC:sub_dmr1_then_sub_dmrrowp0 0, // CTRRC:sub_dmr1_then_sub_dmrrowp1 0, // CTRRC:sub_dmr1_then_sub_wacc_hi 0, // CTRRC:sub_dmr1_then_sub_wacc_lo 0, // CTRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // CTRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // CTRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // CTRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // CTRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC:sub_gp8_x1_then_sub_32 }, { // LRRC 0, // LRRC:sub_32 0, // LRRC:sub_64 0, // LRRC:sub_dmr0 0, // LRRC:sub_dmr1 0, // LRRC:sub_dmrrow0 0, // LRRC:sub_dmrrow1 0, // LRRC:sub_dmrrowp0 0, // LRRC:sub_dmrrowp1 0, // LRRC:sub_eq 0, // LRRC:sub_gp8_x0 0, // LRRC:sub_gp8_x1 0, // LRRC:sub_gt 0, // LRRC:sub_lt 0, // LRRC:sub_pair0 0, // LRRC:sub_pair1 0, // LRRC:sub_un 0, // LRRC:sub_vsx0 0, // LRRC:sub_vsx1 0, // LRRC:sub_wacc_hi 0, // LRRC:sub_wacc_lo 0, // LRRC:sub_vsx1_then_sub_64 0, // LRRC:sub_pair1_then_sub_64 0, // LRRC:sub_pair1_then_sub_vsx0 0, // LRRC:sub_pair1_then_sub_vsx1 0, // LRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // LRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // LRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // LRRC:sub_wacc_hi_then_sub_dmrrow0 0, // LRRC:sub_wacc_hi_then_sub_dmrrow1 0, // LRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // LRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // LRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // LRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // LRRC:sub_dmr1_then_sub_dmrrow0 0, // LRRC:sub_dmr1_then_sub_dmrrow1 0, // LRRC:sub_dmr1_then_sub_dmrrowp0 0, // LRRC:sub_dmr1_then_sub_dmrrowp1 0, // LRRC:sub_dmr1_then_sub_wacc_hi 0, // LRRC:sub_dmr1_then_sub_wacc_lo 0, // LRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // LRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // LRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // LRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // LRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // LRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // LRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // LRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // LRRC:sub_gp8_x1_then_sub_32 }, { // VRSAVERC 0, // VRSAVERC:sub_32 0, // VRSAVERC:sub_64 0, // VRSAVERC:sub_dmr0 0, // VRSAVERC:sub_dmr1 0, // VRSAVERC:sub_dmrrow0 0, // VRSAVERC:sub_dmrrow1 0, // VRSAVERC:sub_dmrrowp0 0, // VRSAVERC:sub_dmrrowp1 0, // VRSAVERC:sub_eq 0, // VRSAVERC:sub_gp8_x0 0, // VRSAVERC:sub_gp8_x1 0, // VRSAVERC:sub_gt 0, // VRSAVERC:sub_lt 0, // VRSAVERC:sub_pair0 0, // VRSAVERC:sub_pair1 0, // VRSAVERC:sub_un 0, // VRSAVERC:sub_vsx0 0, // VRSAVERC:sub_vsx1 0, // VRSAVERC:sub_wacc_hi 0, // VRSAVERC:sub_wacc_lo 0, // VRSAVERC:sub_vsx1_then_sub_64 0, // VRSAVERC:sub_pair1_then_sub_64 0, // VRSAVERC:sub_pair1_then_sub_vsx0 0, // VRSAVERC:sub_pair1_then_sub_vsx1 0, // VRSAVERC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VRSAVERC:sub_dmrrowp1_then_sub_dmrrow0 0, // VRSAVERC:sub_dmrrowp1_then_sub_dmrrow1 0, // VRSAVERC:sub_wacc_hi_then_sub_dmrrow0 0, // VRSAVERC:sub_wacc_hi_then_sub_dmrrow1 0, // VRSAVERC:sub_wacc_hi_then_sub_dmrrowp0 0, // VRSAVERC:sub_wacc_hi_then_sub_dmrrowp1 0, // VRSAVERC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRSAVERC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRSAVERC:sub_dmr1_then_sub_dmrrow0 0, // VRSAVERC:sub_dmr1_then_sub_dmrrow1 0, // VRSAVERC:sub_dmr1_then_sub_dmrrowp0 0, // VRSAVERC:sub_dmr1_then_sub_dmrrowp1 0, // VRSAVERC:sub_dmr1_then_sub_wacc_hi 0, // VRSAVERC:sub_dmr1_then_sub_wacc_lo 0, // VRSAVERC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRSAVERC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRSAVERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VRSAVERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VRSAVERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VRSAVERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VRSAVERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRSAVERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRSAVERC:sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC 2, // SPILLTOVSRRC:sub_32 -> GPRC 0, // SPILLTOVSRRC:sub_64 0, // SPILLTOVSRRC:sub_dmr0 0, // SPILLTOVSRRC:sub_dmr1 0, // SPILLTOVSRRC:sub_dmrrow0 0, // SPILLTOVSRRC:sub_dmrrow1 0, // SPILLTOVSRRC:sub_dmrrowp0 0, // SPILLTOVSRRC:sub_dmrrowp1 0, // SPILLTOVSRRC:sub_eq 0, // SPILLTOVSRRC:sub_gp8_x0 0, // SPILLTOVSRRC:sub_gp8_x1 0, // SPILLTOVSRRC:sub_gt 0, // SPILLTOVSRRC:sub_lt 0, // SPILLTOVSRRC:sub_pair0 0, // SPILLTOVSRRC:sub_pair1 0, // SPILLTOVSRRC:sub_un 0, // SPILLTOVSRRC:sub_vsx0 0, // SPILLTOVSRRC:sub_vsx1 0, // SPILLTOVSRRC:sub_wacc_hi 0, // SPILLTOVSRRC:sub_wacc_lo 0, // SPILLTOVSRRC:sub_vsx1_then_sub_64 0, // SPILLTOVSRRC:sub_pair1_then_sub_64 0, // SPILLTOVSRRC:sub_pair1_then_sub_vsx0 0, // SPILLTOVSRRC:sub_pair1_then_sub_vsx1 0, // SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // VSFRC 0, // VSFRC:sub_32 0, // VSFRC:sub_64 0, // VSFRC:sub_dmr0 0, // VSFRC:sub_dmr1 0, // VSFRC:sub_dmrrow0 0, // VSFRC:sub_dmrrow1 0, // VSFRC:sub_dmrrowp0 0, // VSFRC:sub_dmrrowp1 0, // VSFRC:sub_eq 0, // VSFRC:sub_gp8_x0 0, // VSFRC:sub_gp8_x1 0, // VSFRC:sub_gt 0, // VSFRC:sub_lt 0, // VSFRC:sub_pair0 0, // VSFRC:sub_pair1 0, // VSFRC:sub_un 0, // VSFRC:sub_vsx0 0, // VSFRC:sub_vsx1 0, // VSFRC:sub_wacc_hi 0, // VSFRC:sub_wacc_lo 0, // VSFRC:sub_vsx1_then_sub_64 0, // VSFRC:sub_pair1_then_sub_64 0, // VSFRC:sub_pair1_then_sub_vsx0 0, // VSFRC:sub_pair1_then_sub_vsx1 0, // VSFRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSFRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSFRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSFRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSFRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSFRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSFRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSFRC:sub_dmr1_then_sub_dmrrow0 0, // VSFRC:sub_dmr1_then_sub_dmrrow1 0, // VSFRC:sub_dmr1_then_sub_dmrrowp0 0, // VSFRC:sub_dmr1_then_sub_dmrrowp1 0, // VSFRC:sub_dmr1_then_sub_wacc_hi 0, // VSFRC:sub_dmr1_then_sub_wacc_lo 0, // VSFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSFRC:sub_gp8_x1_then_sub_32 }, { // G8RC 2, // G8RC:sub_32 -> GPRC 0, // G8RC:sub_64 0, // G8RC:sub_dmr0 0, // G8RC:sub_dmr1 0, // G8RC:sub_dmrrow0 0, // G8RC:sub_dmrrow1 0, // G8RC:sub_dmrrowp0 0, // G8RC:sub_dmrrowp1 0, // G8RC:sub_eq 0, // G8RC:sub_gp8_x0 0, // G8RC:sub_gp8_x1 0, // G8RC:sub_gt 0, // G8RC:sub_lt 0, // G8RC:sub_pair0 0, // G8RC:sub_pair1 0, // G8RC:sub_un 0, // G8RC:sub_vsx0 0, // G8RC:sub_vsx1 0, // G8RC:sub_wacc_hi 0, // G8RC:sub_wacc_lo 0, // G8RC:sub_vsx1_then_sub_64 0, // G8RC:sub_pair1_then_sub_64 0, // G8RC:sub_pair1_then_sub_vsx0 0, // G8RC:sub_pair1_then_sub_vsx1 0, // G8RC:sub_pair1_then_sub_vsx1_then_sub_64 0, // G8RC:sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC:sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC:sub_wacc_hi_then_sub_dmrrow0 0, // G8RC:sub_wacc_hi_then_sub_dmrrow1 0, // G8RC:sub_wacc_hi_then_sub_dmrrowp0 0, // G8RC:sub_wacc_hi_then_sub_dmrrowp1 0, // G8RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC:sub_dmr1_then_sub_dmrrow0 0, // G8RC:sub_dmr1_then_sub_dmrrow1 0, // G8RC:sub_dmr1_then_sub_dmrrowp0 0, // G8RC:sub_dmr1_then_sub_dmrrowp1 0, // G8RC:sub_dmr1_then_sub_wacc_hi 0, // G8RC:sub_dmr1_then_sub_wacc_lo 0, // G8RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // G8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // G8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // G8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // G8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC:sub_gp8_x1_then_sub_32 }, { // G8RC_NOX0 3, // G8RC_NOX0:sub_32 -> GPRC_NOR0 0, // G8RC_NOX0:sub_64 0, // G8RC_NOX0:sub_dmr0 0, // G8RC_NOX0:sub_dmr1 0, // G8RC_NOX0:sub_dmrrow0 0, // G8RC_NOX0:sub_dmrrow1 0, // G8RC_NOX0:sub_dmrrowp0 0, // G8RC_NOX0:sub_dmrrowp1 0, // G8RC_NOX0:sub_eq 0, // G8RC_NOX0:sub_gp8_x0 0, // G8RC_NOX0:sub_gp8_x1 0, // G8RC_NOX0:sub_gt 0, // G8RC_NOX0:sub_lt 0, // G8RC_NOX0:sub_pair0 0, // G8RC_NOX0:sub_pair1 0, // G8RC_NOX0:sub_un 0, // G8RC_NOX0:sub_vsx0 0, // G8RC_NOX0:sub_vsx1 0, // G8RC_NOX0:sub_wacc_hi 0, // G8RC_NOX0:sub_wacc_lo 0, // G8RC_NOX0:sub_vsx1_then_sub_64 0, // G8RC_NOX0:sub_pair1_then_sub_64 0, // G8RC_NOX0:sub_pair1_then_sub_vsx0 0, // G8RC_NOX0:sub_pair1_then_sub_vsx1 0, // G8RC_NOX0:sub_pair1_then_sub_vsx1_then_sub_64 0, // G8RC_NOX0:sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_NOX0:sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_NOX0:sub_wacc_hi_then_sub_dmrrow0 0, // G8RC_NOX0:sub_wacc_hi_then_sub_dmrrow1 0, // G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp0 0, // G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp1 0, // G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_NOX0:sub_dmr1_then_sub_dmrrow0 0, // G8RC_NOX0:sub_dmr1_then_sub_dmrrow1 0, // G8RC_NOX0:sub_dmr1_then_sub_dmrrowp0 0, // G8RC_NOX0:sub_dmr1_then_sub_dmrrowp1 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_hi 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_lo 0, // G8RC_NOX0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_NOX0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_NOX0:sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC_and_VSFRC 0, // SPILLTOVSRRC_and_VSFRC:sub_32 0, // SPILLTOVSRRC_and_VSFRC:sub_64 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmrrowp0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmrrowp1 0, // SPILLTOVSRRC_and_VSFRC:sub_eq 0, // SPILLTOVSRRC_and_VSFRC:sub_gp8_x0 0, // SPILLTOVSRRC_and_VSFRC:sub_gp8_x1 0, // SPILLTOVSRRC_and_VSFRC:sub_gt 0, // SPILLTOVSRRC_and_VSFRC:sub_lt 0, // SPILLTOVSRRC_and_VSFRC:sub_pair0 0, // SPILLTOVSRRC_and_VSFRC:sub_pair1 0, // SPILLTOVSRRC_and_VSFRC:sub_un 0, // SPILLTOVSRRC_and_VSFRC:sub_vsx0 0, // SPILLTOVSRRC_and_VSFRC:sub_vsx1 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_hi 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_lo 0, // SPILLTOVSRRC_and_VSFRC:sub_vsx1_then_sub_64 0, // SPILLTOVSRRC_and_VSFRC:sub_pair1_then_sub_64 0, // SPILLTOVSRRC_and_VSFRC:sub_pair1_then_sub_vsx0 0, // SPILLTOVSRRC_and_VSFRC:sub_pair1_then_sub_vsx1 0, // SPILLTOVSRRC_and_VSFRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // SPILLTOVSRRC_and_VSFRC:sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_hi 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_lo 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VSFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VSFRC:sub_gp8_x1_then_sub_32 }, { // G8RC_and_G8RC_NOX0 4, // G8RC_and_G8RC_NOX0:sub_32 -> GPRC_and_GPRC_NOR0 0, // G8RC_and_G8RC_NOX0:sub_64 0, // G8RC_and_G8RC_NOX0:sub_dmr0 0, // G8RC_and_G8RC_NOX0:sub_dmr1 0, // G8RC_and_G8RC_NOX0:sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_dmrrowp0 0, // G8RC_and_G8RC_NOX0:sub_dmrrowp1 0, // G8RC_and_G8RC_NOX0:sub_eq 0, // G8RC_and_G8RC_NOX0:sub_gp8_x0 0, // G8RC_and_G8RC_NOX0:sub_gp8_x1 0, // G8RC_and_G8RC_NOX0:sub_gt 0, // G8RC_and_G8RC_NOX0:sub_lt 0, // G8RC_and_G8RC_NOX0:sub_pair0 0, // G8RC_and_G8RC_NOX0:sub_pair1 0, // G8RC_and_G8RC_NOX0:sub_un 0, // G8RC_and_G8RC_NOX0:sub_vsx0 0, // G8RC_and_G8RC_NOX0:sub_vsx1 0, // G8RC_and_G8RC_NOX0:sub_wacc_hi 0, // G8RC_and_G8RC_NOX0:sub_wacc_lo 0, // G8RC_and_G8RC_NOX0:sub_vsx1_then_sub_64 0, // G8RC_and_G8RC_NOX0:sub_pair1_then_sub_64 0, // G8RC_and_G8RC_NOX0:sub_pair1_then_sub_vsx0 0, // G8RC_and_G8RC_NOX0:sub_pair1_then_sub_vsx1 0, // G8RC_and_G8RC_NOX0:sub_pair1_then_sub_vsx1_then_sub_64 0, // G8RC_and_G8RC_NOX0:sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_wacc_hi_then_sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_wacc_hi_then_sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp0 0, // G8RC_and_G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp1 0, // G8RC_and_G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_dmrrowp0 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_dmrrowp1 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_hi 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_lo 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8RC_and_G8RC_NOX0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8RC_and_G8RC_NOX0:sub_gp8_x1_then_sub_32 }, { // F8RC 0, // F8RC:sub_32 0, // F8RC:sub_64 0, // F8RC:sub_dmr0 0, // F8RC:sub_dmr1 0, // F8RC:sub_dmrrow0 0, // F8RC:sub_dmrrow1 0, // F8RC:sub_dmrrowp0 0, // F8RC:sub_dmrrowp1 0, // F8RC:sub_eq 0, // F8RC:sub_gp8_x0 0, // F8RC:sub_gp8_x1 0, // F8RC:sub_gt 0, // F8RC:sub_lt 0, // F8RC:sub_pair0 0, // F8RC:sub_pair1 0, // F8RC:sub_un 0, // F8RC:sub_vsx0 0, // F8RC:sub_vsx1 0, // F8RC:sub_wacc_hi 0, // F8RC:sub_wacc_lo 0, // F8RC:sub_vsx1_then_sub_64 0, // F8RC:sub_pair1_then_sub_64 0, // F8RC:sub_pair1_then_sub_vsx0 0, // F8RC:sub_pair1_then_sub_vsx1 0, // F8RC:sub_pair1_then_sub_vsx1_then_sub_64 0, // F8RC:sub_dmrrowp1_then_sub_dmrrow0 0, // F8RC:sub_dmrrowp1_then_sub_dmrrow1 0, // F8RC:sub_wacc_hi_then_sub_dmrrow0 0, // F8RC:sub_wacc_hi_then_sub_dmrrow1 0, // F8RC:sub_wacc_hi_then_sub_dmrrowp0 0, // F8RC:sub_wacc_hi_then_sub_dmrrowp1 0, // F8RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // F8RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // F8RC:sub_dmr1_then_sub_dmrrow0 0, // F8RC:sub_dmr1_then_sub_dmrrow1 0, // F8RC:sub_dmr1_then_sub_dmrrowp0 0, // F8RC:sub_dmr1_then_sub_dmrrowp1 0, // F8RC:sub_dmr1_then_sub_wacc_hi 0, // F8RC:sub_dmr1_then_sub_wacc_lo 0, // F8RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // F8RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // F8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // F8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // F8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // F8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // F8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // F8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // F8RC:sub_gp8_x1_then_sub_32 }, { // SPERC 2, // SPERC:sub_32 -> GPRC 0, // SPERC:sub_64 0, // SPERC:sub_dmr0 0, // SPERC:sub_dmr1 0, // SPERC:sub_dmrrow0 0, // SPERC:sub_dmrrow1 0, // SPERC:sub_dmrrowp0 0, // SPERC:sub_dmrrowp1 0, // SPERC:sub_eq 0, // SPERC:sub_gp8_x0 0, // SPERC:sub_gp8_x1 0, // SPERC:sub_gt 0, // SPERC:sub_lt 0, // SPERC:sub_pair0 0, // SPERC:sub_pair1 0, // SPERC:sub_un 0, // SPERC:sub_vsx0 0, // SPERC:sub_vsx1 0, // SPERC:sub_wacc_hi 0, // SPERC:sub_wacc_lo 0, // SPERC:sub_vsx1_then_sub_64 0, // SPERC:sub_pair1_then_sub_64 0, // SPERC:sub_pair1_then_sub_vsx0 0, // SPERC:sub_pair1_then_sub_vsx1 0, // SPERC:sub_pair1_then_sub_vsx1_then_sub_64 0, // SPERC:sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC:sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC:sub_wacc_hi_then_sub_dmrrow0 0, // SPERC:sub_wacc_hi_then_sub_dmrrow1 0, // SPERC:sub_wacc_hi_then_sub_dmrrowp0 0, // SPERC:sub_wacc_hi_then_sub_dmrrowp1 0, // SPERC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC:sub_dmr1_then_sub_dmrrow0 0, // SPERC:sub_dmr1_then_sub_dmrrow1 0, // SPERC:sub_dmr1_then_sub_dmrrowp0 0, // SPERC:sub_dmr1_then_sub_dmrrowp1 0, // SPERC:sub_dmr1_then_sub_wacc_hi 0, // SPERC:sub_dmr1_then_sub_wacc_lo 0, // SPERC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // SPERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // SPERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // SPERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // SPERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC:sub_gp8_x1_then_sub_32 }, { // VFRC 0, // VFRC:sub_32 0, // VFRC:sub_64 0, // VFRC:sub_dmr0 0, // VFRC:sub_dmr1 0, // VFRC:sub_dmrrow0 0, // VFRC:sub_dmrrow1 0, // VFRC:sub_dmrrowp0 0, // VFRC:sub_dmrrowp1 0, // VFRC:sub_eq 0, // VFRC:sub_gp8_x0 0, // VFRC:sub_gp8_x1 0, // VFRC:sub_gt 0, // VFRC:sub_lt 0, // VFRC:sub_pair0 0, // VFRC:sub_pair1 0, // VFRC:sub_un 0, // VFRC:sub_vsx0 0, // VFRC:sub_vsx1 0, // VFRC:sub_wacc_hi 0, // VFRC:sub_wacc_lo 0, // VFRC:sub_vsx1_then_sub_64 0, // VFRC:sub_pair1_then_sub_64 0, // VFRC:sub_pair1_then_sub_vsx0 0, // VFRC:sub_pair1_then_sub_vsx1 0, // VFRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VFRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VFRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VFRC:sub_wacc_hi_then_sub_dmrrow0 0, // VFRC:sub_wacc_hi_then_sub_dmrrow1 0, // VFRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VFRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VFRC:sub_dmr1_then_sub_dmrrow0 0, // VFRC:sub_dmr1_then_sub_dmrrow1 0, // VFRC:sub_dmr1_then_sub_dmrrowp0 0, // VFRC:sub_dmr1_then_sub_dmrrowp1 0, // VFRC:sub_dmr1_then_sub_wacc_hi 0, // VFRC:sub_dmr1_then_sub_wacc_lo 0, // VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VFRC:sub_gp8_x1_then_sub_32 }, { // SPERC_with_sub_32_in_GPRC_NOR0 4, // SPERC_with_sub_32_in_GPRC_NOR0:sub_32 -> GPRC_and_GPRC_NOR0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_64 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_eq 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_gp8_x0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_gp8_x1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_gt 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_lt 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_pair0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_pair1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_un 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_vsx0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_vsx1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_lo 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_vsx1_then_sub_64 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_64 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_vsx0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_vsx1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_vsx1_then_sub_64 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_lo 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPERC_with_sub_32_in_GPRC_NOR0:sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC_and_VFRC 0, // SPILLTOVSRRC_and_VFRC:sub_32 0, // SPILLTOVSRRC_and_VFRC:sub_64 0, // SPILLTOVSRRC_and_VFRC:sub_dmr0 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1 0, // SPILLTOVSRRC_and_VFRC:sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_dmrrowp0 0, // SPILLTOVSRRC_and_VFRC:sub_dmrrowp1 0, // SPILLTOVSRRC_and_VFRC:sub_eq 0, // SPILLTOVSRRC_and_VFRC:sub_gp8_x0 0, // SPILLTOVSRRC_and_VFRC:sub_gp8_x1 0, // SPILLTOVSRRC_and_VFRC:sub_gt 0, // SPILLTOVSRRC_and_VFRC:sub_lt 0, // SPILLTOVSRRC_and_VFRC:sub_pair0 0, // SPILLTOVSRRC_and_VFRC:sub_pair1 0, // SPILLTOVSRRC_and_VFRC:sub_un 0, // SPILLTOVSRRC_and_VFRC:sub_vsx0 0, // SPILLTOVSRRC_and_VFRC:sub_vsx1 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_hi 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_lo 0, // SPILLTOVSRRC_and_VFRC:sub_vsx1_then_sub_64 0, // SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_64 0, // SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_vsx0 0, // SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_vsx1 0, // SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // SPILLTOVSRRC_and_VFRC:sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_lo 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_VFRC:sub_gp8_x1_then_sub_32 }, { // SPILLTOVSRRC_and_F4RC 0, // SPILLTOVSRRC_and_F4RC:sub_32 0, // SPILLTOVSRRC_and_F4RC:sub_64 0, // SPILLTOVSRRC_and_F4RC:sub_dmr0 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1 0, // SPILLTOVSRRC_and_F4RC:sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_dmrrowp0 0, // SPILLTOVSRRC_and_F4RC:sub_dmrrowp1 0, // SPILLTOVSRRC_and_F4RC:sub_eq 0, // SPILLTOVSRRC_and_F4RC:sub_gp8_x0 0, // SPILLTOVSRRC_and_F4RC:sub_gp8_x1 0, // SPILLTOVSRRC_and_F4RC:sub_gt 0, // SPILLTOVSRRC_and_F4RC:sub_lt 0, // SPILLTOVSRRC_and_F4RC:sub_pair0 0, // SPILLTOVSRRC_and_F4RC:sub_pair1 0, // SPILLTOVSRRC_and_F4RC:sub_un 0, // SPILLTOVSRRC_and_F4RC:sub_vsx0 0, // SPILLTOVSRRC_and_F4RC:sub_vsx1 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_hi 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_lo 0, // SPILLTOVSRRC_and_F4RC:sub_vsx1_then_sub_64 0, // SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_64 0, // SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_vsx0 0, // SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_vsx1 0, // SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_vsx1_then_sub_64 0, // SPILLTOVSRRC_and_F4RC:sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_lo 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // SPILLTOVSRRC_and_F4RC:sub_gp8_x1_then_sub_32 }, { // CTRRC8 0, // CTRRC8:sub_32 0, // CTRRC8:sub_64 0, // CTRRC8:sub_dmr0 0, // CTRRC8:sub_dmr1 0, // CTRRC8:sub_dmrrow0 0, // CTRRC8:sub_dmrrow1 0, // CTRRC8:sub_dmrrowp0 0, // CTRRC8:sub_dmrrowp1 0, // CTRRC8:sub_eq 0, // CTRRC8:sub_gp8_x0 0, // CTRRC8:sub_gp8_x1 0, // CTRRC8:sub_gt 0, // CTRRC8:sub_lt 0, // CTRRC8:sub_pair0 0, // CTRRC8:sub_pair1 0, // CTRRC8:sub_un 0, // CTRRC8:sub_vsx0 0, // CTRRC8:sub_vsx1 0, // CTRRC8:sub_wacc_hi 0, // CTRRC8:sub_wacc_lo 0, // CTRRC8:sub_vsx1_then_sub_64 0, // CTRRC8:sub_pair1_then_sub_64 0, // CTRRC8:sub_pair1_then_sub_vsx0 0, // CTRRC8:sub_pair1_then_sub_vsx1 0, // CTRRC8:sub_pair1_then_sub_vsx1_then_sub_64 0, // CTRRC8:sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC8:sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC8:sub_wacc_hi_then_sub_dmrrow0 0, // CTRRC8:sub_wacc_hi_then_sub_dmrrow1 0, // CTRRC8:sub_wacc_hi_then_sub_dmrrowp0 0, // CTRRC8:sub_wacc_hi_then_sub_dmrrowp1 0, // CTRRC8:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC8:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC8:sub_dmr1_then_sub_dmrrow0 0, // CTRRC8:sub_dmr1_then_sub_dmrrow1 0, // CTRRC8:sub_dmr1_then_sub_dmrrowp0 0, // CTRRC8:sub_dmr1_then_sub_dmrrowp1 0, // CTRRC8:sub_dmr1_then_sub_wacc_hi 0, // CTRRC8:sub_dmr1_then_sub_wacc_lo 0, // CTRRC8:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC8:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC8:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // CTRRC8:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // CTRRC8:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // CTRRC8:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // CTRRC8:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // CTRRC8:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // CTRRC8:sub_gp8_x1_then_sub_32 }, { // LR8RC 0, // LR8RC:sub_32 0, // LR8RC:sub_64 0, // LR8RC:sub_dmr0 0, // LR8RC:sub_dmr1 0, // LR8RC:sub_dmrrow0 0, // LR8RC:sub_dmrrow1 0, // LR8RC:sub_dmrrowp0 0, // LR8RC:sub_dmrrowp1 0, // LR8RC:sub_eq 0, // LR8RC:sub_gp8_x0 0, // LR8RC:sub_gp8_x1 0, // LR8RC:sub_gt 0, // LR8RC:sub_lt 0, // LR8RC:sub_pair0 0, // LR8RC:sub_pair1 0, // LR8RC:sub_un 0, // LR8RC:sub_vsx0 0, // LR8RC:sub_vsx1 0, // LR8RC:sub_wacc_hi 0, // LR8RC:sub_wacc_lo 0, // LR8RC:sub_vsx1_then_sub_64 0, // LR8RC:sub_pair1_then_sub_64 0, // LR8RC:sub_pair1_then_sub_vsx0 0, // LR8RC:sub_pair1_then_sub_vsx1 0, // LR8RC:sub_pair1_then_sub_vsx1_then_sub_64 0, // LR8RC:sub_dmrrowp1_then_sub_dmrrow0 0, // LR8RC:sub_dmrrowp1_then_sub_dmrrow1 0, // LR8RC:sub_wacc_hi_then_sub_dmrrow0 0, // LR8RC:sub_wacc_hi_then_sub_dmrrow1 0, // LR8RC:sub_wacc_hi_then_sub_dmrrowp0 0, // LR8RC:sub_wacc_hi_then_sub_dmrrowp1 0, // LR8RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // LR8RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // LR8RC:sub_dmr1_then_sub_dmrrow0 0, // LR8RC:sub_dmr1_then_sub_dmrrow1 0, // LR8RC:sub_dmr1_then_sub_dmrrowp0 0, // LR8RC:sub_dmr1_then_sub_dmrrowp1 0, // LR8RC:sub_dmr1_then_sub_wacc_hi 0, // LR8RC:sub_dmr1_then_sub_wacc_lo 0, // LR8RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // LR8RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // LR8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // LR8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // LR8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // LR8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // LR8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // LR8RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // LR8RC:sub_gp8_x1_then_sub_32 }, { // DMRROWRC 0, // DMRROWRC:sub_32 0, // DMRROWRC:sub_64 0, // DMRROWRC:sub_dmr0 0, // DMRROWRC:sub_dmr1 0, // DMRROWRC:sub_dmrrow0 0, // DMRROWRC:sub_dmrrow1 0, // DMRROWRC:sub_dmrrowp0 0, // DMRROWRC:sub_dmrrowp1 0, // DMRROWRC:sub_eq 0, // DMRROWRC:sub_gp8_x0 0, // DMRROWRC:sub_gp8_x1 0, // DMRROWRC:sub_gt 0, // DMRROWRC:sub_lt 0, // DMRROWRC:sub_pair0 0, // DMRROWRC:sub_pair1 0, // DMRROWRC:sub_un 0, // DMRROWRC:sub_vsx0 0, // DMRROWRC:sub_vsx1 0, // DMRROWRC:sub_wacc_hi 0, // DMRROWRC:sub_wacc_lo 0, // DMRROWRC:sub_vsx1_then_sub_64 0, // DMRROWRC:sub_pair1_then_sub_64 0, // DMRROWRC:sub_pair1_then_sub_vsx0 0, // DMRROWRC:sub_pair1_then_sub_vsx1 0, // DMRROWRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // DMRROWRC:sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWRC:sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWRC:sub_wacc_hi_then_sub_dmrrow0 0, // DMRROWRC:sub_wacc_hi_then_sub_dmrrow1 0, // DMRROWRC:sub_wacc_hi_then_sub_dmrrowp0 0, // DMRROWRC:sub_wacc_hi_then_sub_dmrrowp1 0, // DMRROWRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWRC:sub_dmr1_then_sub_dmrrow0 0, // DMRROWRC:sub_dmr1_then_sub_dmrrow1 0, // DMRROWRC:sub_dmr1_then_sub_dmrrowp0 0, // DMRROWRC:sub_dmr1_then_sub_dmrrowp1 0, // DMRROWRC:sub_dmr1_then_sub_wacc_hi 0, // DMRROWRC:sub_dmr1_then_sub_wacc_lo 0, // DMRROWRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // DMRROWRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // DMRROWRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // DMRROWRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // DMRROWRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWRC:sub_gp8_x1_then_sub_32 }, { // VSRC 0, // VSRC:sub_32 1, // VSRC:sub_64 -> VSSRC 0, // VSRC:sub_dmr0 0, // VSRC:sub_dmr1 0, // VSRC:sub_dmrrow0 0, // VSRC:sub_dmrrow1 0, // VSRC:sub_dmrrowp0 0, // VSRC:sub_dmrrowp1 0, // VSRC:sub_eq 0, // VSRC:sub_gp8_x0 0, // VSRC:sub_gp8_x1 0, // VSRC:sub_gt 0, // VSRC:sub_lt 0, // VSRC:sub_pair0 0, // VSRC:sub_pair1 0, // VSRC:sub_un 0, // VSRC:sub_vsx0 0, // VSRC:sub_vsx1 0, // VSRC:sub_wacc_hi 0, // VSRC:sub_wacc_lo 0, // VSRC:sub_vsx1_then_sub_64 0, // VSRC:sub_pair1_then_sub_64 0, // VSRC:sub_pair1_then_sub_vsx0 0, // VSRC:sub_pair1_then_sub_vsx1 0, // VSRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC:sub_dmr1_then_sub_dmrrow0 0, // VSRC:sub_dmr1_then_sub_dmrrow1 0, // VSRC:sub_dmr1_then_sub_dmrrowp0 0, // VSRC:sub_dmr1_then_sub_dmrrowp1 0, // VSRC:sub_dmr1_then_sub_wacc_hi 0, // VSRC:sub_dmr1_then_sub_wacc_lo 0, // VSRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC:sub_gp8_x1_then_sub_32 }, { // VSRC_with_sub_64_in_SPILLTOVSRRC 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_32 16, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_VSFRC 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_eq 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_gt 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_lt 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_pair0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_un 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // VRRC 0, // VRRC:sub_32 20, // VRRC:sub_64 -> VFRC 0, // VRRC:sub_dmr0 0, // VRRC:sub_dmr1 0, // VRRC:sub_dmrrow0 0, // VRRC:sub_dmrrow1 0, // VRRC:sub_dmrrowp0 0, // VRRC:sub_dmrrowp1 0, // VRRC:sub_eq 0, // VRRC:sub_gp8_x0 0, // VRRC:sub_gp8_x1 0, // VRRC:sub_gt 0, // VRRC:sub_lt 0, // VRRC:sub_pair0 0, // VRRC:sub_pair1 0, // VRRC:sub_un 0, // VRRC:sub_vsx0 0, // VRRC:sub_vsx1 0, // VRRC:sub_wacc_hi 0, // VRRC:sub_wacc_lo 0, // VRRC:sub_vsx1_then_sub_64 0, // VRRC:sub_pair1_then_sub_64 0, // VRRC:sub_pair1_then_sub_vsx0 0, // VRRC:sub_pair1_then_sub_vsx1 0, // VRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC:sub_wacc_hi_then_sub_dmrrow0 0, // VRRC:sub_wacc_hi_then_sub_dmrrow1 0, // VRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC:sub_dmr1_then_sub_dmrrow0 0, // VRRC:sub_dmr1_then_sub_dmrrow1 0, // VRRC:sub_dmr1_then_sub_dmrrowp0 0, // VRRC:sub_dmr1_then_sub_dmrrowp1 0, // VRRC:sub_dmr1_then_sub_wacc_hi 0, // VRRC:sub_dmr1_then_sub_wacc_lo 0, // VRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC:sub_gp8_x1_then_sub_32 }, { // VSLRC 0, // VSLRC:sub_32 6, // VSLRC:sub_64 -> F4RC 0, // VSLRC:sub_dmr0 0, // VSLRC:sub_dmr1 0, // VSLRC:sub_dmrrow0 0, // VSLRC:sub_dmrrow1 0, // VSLRC:sub_dmrrowp0 0, // VSLRC:sub_dmrrowp1 0, // VSLRC:sub_eq 0, // VSLRC:sub_gp8_x0 0, // VSLRC:sub_gp8_x1 0, // VSLRC:sub_gt 0, // VSLRC:sub_lt 0, // VSLRC:sub_pair0 0, // VSLRC:sub_pair1 0, // VSLRC:sub_un 0, // VSLRC:sub_vsx0 0, // VSLRC:sub_vsx1 0, // VSLRC:sub_wacc_hi 0, // VSLRC:sub_wacc_lo 0, // VSLRC:sub_vsx1_then_sub_64 0, // VSLRC:sub_pair1_then_sub_64 0, // VSLRC:sub_pair1_then_sub_vsx0 0, // VSLRC:sub_pair1_then_sub_vsx1 0, // VSLRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSLRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSLRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSLRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSLRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSLRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC:sub_dmr1_then_sub_dmrrow0 0, // VSLRC:sub_dmr1_then_sub_dmrrow1 0, // VSLRC:sub_dmr1_then_sub_dmrrowp0 0, // VSLRC:sub_dmr1_then_sub_dmrrowp1 0, // VSLRC:sub_dmr1_then_sub_wacc_hi 0, // VSLRC:sub_dmr1_then_sub_wacc_lo 0, // VSLRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSLRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSLRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSLRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSLRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC:sub_gp8_x1_then_sub_32 }, { // VRRC_with_sub_64_in_SPILLTOVSRRC 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_32 22, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_VFRC 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_eq 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_gt 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_lt 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_pair0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_un 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VRRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // G8pRC 2, // G8pRC:sub_32 -> GPRC 0, // G8pRC:sub_64 0, // G8pRC:sub_dmr0 0, // G8pRC:sub_dmr1 0, // G8pRC:sub_dmrrow0 0, // G8pRC:sub_dmrrow1 0, // G8pRC:sub_dmrrowp0 0, // G8pRC:sub_dmrrowp1 0, // G8pRC:sub_eq 14, // G8pRC:sub_gp8_x0 -> G8RC 17, // G8pRC:sub_gp8_x1 -> G8RC_and_G8RC_NOX0 0, // G8pRC:sub_gt 0, // G8pRC:sub_lt 0, // G8pRC:sub_pair0 0, // G8pRC:sub_pair1 0, // G8pRC:sub_un 0, // G8pRC:sub_vsx0 0, // G8pRC:sub_vsx1 0, // G8pRC:sub_wacc_hi 0, // G8pRC:sub_wacc_lo 0, // G8pRC:sub_vsx1_then_sub_64 0, // G8pRC:sub_pair1_then_sub_64 0, // G8pRC:sub_pair1_then_sub_vsx0 0, // G8pRC:sub_pair1_then_sub_vsx1 0, // G8pRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // G8pRC:sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC:sub_dmrrowp1_then_sub_dmrrow1 0, // G8pRC:sub_wacc_hi_then_sub_dmrrow0 0, // G8pRC:sub_wacc_hi_then_sub_dmrrow1 0, // G8pRC:sub_wacc_hi_then_sub_dmrrowp0 0, // G8pRC:sub_wacc_hi_then_sub_dmrrowp1 0, // G8pRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8pRC:sub_dmr1_then_sub_dmrrow0 0, // G8pRC:sub_dmr1_then_sub_dmrrow1 0, // G8pRC:sub_dmr1_then_sub_dmrrowp0 0, // G8pRC:sub_dmr1_then_sub_dmrrowp1 0, // G8pRC:sub_dmr1_then_sub_wacc_hi 0, // G8pRC:sub_dmr1_then_sub_wacc_lo 0, // G8pRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8pRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // G8pRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // G8pRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // G8pRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // G8pRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 4, // G8pRC:sub_gp8_x1_then_sub_32 -> GPRC_and_GPRC_NOR0 }, { // G8pRC_with_sub_32_in_GPRC_NOR0 4, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_32 -> GPRC_and_GPRC_NOR0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_64 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmrrow1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_eq 17, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_gp8_x0 -> G8RC_and_G8RC_NOX0 17, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_gp8_x1 -> G8RC_and_G8RC_NOX0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_gt 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_lt 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_pair0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_pair1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_un 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_vsx0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_vsx1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_lo 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_vsx1_then_sub_64 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_64 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_vsx0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_vsx1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_pair1_then_sub_vsx1_then_sub_64 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmrrowp1_then_sub_dmrrow1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrow1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrow1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_lo 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 4, // G8pRC_with_sub_32_in_GPRC_NOR0:sub_gp8_x1_then_sub_32 -> GPRC_and_GPRC_NOR0 }, { // VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_32 23, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_F4RC 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_eq 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_gt 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_lt 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_pair0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_un 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSLRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // DMRROWpRC 0, // DMRROWpRC:sub_32 0, // DMRROWpRC:sub_64 0, // DMRROWpRC:sub_dmr0 0, // DMRROWpRC:sub_dmr1 26, // DMRROWpRC:sub_dmrrow0 -> DMRROWRC 26, // DMRROWpRC:sub_dmrrow1 -> DMRROWRC 0, // DMRROWpRC:sub_dmrrowp0 0, // DMRROWpRC:sub_dmrrowp1 0, // DMRROWpRC:sub_eq 0, // DMRROWpRC:sub_gp8_x0 0, // DMRROWpRC:sub_gp8_x1 0, // DMRROWpRC:sub_gt 0, // DMRROWpRC:sub_lt 0, // DMRROWpRC:sub_pair0 0, // DMRROWpRC:sub_pair1 0, // DMRROWpRC:sub_un 0, // DMRROWpRC:sub_vsx0 0, // DMRROWpRC:sub_vsx1 0, // DMRROWpRC:sub_wacc_hi 0, // DMRROWpRC:sub_wacc_lo 0, // DMRROWpRC:sub_vsx1_then_sub_64 0, // DMRROWpRC:sub_pair1_then_sub_64 0, // DMRROWpRC:sub_pair1_then_sub_vsx0 0, // DMRROWpRC:sub_pair1_then_sub_vsx1 0, // DMRROWpRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // DMRROWpRC:sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWpRC:sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWpRC:sub_wacc_hi_then_sub_dmrrow0 0, // DMRROWpRC:sub_wacc_hi_then_sub_dmrrow1 0, // DMRROWpRC:sub_wacc_hi_then_sub_dmrrowp0 0, // DMRROWpRC:sub_wacc_hi_then_sub_dmrrowp1 0, // DMRROWpRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWpRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWpRC:sub_dmr1_then_sub_dmrrow0 0, // DMRROWpRC:sub_dmr1_then_sub_dmrrow1 0, // DMRROWpRC:sub_dmr1_then_sub_dmrrowp0 0, // DMRROWpRC:sub_dmr1_then_sub_dmrrowp1 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_hi 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_lo 0, // DMRROWpRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWpRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRROWpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRROWpRC:sub_gp8_x1_then_sub_32 }, { // VSRpRC 0, // VSRpRC:sub_32 13, // VSRpRC:sub_64 -> VSFRC 0, // VSRpRC:sub_dmr0 0, // VSRpRC:sub_dmr1 0, // VSRpRC:sub_dmrrow0 0, // VSRpRC:sub_dmrrow1 0, // VSRpRC:sub_dmrrowp0 0, // VSRpRC:sub_dmrrowp1 0, // VSRpRC:sub_eq 0, // VSRpRC:sub_gp8_x0 0, // VSRpRC:sub_gp8_x1 0, // VSRpRC:sub_gt 0, // VSRpRC:sub_lt 0, // VSRpRC:sub_pair0 0, // VSRpRC:sub_pair1 0, // VSRpRC:sub_un 27, // VSRpRC:sub_vsx0 -> VSRC 27, // VSRpRC:sub_vsx1 -> VSRC 0, // VSRpRC:sub_wacc_hi 0, // VSRpRC:sub_wacc_lo 13, // VSRpRC:sub_vsx1_then_sub_64 -> VSFRC 0, // VSRpRC:sub_pair1_then_sub_64 0, // VSRpRC:sub_pair1_then_sub_vsx0 0, // VSRpRC:sub_pair1_then_sub_vsx1 0, // VSRpRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRpRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC:sub_dmr1_then_sub_dmrrow0 0, // VSRpRC:sub_dmr1_then_sub_dmrrow1 0, // VSRpRC:sub_dmr1_then_sub_dmrrowp0 0, // VSRpRC:sub_dmr1_then_sub_dmrrowp1 0, // VSRpRC:sub_dmr1_then_sub_wacc_hi 0, // VSRpRC:sub_dmr1_then_sub_wacc_lo 0, // VSRpRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC:sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_SPILLTOVSRRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_32 16, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_VSFRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_eq 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_gt 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_lt 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_pair0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_un 28, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx0 -> VSRC_with_sub_64_in_SPILLTOVSRRC 28, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1 -> VSRC_with_sub_64_in_SPILLTOVSRRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 16, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_VSFRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_F4RC 0, // VSRpRC_with_sub_64_in_F4RC:sub_32 18, // VSRpRC_with_sub_64_in_F4RC:sub_64 -> F8RC 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_F4RC:sub_eq 0, // VSRpRC_with_sub_64_in_F4RC:sub_gp8_x0 0, // VSRpRC_with_sub_64_in_F4RC:sub_gp8_x1 0, // VSRpRC_with_sub_64_in_F4RC:sub_gt 0, // VSRpRC_with_sub_64_in_F4RC:sub_lt 0, // VSRpRC_with_sub_64_in_F4RC:sub_pair0 0, // VSRpRC_with_sub_64_in_F4RC:sub_pair1 0, // VSRpRC_with_sub_64_in_F4RC:sub_un 30, // VSRpRC_with_sub_64_in_F4RC:sub_vsx0 -> VSLRC 30, // VSRpRC_with_sub_64_in_F4RC:sub_vsx1 -> VSLRC 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_hi 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_lo 18, // VSRpRC_with_sub_64_in_F4RC:sub_vsx1_then_sub_64 -> F8RC 0, // VSRpRC_with_sub_64_in_F4RC:sub_pair1_then_sub_64 0, // VSRpRC_with_sub_64_in_F4RC:sub_pair1_then_sub_vsx0 0, // VSRpRC_with_sub_64_in_F4RC:sub_pair1_then_sub_vsx1 0, // VSRpRC_with_sub_64_in_F4RC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_hi 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_lo 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_F4RC:sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_VFRC 0, // VSRpRC_with_sub_64_in_VFRC:sub_32 20, // VSRpRC_with_sub_64_in_VFRC:sub_64 -> VFRC 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_VFRC:sub_eq 0, // VSRpRC_with_sub_64_in_VFRC:sub_gp8_x0 0, // VSRpRC_with_sub_64_in_VFRC:sub_gp8_x1 0, // VSRpRC_with_sub_64_in_VFRC:sub_gt 0, // VSRpRC_with_sub_64_in_VFRC:sub_lt 0, // VSRpRC_with_sub_64_in_VFRC:sub_pair0 0, // VSRpRC_with_sub_64_in_VFRC:sub_pair1 0, // VSRpRC_with_sub_64_in_VFRC:sub_un 29, // VSRpRC_with_sub_64_in_VFRC:sub_vsx0 -> VRRC 29, // VSRpRC_with_sub_64_in_VFRC:sub_vsx1 -> VRRC 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_hi 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_lo 20, // VSRpRC_with_sub_64_in_VFRC:sub_vsx1_then_sub_64 -> VFRC 0, // VSRpRC_with_sub_64_in_VFRC:sub_pair1_then_sub_64 0, // VSRpRC_with_sub_64_in_VFRC:sub_pair1_then_sub_vsx0 0, // VSRpRC_with_sub_64_in_VFRC:sub_pair1_then_sub_vsx1 0, // VSRpRC_with_sub_64_in_VFRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_hi 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_lo 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_VFRC:sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_32 22, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_64 -> SPILLTOVSRRC_and_VFRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_eq 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_gp8_x0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_gp8_x1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_gt 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_lt 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_pair0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_pair1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_un 31, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_vsx0 -> VRRC_with_sub_64_in_SPILLTOVSRRC 31, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_vsx1 -> VRRC_with_sub_64_in_SPILLTOVSRRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_hi 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_lo 22, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_VFRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_64 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_vsx0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_vsx1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_lo 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC:sub_gp8_x1_then_sub_32 }, { // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_32 23, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_64 -> SPILLTOVSRRC_and_F4RC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_eq 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_gp8_x0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_gp8_x1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_gt 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_lt 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_pair0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_pair1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_un 34, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_vsx0 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 34, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_vsx1 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_hi 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_lo 23, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_64 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_vsx0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_vsx1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_pair1_then_sub_vsx1_then_sub_64 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_lo 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC:sub_gp8_x1_then_sub_32 }, { // ACCRC 0, // ACCRC:sub_32 18, // ACCRC:sub_64 -> F8RC 0, // ACCRC:sub_dmr0 0, // ACCRC:sub_dmr1 0, // ACCRC:sub_dmrrow0 0, // ACCRC:sub_dmrrow1 0, // ACCRC:sub_dmrrowp0 0, // ACCRC:sub_dmrrowp1 0, // ACCRC:sub_eq 0, // ACCRC:sub_gp8_x0 0, // ACCRC:sub_gp8_x1 0, // ACCRC:sub_gt 0, // ACCRC:sub_lt 38, // ACCRC:sub_pair0 -> VSRpRC_with_sub_64_in_F4RC 38, // ACCRC:sub_pair1 -> VSRpRC_with_sub_64_in_F4RC 0, // ACCRC:sub_un 30, // ACCRC:sub_vsx0 -> VSLRC 30, // ACCRC:sub_vsx1 -> VSLRC 0, // ACCRC:sub_wacc_hi 0, // ACCRC:sub_wacc_lo 18, // ACCRC:sub_vsx1_then_sub_64 -> F8RC 18, // ACCRC:sub_pair1_then_sub_64 -> F8RC 30, // ACCRC:sub_pair1_then_sub_vsx0 -> VSLRC 30, // ACCRC:sub_pair1_then_sub_vsx1 -> VSLRC 18, // ACCRC:sub_pair1_then_sub_vsx1_then_sub_64 -> F8RC 0, // ACCRC:sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC:sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC:sub_wacc_hi_then_sub_dmrrow0 0, // ACCRC:sub_wacc_hi_then_sub_dmrrow1 0, // ACCRC:sub_wacc_hi_then_sub_dmrrowp0 0, // ACCRC:sub_wacc_hi_then_sub_dmrrowp1 0, // ACCRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC:sub_dmr1_then_sub_dmrrow0 0, // ACCRC:sub_dmr1_then_sub_dmrrow1 0, // ACCRC:sub_dmr1_then_sub_dmrrowp0 0, // ACCRC:sub_dmr1_then_sub_dmrrowp1 0, // ACCRC:sub_dmr1_then_sub_wacc_hi 0, // ACCRC:sub_dmr1_then_sub_wacc_lo 0, // ACCRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // ACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // ACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // ACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // ACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC:sub_gp8_x1_then_sub_32 }, { // UACCRC 0, // UACCRC:sub_32 18, // UACCRC:sub_64 -> F8RC 0, // UACCRC:sub_dmr0 0, // UACCRC:sub_dmr1 0, // UACCRC:sub_dmrrow0 0, // UACCRC:sub_dmrrow1 0, // UACCRC:sub_dmrrowp0 0, // UACCRC:sub_dmrrowp1 0, // UACCRC:sub_eq 0, // UACCRC:sub_gp8_x0 0, // UACCRC:sub_gp8_x1 0, // UACCRC:sub_gt 0, // UACCRC:sub_lt 38, // UACCRC:sub_pair0 -> VSRpRC_with_sub_64_in_F4RC 38, // UACCRC:sub_pair1 -> VSRpRC_with_sub_64_in_F4RC 0, // UACCRC:sub_un 30, // UACCRC:sub_vsx0 -> VSLRC 30, // UACCRC:sub_vsx1 -> VSLRC 0, // UACCRC:sub_wacc_hi 0, // UACCRC:sub_wacc_lo 18, // UACCRC:sub_vsx1_then_sub_64 -> F8RC 18, // UACCRC:sub_pair1_then_sub_64 -> F8RC 30, // UACCRC:sub_pair1_then_sub_vsx0 -> VSLRC 30, // UACCRC:sub_pair1_then_sub_vsx1 -> VSLRC 18, // UACCRC:sub_pair1_then_sub_vsx1_then_sub_64 -> F8RC 0, // UACCRC:sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC:sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC:sub_wacc_hi_then_sub_dmrrow0 0, // UACCRC:sub_wacc_hi_then_sub_dmrrow1 0, // UACCRC:sub_wacc_hi_then_sub_dmrrowp0 0, // UACCRC:sub_wacc_hi_then_sub_dmrrowp1 0, // UACCRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC:sub_dmr1_then_sub_dmrrow0 0, // UACCRC:sub_dmr1_then_sub_dmrrow1 0, // UACCRC:sub_dmr1_then_sub_dmrrowp0 0, // UACCRC:sub_dmr1_then_sub_dmrrowp1 0, // UACCRC:sub_dmr1_then_sub_wacc_hi 0, // UACCRC:sub_dmr1_then_sub_wacc_lo 0, // UACCRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // UACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // UACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // UACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // UACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC:sub_gp8_x1_then_sub_32 }, { // WACCRC 0, // WACCRC:sub_32 0, // WACCRC:sub_64 0, // WACCRC:sub_dmr0 0, // WACCRC:sub_dmr1 26, // WACCRC:sub_dmrrow0 -> DMRROWRC 26, // WACCRC:sub_dmrrow1 -> DMRROWRC 35, // WACCRC:sub_dmrrowp0 -> DMRROWpRC 35, // WACCRC:sub_dmrrowp1 -> DMRROWpRC 0, // WACCRC:sub_eq 0, // WACCRC:sub_gp8_x0 0, // WACCRC:sub_gp8_x1 0, // WACCRC:sub_gt 0, // WACCRC:sub_lt 0, // WACCRC:sub_pair0 0, // WACCRC:sub_pair1 0, // WACCRC:sub_un 0, // WACCRC:sub_vsx0 0, // WACCRC:sub_vsx1 0, // WACCRC:sub_wacc_hi 0, // WACCRC:sub_wacc_lo 0, // WACCRC:sub_vsx1_then_sub_64 0, // WACCRC:sub_pair1_then_sub_64 0, // WACCRC:sub_pair1_then_sub_vsx0 0, // WACCRC:sub_pair1_then_sub_vsx1 0, // WACCRC:sub_pair1_then_sub_vsx1_then_sub_64 26, // WACCRC:sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // WACCRC:sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 0, // WACCRC:sub_wacc_hi_then_sub_dmrrow0 0, // WACCRC:sub_wacc_hi_then_sub_dmrrow1 0, // WACCRC:sub_wacc_hi_then_sub_dmrrowp0 0, // WACCRC:sub_wacc_hi_then_sub_dmrrowp1 0, // WACCRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // WACCRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // WACCRC:sub_dmr1_then_sub_dmrrow0 0, // WACCRC:sub_dmr1_then_sub_dmrrow1 0, // WACCRC:sub_dmr1_then_sub_dmrrowp0 0, // WACCRC:sub_dmr1_then_sub_dmrrowp1 0, // WACCRC:sub_dmr1_then_sub_wacc_hi 0, // WACCRC:sub_dmr1_then_sub_wacc_lo 0, // WACCRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // WACCRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // WACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // WACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // WACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // WACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // WACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // WACCRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // WACCRC:sub_gp8_x1_then_sub_32 }, { // WACC_HIRC 0, // WACC_HIRC:sub_32 0, // WACC_HIRC:sub_64 0, // WACC_HIRC:sub_dmr0 0, // WACC_HIRC:sub_dmr1 26, // WACC_HIRC:sub_dmrrow0 -> DMRROWRC 26, // WACC_HIRC:sub_dmrrow1 -> DMRROWRC 35, // WACC_HIRC:sub_dmrrowp0 -> DMRROWpRC 35, // WACC_HIRC:sub_dmrrowp1 -> DMRROWpRC 0, // WACC_HIRC:sub_eq 0, // WACC_HIRC:sub_gp8_x0 0, // WACC_HIRC:sub_gp8_x1 0, // WACC_HIRC:sub_gt 0, // WACC_HIRC:sub_lt 0, // WACC_HIRC:sub_pair0 0, // WACC_HIRC:sub_pair1 0, // WACC_HIRC:sub_un 0, // WACC_HIRC:sub_vsx0 0, // WACC_HIRC:sub_vsx1 0, // WACC_HIRC:sub_wacc_hi 0, // WACC_HIRC:sub_wacc_lo 0, // WACC_HIRC:sub_vsx1_then_sub_64 0, // WACC_HIRC:sub_pair1_then_sub_64 0, // WACC_HIRC:sub_pair1_then_sub_vsx0 0, // WACC_HIRC:sub_pair1_then_sub_vsx1 0, // WACC_HIRC:sub_pair1_then_sub_vsx1_then_sub_64 26, // WACC_HIRC:sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // WACC_HIRC:sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 0, // WACC_HIRC:sub_wacc_hi_then_sub_dmrrow0 0, // WACC_HIRC:sub_wacc_hi_then_sub_dmrrow1 0, // WACC_HIRC:sub_wacc_hi_then_sub_dmrrowp0 0, // WACC_HIRC:sub_wacc_hi_then_sub_dmrrowp1 0, // WACC_HIRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // WACC_HIRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // WACC_HIRC:sub_dmr1_then_sub_dmrrow0 0, // WACC_HIRC:sub_dmr1_then_sub_dmrrow1 0, // WACC_HIRC:sub_dmr1_then_sub_dmrrowp0 0, // WACC_HIRC:sub_dmr1_then_sub_dmrrowp1 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_hi 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_lo 0, // WACC_HIRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // WACC_HIRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // WACC_HIRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // WACC_HIRC:sub_gp8_x1_then_sub_32 }, { // ACCRC_with_sub_64_in_SPILLTOVSRRC 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_32 23, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_F4RC 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_eq 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gt 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_lt 41, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair0 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 38, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1 -> VSRpRC_with_sub_64_in_F4RC 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_un 34, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx0 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 34, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 23, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 18, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 -> F8RC 30, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 -> VSLRC 30, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 -> VSLRC 18, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 -> F8RC 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // UACCRC_with_sub_64_in_SPILLTOVSRRC 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_32 23, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_F4RC 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_eq 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gt 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_lt 41, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair0 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 38, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1 -> VSRpRC_with_sub_64_in_F4RC 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_un 34, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx0 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 34, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 23, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 18, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 -> F8RC 30, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 -> VSLRC 30, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 -> VSLRC 18, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 -> F8RC 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_32 23, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_F4RC 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_eq 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gt 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_lt 41, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair0 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 41, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_un 34, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_vsx0 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 34, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_vsx1 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 23, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 23, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 34, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 34, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 23, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_32 23, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_64 -> SPILLTOVSRRC_and_F4RC 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_eq 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gp8_x0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gp8_x1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gt 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_lt 41, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair0 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 41, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1 -> VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_un 34, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_vsx0 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 34, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_vsx1 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_lo 23, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 23, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 34, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx0 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 34, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1 -> VSLRC_with_sub_64_in_SPILLTOVSRRC 23, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_pair1_then_sub_vsx1_then_sub_64 -> SPILLTOVSRRC_and_F4RC 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_lo 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC:sub_gp8_x1_then_sub_32 }, { // DMRRC 0, // DMRRC:sub_32 0, // DMRRC:sub_64 0, // DMRRC:sub_dmr0 0, // DMRRC:sub_dmr1 26, // DMRRC:sub_dmrrow0 -> DMRROWRC 26, // DMRRC:sub_dmrrow1 -> DMRROWRC 35, // DMRRC:sub_dmrrowp0 -> DMRROWpRC 35, // DMRRC:sub_dmrrowp1 -> DMRROWpRC 0, // DMRRC:sub_eq 0, // DMRRC:sub_gp8_x0 0, // DMRRC:sub_gp8_x1 0, // DMRRC:sub_gt 0, // DMRRC:sub_lt 0, // DMRRC:sub_pair0 0, // DMRRC:sub_pair1 0, // DMRRC:sub_un 0, // DMRRC:sub_vsx0 0, // DMRRC:sub_vsx1 45, // DMRRC:sub_wacc_hi -> WACC_HIRC 44, // DMRRC:sub_wacc_lo -> WACCRC 0, // DMRRC:sub_vsx1_then_sub_64 0, // DMRRC:sub_pair1_then_sub_64 0, // DMRRC:sub_pair1_then_sub_vsx0 0, // DMRRC:sub_pair1_then_sub_vsx1 0, // DMRRC:sub_pair1_then_sub_vsx1_then_sub_64 26, // DMRRC:sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // DMRRC:sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 26, // DMRRC:sub_wacc_hi_then_sub_dmrrow0 -> DMRROWRC 26, // DMRRC:sub_wacc_hi_then_sub_dmrrow1 -> DMRROWRC 35, // DMRRC:sub_wacc_hi_then_sub_dmrrowp0 -> DMRROWpRC 35, // DMRRC:sub_wacc_hi_then_sub_dmrrowp1 -> DMRROWpRC 26, // DMRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // DMRRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 0, // DMRRC:sub_dmr1_then_sub_dmrrow0 0, // DMRRC:sub_dmr1_then_sub_dmrrow1 0, // DMRRC:sub_dmr1_then_sub_dmrrowp0 0, // DMRRC:sub_dmr1_then_sub_dmrrowp1 0, // DMRRC:sub_dmr1_then_sub_wacc_hi 0, // DMRRC:sub_dmr1_then_sub_wacc_lo 0, // DMRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 0, // DMRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 0, // DMRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 0, // DMRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 0, // DMRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 0, // DMRRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 0, // DMRRC:sub_gp8_x1_then_sub_32 }, { // DMRpRC 0, // DMRpRC:sub_32 0, // DMRpRC:sub_64 50, // DMRpRC:sub_dmr0 -> DMRRC 50, // DMRpRC:sub_dmr1 -> DMRRC 26, // DMRpRC:sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_dmrrow1 -> DMRROWRC 35, // DMRpRC:sub_dmrrowp0 -> DMRROWpRC 35, // DMRpRC:sub_dmrrowp1 -> DMRROWpRC 0, // DMRpRC:sub_eq 0, // DMRpRC:sub_gp8_x0 0, // DMRpRC:sub_gp8_x1 0, // DMRpRC:sub_gt 0, // DMRpRC:sub_lt 0, // DMRpRC:sub_pair0 0, // DMRpRC:sub_pair1 0, // DMRpRC:sub_un 0, // DMRpRC:sub_vsx0 0, // DMRpRC:sub_vsx1 45, // DMRpRC:sub_wacc_hi -> WACC_HIRC 44, // DMRpRC:sub_wacc_lo -> WACCRC 0, // DMRpRC:sub_vsx1_then_sub_64 0, // DMRpRC:sub_pair1_then_sub_64 0, // DMRpRC:sub_pair1_then_sub_vsx0 0, // DMRpRC:sub_pair1_then_sub_vsx1 0, // DMRpRC:sub_pair1_then_sub_vsx1_then_sub_64 26, // DMRpRC:sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 26, // DMRpRC:sub_wacc_hi_then_sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_wacc_hi_then_sub_dmrrow1 -> DMRROWRC 35, // DMRpRC:sub_wacc_hi_then_sub_dmrrowp0 -> DMRROWpRC 35, // DMRpRC:sub_wacc_hi_then_sub_dmrrowp1 -> DMRROWpRC 26, // DMRpRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 26, // DMRpRC:sub_dmr1_then_sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_dmr1_then_sub_dmrrow1 -> DMRROWRC 35, // DMRpRC:sub_dmr1_then_sub_dmrrowp0 -> DMRROWpRC 35, // DMRpRC:sub_dmr1_then_sub_dmrrowp1 -> DMRROWpRC 45, // DMRpRC:sub_dmr1_then_sub_wacc_hi -> WACC_HIRC 44, // DMRpRC:sub_dmr1_then_sub_wacc_lo -> WACCRC 26, // DMRpRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_dmr1_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 26, // DMRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrow1 -> DMRROWRC 35, // DMRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp0 -> DMRROWpRC 35, // DMRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1 -> DMRROWpRC 26, // DMRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow0 -> DMRROWRC 26, // DMRpRC:sub_dmr1_then_sub_wacc_hi_then_sub_dmrrowp1_then_sub_dmrrow1 -> DMRROWRC 0, // DMRpRC:sub_gp8_x1_then_sub_32 }, }; assert(RC && "Missing regclass"); if (!Idx) return RC; --Idx; assert(Idx < 48 && "Bad subreg"); unsigned TV = Table[RC->getID()][Idx]; return TV ? getRegClass(TV - 1) : nullptr; } /// Get the weight in units of pressure for this register class. const RegClassWeight &PPCGenRegisterInfo:: getRegClassWeight(const TargetRegisterClass *RC) const { static const RegClassWeight RCWeightTable[] = { {1, 64}, // VSSRC {1, 34}, // GPRC {1, 34}, // GPRC_NOR0 {1, 33}, // GPRC_and_GPRC_NOR0 {1, 32}, // CRBITRC {1, 32}, // F4RC {4, 32}, // CRRC {1, 1}, // CARRYRC {0, 0}, // CTRRC {0, 0}, // LRRC {1, 1}, // VRSAVERC {1, 68}, // SPILLTOVSRRC {1, 64}, // VSFRC {1, 34}, // G8RC {1, 34}, // G8RC_NOX0 {1, 34}, // SPILLTOVSRRC_and_VSFRC {1, 33}, // G8RC_and_G8RC_NOX0 {1, 32}, // F8RC {1, 32}, // SPERC {1, 32}, // VFRC {1, 31}, // SPERC_with_sub_32_in_GPRC_NOR0 {1, 20}, // SPILLTOVSRRC_and_VFRC {1, 14}, // SPILLTOVSRRC_and_F4RC {0, 0}, // CTRRC8 {0, 0}, // LR8RC {1, 64}, // DMRROWRC {1, 64}, // VSRC {1, 34}, // VSRC_with_sub_64_in_SPILLTOVSRRC {1, 32}, // VRRC {1, 32}, // VSLRC {1, 20}, // VRRC_with_sub_64_in_SPILLTOVSRRC {2, 32}, // G8pRC {2, 30}, // G8pRC_with_sub_32_in_GPRC_NOR0 {1, 14}, // VSLRC_with_sub_64_in_SPILLTOVSRRC {2, 64}, // DMRROWpRC {2, 64}, // VSRpRC {2, 34}, // VSRpRC_with_sub_64_in_SPILLTOVSRRC {2, 32}, // VSRpRC_with_sub_64_in_F4RC {2, 32}, // VSRpRC_with_sub_64_in_VFRC {2, 20}, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_VFRC {2, 14}, // VSRpRC_with_sub_64_in_SPILLTOVSRRC_and_F4RC {4, 32}, // ACCRC {4, 32}, // UACCRC {4, 32}, // WACCRC {4, 32}, // WACC_HIRC {4, 16}, // ACCRC_with_sub_64_in_SPILLTOVSRRC {4, 16}, // UACCRC_with_sub_64_in_SPILLTOVSRRC {4, 12}, // ACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC {4, 12}, // UACCRC_with_sub_pair1_then_sub_64_in_SPILLTOVSRRC {8, 64}, // DMRRC {16, 64}, // DMRpRC }; return RCWeightTable[RC->getID()]; } /// Get the weight in units of pressure for this register unit. unsigned PPCGenRegisterInfo:: getRegUnitWeight(unsigned RegUnit) const { assert(RegUnit < 235 && "invalid register unit"); // All register units have unit weight. return 1; } // Get the number of dimensions of register pressure. unsigned PPCGenRegisterInfo::getNumRegPressureSets() const { return 20; } // Get the name of this register unit pressure set. const char *PPCGenRegisterInfo:: getRegPressureSetName(unsigned Idx) const { static const char *PressureNameTable[] = { "CARRYRC", "VRSAVERC", "SPILLTOVSRRC_and_F4RC", "SPILLTOVSRRC_and_VFRC", "CRBITRC", "F4RC", "VFRC", "WACCRC", "WACC_HIRC", "GPRC", "SPILLTOVSRRC_and_VSFRC", "SPILLTOVSRRC_and_VSFRC_with_VFRC", "F4RC_with_SPILLTOVSRRC_and_VSFRC", "VSSRC", "DMRROWRC", "SPILLTOVSRRC", "SPILLTOVSRRC_with_SPILLTOVSRRC_and_F4RC", "SPILLTOVSRRC_with_VFRC", "F4RC_with_SPILLTOVSRRC", "VSSRC_with_SPILLTOVSRRC", }; return PressureNameTable[Idx]; } // Get the register unit pressure limit for this dimension. // This limit must be adjusted dynamically for reserved registers. unsigned PPCGenRegisterInfo:: getRegPressureSetLimit(const MachineFunction &MF, unsigned Idx) const { static const uint8_t PressureLimitTable[] = { 1, // 0: CARRYRC 1, // 1: VRSAVERC 16, // 2: SPILLTOVSRRC_and_F4RC 20, // 3: SPILLTOVSRRC_and_VFRC 32, // 4: CRBITRC 32, // 5: F4RC 32, // 6: VFRC 32, // 7: WACCRC 32, // 8: WACC_HIRC 35, // 9: GPRC 36, // 10: SPILLTOVSRRC_and_VSFRC 46, // 11: SPILLTOVSRRC_and_VSFRC_with_VFRC 52, // 12: F4RC_with_SPILLTOVSRRC_and_VSFRC 64, // 13: VSSRC 64, // 14: DMRROWRC 69, // 15: SPILLTOVSRRC 70, // 16: SPILLTOVSRRC_with_SPILLTOVSRRC_and_F4RC 80, // 17: SPILLTOVSRRC_with_VFRC 86, // 18: F4RC_with_SPILLTOVSRRC 98, // 19: VSSRC_with_SPILLTOVSRRC }; return PressureLimitTable[Idx]; } /// Table of pressure sets per register class or unit. static const int RCSetsTable[] = { /* 0 */ 0, -1, /* 2 */ 1, -1, /* 4 */ 4, -1, /* 6 */ 7, 14, -1, /* 9 */ 8, 14, -1, /* 12 */ 9, 15, -1, /* 15 */ 13, 19, -1, /* 18 */ 6, 11, 13, 17, 19, -1, /* 24 */ 5, 12, 13, 18, 19, -1, /* 30 */ 2, 5, 10, 12, 13, 16, 18, 19, -1, /* 39 */ 9, 15, 16, 17, 18, 19, -1, /* 46 */ 2, 5, 10, 11, 12, 13, 15, 16, 17, 18, 19, -1, /* 58 */ 3, 6, 10, 11, 12, 13, 15, 16, 17, 18, 19, -1, }; /// Get the dimensions of register pressure impacted by this register class. /// Returns a -1 terminated array of pressure set IDs const int *PPCGenRegisterInfo:: getRegClassPressureSets(const TargetRegisterClass *RC) const { static const uint8_t RCSetStartTable[] = { 15,39,12,39,4,24,4,0,1,1,2,40,15,39,12,48,39,24,39,18,39,58,46,1,1,7,15,48,18,24,58,39,39,46,7,15,48,24,18,58,46,24,24,6,9,30,30,46,46,7,7,}; return &RCSetsTable[RCSetStartTable[RC->getID()]]; } /// Get the dimensions of register pressure impacted by this register unit. /// Returns a -1 terminated array of pressure set IDs const int *PPCGenRegisterInfo:: getRegUnitPressureSets(unsigned RegUnit) const { assert(RegUnit < 235 && "invalid register unit"); static const uint8_t RUSetStartTable[] = { 39,0,1,39,1,1,1,2,12,46,46,46,46,46,46,46,46,46,46,46,46,46,46,30,30,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,6,6,6,6,9,9,9,9,6,6,6,6,9,9,9,9,6,6,6,6,9,9,9,9,6,6,6,6,9,9,9,9,6,6,6,6,9,9,9,9,6,6,6,6,9,9,9,9,6,6,6,6,9,9,9,9,6,6,6,6,9,9,9,9,1,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,58,18,18,18,18,18,18,18,18,18,18,18,18,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,}; return &RCSetsTable[RUSetStartTable[RegUnit]]; } extern const MCRegisterDesc PPCRegDesc[]; extern const MCPhysReg PPCRegDiffLists[]; extern const LaneBitmask PPCLaneMaskLists[]; extern const char PPCRegStrings[]; extern const char PPCRegClassStrings[]; extern const MCPhysReg PPCRegUnitRoots[][2]; extern const uint16_t PPCSubRegIdxLists[]; extern const MCRegisterInfo::SubRegCoveredBits PPCSubRegIdxRanges[]; extern const uint16_t PPCRegEncodingTable[]; // PPC Dwarf<->LLVM register mappings. extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour0Dwarf2L[]; extern const unsigned PPCDwarfFlavour0Dwarf2LSize; extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour1Dwarf2L[]; extern const unsigned PPCDwarfFlavour1Dwarf2LSize; extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour0Dwarf2L[]; extern const unsigned PPCEHFlavour0Dwarf2LSize; extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour1Dwarf2L[]; extern const unsigned PPCEHFlavour1Dwarf2LSize; extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour0L2Dwarf[]; extern const unsigned PPCDwarfFlavour0L2DwarfSize; extern const MCRegisterInfo::DwarfLLVMRegPair PPCDwarfFlavour1L2Dwarf[]; extern const unsigned PPCDwarfFlavour1L2DwarfSize; extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour0L2Dwarf[]; extern const unsigned PPCEHFlavour0L2DwarfSize; extern const MCRegisterInfo::DwarfLLVMRegPair PPCEHFlavour1L2Dwarf[]; extern const unsigned PPCEHFlavour1L2DwarfSize; PPCGenRegisterInfo:: PPCGenRegisterInfo(unsigned RA, unsigned DwarfFlavour, unsigned EHFlavour, unsigned PC, unsigned HwMode) : TargetRegisterInfo(&PPCRegInfoDesc, RegisterClasses, RegisterClasses+51, SubRegIndexNameTable, SubRegIndexLaneMaskTable, LaneBitmask(0xFFFFFFFFFC000000), RegClassInfos, HwMode) { InitMCRegisterInfo(PPCRegDesc, 500, RA, PC, PPCMCRegisterClasses, 51, PPCRegUnitRoots, 235, PPCRegDiffLists, PPCLaneMaskLists, PPCRegStrings, PPCRegClassStrings, PPCSubRegIdxLists, 49, PPCSubRegIdxRanges, PPCRegEncodingTable); switch (DwarfFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: mapDwarfRegsToLLVMRegs(PPCDwarfFlavour0Dwarf2L, PPCDwarfFlavour0Dwarf2LSize, false); break; case 1: mapDwarfRegsToLLVMRegs(PPCDwarfFlavour1Dwarf2L, PPCDwarfFlavour1Dwarf2LSize, false); break; } switch (EHFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: mapDwarfRegsToLLVMRegs(PPCEHFlavour0Dwarf2L, PPCEHFlavour0Dwarf2LSize, true); break; case 1: mapDwarfRegsToLLVMRegs(PPCEHFlavour1Dwarf2L, PPCEHFlavour1Dwarf2LSize, true); break; } switch (DwarfFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: mapLLVMRegsToDwarfRegs(PPCDwarfFlavour0L2Dwarf, PPCDwarfFlavour0L2DwarfSize, false); break; case 1: mapLLVMRegsToDwarfRegs(PPCDwarfFlavour1L2Dwarf, PPCDwarfFlavour1L2DwarfSize, false); break; } switch (EHFlavour) { default: llvm_unreachable("Unknown DWARF flavour"); case 0: mapLLVMRegsToDwarfRegs(PPCEHFlavour0L2Dwarf, PPCEHFlavour0L2DwarfSize, true); break; case 1: mapLLVMRegsToDwarfRegs(PPCEHFlavour1L2Dwarf, PPCEHFlavour1L2DwarfSize, true); break; } } static const MCPhysReg CSR_64_AllRegs_SaveList[] = { PPC::X0, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, 0 }; static const uint32_t CSR_64_AllRegs_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3fc9ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffe3fc8, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_64_AllRegs_AIX_Dflt_Altivec_SaveList[] = { PPC::X0, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::V0, PPC::V1, PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, 0 }; static const uint32_t CSR_64_AllRegs_AIX_Dflt_Altivec_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3fc9ff, 0x000007ff, 0xfff80000, 0xfff8007f, 0x0000007f, 0x00000000, 0x00000000, 0x00000000, 0xfffe3fc8, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_64_AllRegs_AIX_Dflt_VSX_SaveList[] = { PPC::X0, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::V0, PPC::V1, PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSL0, PPC::VSL1, PPC::VSL2, PPC::VSL3, PPC::VSL4, PPC::VSL5, PPC::VSL6, PPC::VSL7, PPC::VSL8, PPC::VSL9, PPC::VSL10, PPC::VSL11, PPC::VSL12, PPC::VSL13, PPC::VSL14, PPC::VSL15, PPC::VSL16, PPC::VSL17, PPC::VSL18, PPC::VSL19, 0 }; static const uint32_t CSR_64_AllRegs_AIX_Dflt_VSX_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3fc9ff, 0x000007ff, 0xfff80000, 0xffffffff, 0xffffffff, 0x0000007f, 0x00000000, 0x00000000, 0xfffe3fc8, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_64_AllRegs_Altivec_SaveList[] = { PPC::X0, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::V0, PPC::V1, PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, 0 }; static const uint32_t CSR_64_AllRegs_Altivec_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3fc9ff, 0x000007ff, 0xfff80000, 0xffffffff, 0x0007ffff, 0x00000000, 0x00000000, 0x00000000, 0xfffe3fc8, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_64_AllRegs_VSRP_SaveList[] = { PPC::X0, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::V0, PPC::V1, PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSL0, PPC::VSL1, PPC::VSL2, PPC::VSL3, PPC::VSL4, PPC::VSL5, PPC::VSL6, PPC::VSL7, PPC::VSL8, PPC::VSL9, PPC::VSL10, PPC::VSL11, PPC::VSL12, PPC::VSL13, PPC::VSL14, PPC::VSL15, PPC::VSL16, PPC::VSL17, PPC::VSL18, PPC::VSL19, PPC::VSL20, PPC::VSL21, PPC::VSL22, PPC::VSL23, PPC::VSL24, PPC::VSL25, PPC::VSL26, PPC::VSL27, PPC::VSL28, PPC::VSL29, PPC::VSL30, PPC::VSL31, PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, PPC::VSRp7, PPC::VSRp8, PPC::VSRp9, PPC::VSRp10, PPC::VSRp11, PPC::VSRp12, PPC::VSRp13, PPC::VSRp14, PPC::VSRp15, PPC::VSRp16, PPC::VSRp17, PPC::VSRp18, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_64_AllRegs_VSRP_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3fc9ff, 0x000007ff, 0xfff80000, 0xffffffff, 0xffffffff, 0xffffffff, 0x0007ffff, 0x00000000, 0xfffe3fc8, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_64_AllRegs_VSX_SaveList[] = { PPC::X0, PPC::X3, PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F1, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::V0, PPC::V1, PPC::V2, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSL0, PPC::VSL1, PPC::VSL2, PPC::VSL3, PPC::VSL4, PPC::VSL5, PPC::VSL6, PPC::VSL7, PPC::VSL8, PPC::VSL9, PPC::VSL10, PPC::VSL11, PPC::VSL12, PPC::VSL13, PPC::VSL14, PPC::VSL15, PPC::VSL16, PPC::VSL17, PPC::VSL18, PPC::VSL19, PPC::VSL20, PPC::VSL21, PPC::VSL22, PPC::VSL23, PPC::VSL24, PPC::VSL25, PPC::VSL26, PPC::VSL27, PPC::VSL28, PPC::VSL29, PPC::VSL30, PPC::VSL31, 0 }; static const uint32_t CSR_64_AllRegs_VSX_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3fc9ff, 0x000007ff, 0xfff80000, 0xffffffff, 0xffffffff, 0x0007ffff, 0x00000000, 0x00000000, 0xfffe3fc8, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_AIX32_SaveList[] = { PPC::R13, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, 0 }; static const uint32_t CSR_AIX32_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xff0001ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_AIX32_Altivec_SaveList[] = { PPC::R13, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, 0 }; static const uint32_t CSR_AIX32_Altivec_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xff0001ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_AIX32_VSRP_SaveList[] = { PPC::R13, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_AIX32_VSRP_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xff0001ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x0007e000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_AIX64_R2_VSRP_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, PPC::X2, 0 }; static const uint32_t CSR_AIX64_R2_VSRP_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0021ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x0007e000, 0x00000000, 0xfffe0020, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_AIX64_VSRP_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_AIX64_VSRP_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0001ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x0007e000, 0x00000000, 0xfffe0000, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_ALL_VSRP_SaveList[] = { PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, PPC::VSRp7, PPC::VSRp8, PPC::VSRp9, PPC::VSRp10, PPC::VSRp11, PPC::VSRp12, PPC::VSRp13, PPC::VSRp14, PPC::VSRp15, PPC::VSRp16, PPC::VSRp17, PPC::VSRp18, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_ALL_VSRP_RegMask[] = { 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0x000001ff, 0x00000000, 0xfff80000, 0xffffffff, 0xffffffff, 0xffffffff, 0x0007ffff, 0x00000000, 0x00000000, 0x00000008, 0x00000000, }; static const MCPhysReg CSR_Altivec_SaveList[] = { PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, 0 }; static const uint32_t CSR_Altivec_RegMask[] = { 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, }; static const MCPhysReg CSR_NoRegs_SaveList[] = { 0 }; static const uint32_t CSR_NoRegs_RegMask[] = { 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, }; static const MCPhysReg CSR_PPC64_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, 0 }; static const uint32_t CSR_PPC64_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0001ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffe0000, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_PPC64_Altivec_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, 0 }; static const uint32_t CSR_PPC64_Altivec_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0001ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x00000000, 0x00000000, 0xfffe0000, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_PPC64_R2_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::X2, 0 }; static const uint32_t CSR_PPC64_R2_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0021ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffe0020, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_PPC64_R2_Altivec_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::X2, 0 }; static const uint32_t CSR_PPC64_R2_Altivec_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0021ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x00000000, 0x00000000, 0xfffe0020, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_SPE_SaveList[] = { PPC::S14, PPC::S15, PPC::S16, PPC::S17, PPC::S18, PPC::S19, PPC::S20, PPC::S21, PPC::S22, PPC::S23, PPC::S24, PPC::S25, PPC::S26, PPC::S27, PPC::S28, PPC::S29, PPC::S30, 0 }; static const uint32_t CSR_SPE_RegMask[] = { 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfe000000, 0xfe0003ff, 0x000003ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, }; static const MCPhysReg CSR_SPE_NO_S30_31_SaveList[] = { PPC::S14, PPC::S15, PPC::S16, PPC::S17, PPC::S18, PPC::S19, PPC::S20, PPC::S21, PPC::S22, PPC::S23, PPC::S24, PPC::S25, PPC::S26, PPC::S27, PPC::S28, PPC::S29, 0 }; static const uint32_t CSR_SPE_NO_S30_31_RegMask[] = { 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfe000000, 0xfe0001ff, 0x000001ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, }; static const MCPhysReg CSR_SVR32_ColdCC_SaveList[] = { PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, 0 }; static const uint32_t CSR_SVR32_ColdCC_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffa00, 0xfe3f81ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffffff8, 0x0000000f, }; static const MCPhysReg CSR_SVR32_ColdCC_Altivec_SaveList[] = { PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::V0, PPC::V1, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, 0 }; static const uint32_t CSR_SVR32_ColdCC_Altivec_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffa00, 0xfe3f81ff, 0x000007ff, 0xffd80000, 0xffdfffff, 0x0007ffff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffffff8, 0x0000000f, }; static const MCPhysReg CSR_SVR32_ColdCC_Common_SaveList[] = { PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, 0 }; static const uint32_t CSR_SVR32_ColdCC_Common_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfe3f8000, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffffff8, 0x0000000f, }; static const MCPhysReg CSR_SVR32_ColdCC_SPE_SaveList[] = { PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::S4, PPC::S5, PPC::S6, PPC::S7, PPC::S8, PPC::S9, PPC::S10, PPC::S14, PPC::S15, PPC::S16, PPC::S17, PPC::S18, PPC::S19, PPC::S20, PPC::S21, PPC::S22, PPC::S23, PPC::S24, PPC::S25, PPC::S26, PPC::S27, PPC::S28, PPC::S29, PPC::S30, PPC::S31, 0 }; static const uint32_t CSR_SVR32_ColdCC_SPE_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfe3f8000, 0xfe3f87ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffffff8, 0x0000000f, }; static const MCPhysReg CSR_SVR32_ColdCC_VSRP_SaveList[] = { PPC::R4, PPC::R5, PPC::R6, PPC::R7, PPC::R8, PPC::R9, PPC::R10, PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::V0, PPC::V1, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, PPC::VSRp7, PPC::VSRp8, PPC::VSRp9, PPC::VSRp10, PPC::VSRp11, PPC::VSRp12, PPC::VSRp13, PPC::VSRp14, PPC::VSRp15, PPC::VSRp16, PPC::VSRp18, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_SVR32_ColdCC_VSRP_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3f81ff, 0x000007ff, 0xffd80000, 0xffdfffff, 0xffffffff, 0xffffffff, 0x0007ffef, 0x00000000, 0x00000000, 0xfffffff8, 0x0000000f, }; static const MCPhysReg CSR_SVR432_SaveList[] = { PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, 0 }; static const uint32_t CSR_SVR432_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0001ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_SVR432_Altivec_SaveList[] = { PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, 0 }; static const uint32_t CSR_SVR432_Altivec_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0001ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_SVR432_COMM_SaveList[] = { PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR2, PPC::CR3, PPC::CR4, 0 }; static const uint32_t CSR_SVR432_COMM_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfe000000, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_SVR432_SPE_SaveList[] = { PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::S14, PPC::S15, PPC::S16, PPC::S17, PPC::S18, PPC::S19, PPC::S20, PPC::S21, PPC::S22, PPC::S23, PPC::S24, PPC::S25, PPC::S26, PPC::S27, PPC::S28, PPC::S29, PPC::S30, 0 }; static const uint32_t CSR_SVR432_SPE_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfe000000, 0xfe0007ff, 0x000003ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_SVR432_SPE_NO_S30_31_SaveList[] = { PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::S14, PPC::S15, PPC::S16, PPC::S17, PPC::S18, PPC::S19, PPC::S20, PPC::S21, PPC::S22, PPC::S23, PPC::S24, PPC::S25, PPC::S26, PPC::S27, PPC::S28, PPC::S29, 0 }; static const uint32_t CSR_SVR432_SPE_NO_S30_31_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfe000000, 0xfe0007ff, 0x000001ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_SVR432_VSRP_SaveList[] = { PPC::R14, PPC::R15, PPC::R16, PPC::R17, PPC::R18, PPC::R19, PPC::R20, PPC::R21, PPC::R22, PPC::R23, PPC::R24, PPC::R25, PPC::R26, PPC::R27, PPC::R28, PPC::R29, PPC::R30, PPC::R31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_SVR432_VSRP_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0001ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x0007e000, 0x00000000, 0x00000000, 0xc1c1c1c8, 0x00000001, }; static const MCPhysReg CSR_SVR464_R2_VSRP_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, PPC::X2, 0 }; static const uint32_t CSR_SVR464_R2_VSRP_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0021ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x0007e000, 0x00000000, 0xfffe0020, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_SVR464_VSRP_SaveList[] = { PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR2, PPC::CR3, PPC::CR4, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_SVR464_VSRP_RegMask[] = { 0x01c00400, 0x00000000, 0x00000000, 0x00000000, 0xff800000, 0xfe0001ff, 0x000007ff, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x0007e000, 0x00000000, 0xfffe0000, 0xc1c1c1cf, 0x00000001, }; static const MCPhysReg CSR_SVR64_ColdCC_SaveList[] = { PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, 0 }; static const uint32_t CSR_SVR64_ColdCC_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffa00, 0xfe3f81ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffe3f80, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_SVR64_ColdCC_Altivec_SaveList[] = { PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::V0, PPC::V1, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, 0 }; static const uint32_t CSR_SVR64_ColdCC_Altivec_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffa00, 0xfe3f81ff, 0x000007ff, 0xffd80000, 0xffdfffff, 0x0007ffff, 0x00000000, 0x00000000, 0x00000000, 0xfffe3f80, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_SVR64_ColdCC_R2_SaveList[] = { PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::X2, 0 }; static const uint32_t CSR_SVR64_ColdCC_R2_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffa00, 0xfe3fa1ff, 0x000007ff, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xfffe3fa0, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_SVR64_ColdCC_R2_Altivec_SaveList[] = { PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::V0, PPC::V1, PPC::V3, PPC::V4, PPC::V5, PPC::V6, PPC::V7, PPC::V8, PPC::V9, PPC::V10, PPC::V11, PPC::V12, PPC::V13, PPC::V14, PPC::V15, PPC::V16, PPC::V17, PPC::V18, PPC::V19, PPC::V20, PPC::V21, PPC::V22, PPC::V23, PPC::V24, PPC::V25, PPC::V26, PPC::V27, PPC::V28, PPC::V29, PPC::V30, PPC::V31, PPC::X2, 0 }; static const uint32_t CSR_SVR64_ColdCC_R2_Altivec_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffa00, 0xfe3fa1ff, 0x000007ff, 0xffd80000, 0xffdfffff, 0x0007ffff, 0x00000000, 0x00000000, 0x00000000, 0xfffe3fa0, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_SVR64_ColdCC_R2_VSRP_SaveList[] = { PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, PPC::VSRp7, PPC::VSRp8, PPC::VSRp9, PPC::VSRp10, PPC::VSRp11, PPC::VSRp12, PPC::VSRp13, PPC::VSRp14, PPC::VSRp15, PPC::VSRp16, PPC::VSRp18, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, PPC::X2, 0 }; static const uint32_t CSR_SVR64_ColdCC_R2_VSRP_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3fa1ff, 0x000007ff, 0xff980000, 0xff9fffff, 0xffffffff, 0xffffffff, 0x0007ffef, 0x00000000, 0xfffe3fa0, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_SVR64_ColdCC_VSRP_SaveList[] = { PPC::X4, PPC::X5, PPC::X6, PPC::X7, PPC::X8, PPC::X9, PPC::X10, PPC::X14, PPC::X15, PPC::X16, PPC::X17, PPC::X18, PPC::X19, PPC::X20, PPC::X21, PPC::X22, PPC::X23, PPC::X24, PPC::X25, PPC::X26, PPC::X27, PPC::X28, PPC::X29, PPC::X30, PPC::X31, PPC::F0, PPC::F2, PPC::F3, PPC::F4, PPC::F5, PPC::F6, PPC::F7, PPC::F8, PPC::F9, PPC::F10, PPC::F11, PPC::F12, PPC::F13, PPC::F14, PPC::F15, PPC::F16, PPC::F17, PPC::F18, PPC::F19, PPC::F20, PPC::F21, PPC::F22, PPC::F23, PPC::F24, PPC::F25, PPC::F26, PPC::F27, PPC::F28, PPC::F29, PPC::F30, PPC::F31, PPC::CR0, PPC::CR1, PPC::CR2, PPC::CR3, PPC::CR4, PPC::CR5, PPC::CR6, PPC::CR7, PPC::VSRp0, PPC::VSRp1, PPC::VSRp2, PPC::VSRp3, PPC::VSRp4, PPC::VSRp5, PPC::VSRp6, PPC::VSRp7, PPC::VSRp8, PPC::VSRp9, PPC::VSRp10, PPC::VSRp11, PPC::VSRp12, PPC::VSRp13, PPC::VSRp14, PPC::VSRp15, PPC::VSRp16, PPC::VSRp18, PPC::VSRp19, PPC::VSRp20, PPC::VSRp21, PPC::VSRp22, PPC::VSRp23, PPC::VSRp24, PPC::VSRp25, PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_SVR64_ColdCC_VSRP_RegMask[] = { 0x0ff00400, 0x00000000, 0x00000000, 0x00000000, 0xfffffe00, 0xfe3f81ff, 0x000007ff, 0xff980000, 0xff9fffff, 0xffffffff, 0xffffffff, 0x0007ffef, 0x00000000, 0xfffe3f80, 0xffffffff, 0x0000000f, }; static const MCPhysReg CSR_VSRP_SaveList[] = { PPC::VSRp26, PPC::VSRp27, PPC::VSRp28, PPC::VSRp29, PPC::VSRp30, PPC::VSRp31, 0 }; static const uint32_t CSR_VSRP_RegMask[] = { 0x00000400, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0007ff80, 0x0007ff80, 0x00000000, 0x0007e000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, }; ArrayRef PPCGenRegisterInfo::getRegMasks() const { static const uint32_t *const Masks[] = { CSR_64_AllRegs_RegMask, CSR_64_AllRegs_AIX_Dflt_Altivec_RegMask, CSR_64_AllRegs_AIX_Dflt_VSX_RegMask, CSR_64_AllRegs_Altivec_RegMask, CSR_64_AllRegs_VSRP_RegMask, CSR_64_AllRegs_VSX_RegMask, CSR_AIX32_RegMask, CSR_AIX32_Altivec_RegMask, CSR_AIX32_VSRP_RegMask, CSR_AIX64_R2_VSRP_RegMask, CSR_AIX64_VSRP_RegMask, CSR_ALL_VSRP_RegMask, CSR_Altivec_RegMask, CSR_NoRegs_RegMask, CSR_PPC64_RegMask, CSR_PPC64_Altivec_RegMask, CSR_PPC64_R2_RegMask, CSR_PPC64_R2_Altivec_RegMask, CSR_SPE_RegMask, CSR_SPE_NO_S30_31_RegMask, CSR_SVR32_ColdCC_RegMask, CSR_SVR32_ColdCC_Altivec_RegMask, CSR_SVR32_ColdCC_Common_RegMask, CSR_SVR32_ColdCC_SPE_RegMask, CSR_SVR32_ColdCC_VSRP_RegMask, CSR_SVR432_RegMask, CSR_SVR432_Altivec_RegMask, CSR_SVR432_COMM_RegMask, CSR_SVR432_SPE_RegMask, CSR_SVR432_SPE_NO_S30_31_RegMask, CSR_SVR432_VSRP_RegMask, CSR_SVR464_R2_VSRP_RegMask, CSR_SVR464_VSRP_RegMask, CSR_SVR64_ColdCC_RegMask, CSR_SVR64_ColdCC_Altivec_RegMask, CSR_SVR64_ColdCC_R2_RegMask, CSR_SVR64_ColdCC_R2_Altivec_RegMask, CSR_SVR64_ColdCC_R2_VSRP_RegMask, CSR_SVR64_ColdCC_VSRP_RegMask, CSR_VSRP_RegMask, }; return ArrayRef(Masks); } bool PPCGenRegisterInfo:: isGeneralPurposeRegister(const MachineFunction &MF, MCRegister PhysReg) const { return false; } bool PPCGenRegisterInfo:: isFixedRegister(const MachineFunction &MF, MCRegister PhysReg) const { return false; } bool PPCGenRegisterInfo:: isArgumentRegister(const MachineFunction &MF, MCRegister PhysReg) const { return false; } bool PPCGenRegisterInfo:: isConstantPhysReg(MCRegister PhysReg) const { return PhysReg == PPC::ZERO || PhysReg == PPC::ZERO8 || false; } ArrayRef PPCGenRegisterInfo::getRegMaskNames() const { static const char *Names[] = { "CSR_64_AllRegs", "CSR_64_AllRegs_AIX_Dflt_Altivec", "CSR_64_AllRegs_AIX_Dflt_VSX", "CSR_64_AllRegs_Altivec", "CSR_64_AllRegs_VSRP", "CSR_64_AllRegs_VSX", "CSR_AIX32", "CSR_AIX32_Altivec", "CSR_AIX32_VSRP", "CSR_AIX64_R2_VSRP", "CSR_AIX64_VSRP", "CSR_ALL_VSRP", "CSR_Altivec", "CSR_NoRegs", "CSR_PPC64", "CSR_PPC64_Altivec", "CSR_PPC64_R2", "CSR_PPC64_R2_Altivec", "CSR_SPE", "CSR_SPE_NO_S30_31", "CSR_SVR32_ColdCC", "CSR_SVR32_ColdCC_Altivec", "CSR_SVR32_ColdCC_Common", "CSR_SVR32_ColdCC_SPE", "CSR_SVR32_ColdCC_VSRP", "CSR_SVR432", "CSR_SVR432_Altivec", "CSR_SVR432_COMM", "CSR_SVR432_SPE", "CSR_SVR432_SPE_NO_S30_31", "CSR_SVR432_VSRP", "CSR_SVR464_R2_VSRP", "CSR_SVR464_VSRP", "CSR_SVR64_ColdCC", "CSR_SVR64_ColdCC_Altivec", "CSR_SVR64_ColdCC_R2", "CSR_SVR64_ColdCC_R2_Altivec", "CSR_SVR64_ColdCC_R2_VSRP", "CSR_SVR64_ColdCC_VSRP", "CSR_VSRP", }; return ArrayRef(Names); } const PPCFrameLowering * PPCGenRegisterInfo::getFrameLowering(const MachineFunction &MF) { return static_cast( MF.getSubtarget().getFrameLowering()); } } // end namespace llvm #endif // GET_REGINFO_TARGET_DESC