| 1 | /*===- TableGen'erated file -------------------------------------*- C++ -*-===*\ |
| 2 | |* *| |
| 3 | |* Global Instruction Selector for the Mips target *| |
| 4 | |* *| |
| 5 | |* Automatically generated file, do not edit! *| |
| 6 | |* *| |
| 7 | \*===----------------------------------------------------------------------===*/ |
| 8 | |
| 9 | #ifdef GET_GLOBALISEL_PREDICATE_BITSET |
| 10 | const unsigned MAX_SUBTARGET_PREDICATES = 45; |
| 11 | using PredicateBitset = llvm::Bitset<MAX_SUBTARGET_PREDICATES>; |
| 12 | #endif // ifdef GET_GLOBALISEL_PREDICATE_BITSET |
| 13 | |
| 14 | #ifdef GET_GLOBALISEL_TEMPORARIES_DECL |
| 15 | mutable MatcherState State; |
| 16 | typedef ComplexRendererFns(MipsInstructionSelector::*ComplexMatcherMemFn)(MachineOperand &) const; |
| 17 | typedef void(MipsInstructionSelector::*CustomRendererFn)(MachineInstrBuilder &, const MachineInstr &, int) const; |
| 18 | const ExecInfoTy<PredicateBitset, ComplexMatcherMemFn, CustomRendererFn> ExecInfo; |
| 19 | static MipsInstructionSelector::ComplexMatcherMemFn ComplexPredicateFns[]; |
| 20 | static MipsInstructionSelector::CustomRendererFn CustomRenderers[]; |
| 21 | bool testImmPredicate_I64(unsigned PredicateID, int64_t Imm) const override; |
| 22 | bool testImmPredicate_APInt(unsigned PredicateID, const APInt &Imm) const override; |
| 23 | bool testImmPredicate_APFloat(unsigned PredicateID, const APFloat &Imm) const override; |
| 24 | const uint8_t *getMatchTable() const override; |
| 25 | bool testMIPredicate_MI(unsigned PredicateID, const MachineInstr &MI, const MatcherState &State) const override; |
| 26 | bool testMOPredicate_MO(unsigned PredicateID, const MachineOperand &MO, const MatcherState &State) const override; |
| 27 | bool testSimplePredicate(unsigned PredicateID) const override; |
| 28 | bool runCustomAction(unsigned FnID, const MatcherState &State, NewMIVector &OutMIs) const override; |
| 29 | #endif // ifdef GET_GLOBALISEL_TEMPORARIES_DECL |
| 30 | |
| 31 | #ifdef GET_GLOBALISEL_TEMPORARIES_INIT |
| 32 | , State(0), |
| 33 | ExecInfo(TypeObjects, NumTypeObjects, FeatureBitsets, ComplexPredicateFns, CustomRenderers) |
| 34 | #endif // ifdef GET_GLOBALISEL_TEMPORARIES_INIT |
| 35 | |
| 36 | #ifdef GET_GLOBALISEL_IMPL |
| 37 | // LLT Objects. |
| 38 | enum { |
| 39 | GILLT_s16, |
| 40 | GILLT_s32, |
| 41 | GILLT_s64, |
| 42 | GILLT_v2s16, |
| 43 | GILLT_v2s64, |
| 44 | GILLT_v4s8, |
| 45 | GILLT_v4s32, |
| 46 | GILLT_v8s16, |
| 47 | GILLT_v16s8, |
| 48 | }; |
| 49 | const static size_t NumTypeObjects = 9; |
| 50 | const static LLT TypeObjects[] = { |
| 51 | LLT::scalar(16), |
| 52 | LLT::scalar(32), |
| 53 | LLT::scalar(64), |
| 54 | LLT::vector(ElementCount::getFixed(2), 16), |
| 55 | LLT::vector(ElementCount::getFixed(2), 64), |
| 56 | LLT::vector(ElementCount::getFixed(4), 8), |
| 57 | LLT::vector(ElementCount::getFixed(4), 32), |
| 58 | LLT::vector(ElementCount::getFixed(8), 16), |
| 59 | LLT::vector(ElementCount::getFixed(16), 8), |
| 60 | }; |
| 61 | |
| 62 | // Bits for subtarget features that participate in instruction matching. |
| 63 | enum SubtargetFeatureBits : uint8_t { |
| 64 | Feature_IsPTR64bitBit = 24, |
| 65 | Feature_UseCompactBranchesBit = 41, |
| 66 | Feature_HasMips2Bit = 7, |
| 67 | Feature_HasMips3Bit = 18, |
| 68 | Feature_HasMips4_32Bit = 27, |
| 69 | Feature_NotMips4_32Bit = 28, |
| 70 | Feature_HasMips4_32r2Bit = 19, |
| 71 | Feature_HasMips32Bit = 3, |
| 72 | Feature_HasMips32r2Bit = 6, |
| 73 | Feature_HasMips32r6Bit = 29, |
| 74 | Feature_NotMips32r6Bit = 4, |
| 75 | Feature_IsGP64bitBit = 22, |
| 76 | Feature_HasMips64Bit = 25, |
| 77 | Feature_HasMips64r2Bit = 23, |
| 78 | Feature_HasMips64r6Bit = 30, |
| 79 | Feature_NotMips64r6Bit = 5, |
| 80 | Feature_InMips16ModeBit = 31, |
| 81 | Feature_NotInMips16ModeBit = 0, |
| 82 | Feature_HasCnMipsBit = 26, |
| 83 | Feature_NotCnMipsBit = 8, |
| 84 | Feature_IsSym32Bit = 38, |
| 85 | Feature_IsSym64Bit = 39, |
| 86 | Feature_IsN64Bit = 40, |
| 87 | Feature_RelocNotPICBit = 10, |
| 88 | Feature_RelocPICBit = 37, |
| 89 | Feature_NoNaNsFPMathBit = 21, |
| 90 | Feature_UseAbsBit = 15, |
| 91 | Feature_HasStdEncBit = 1, |
| 92 | Feature_NotDSPBit = 12, |
| 93 | Feature_InMicroMipsBit = 35, |
| 94 | Feature_NotInMicroMipsBit = 2, |
| 95 | Feature_IsLEBit = 43, |
| 96 | Feature_IsBEBit = 44, |
| 97 | Feature_HasEVABit = 36, |
| 98 | Feature_HasMSABit = 34, |
| 99 | Feature_HasMadd4Bit = 20, |
| 100 | Feature_UseIndirectJumpsHazardBit = 13, |
| 101 | Feature_NoIndirectJumpGuardsBit = 11, |
| 102 | Feature_NotR5900Bit = 9, |
| 103 | Feature_AllowFPOpFusionBit = 42, |
| 104 | Feature_IsFP64bitBit = 17, |
| 105 | Feature_NotFP64bitBit = 16, |
| 106 | Feature_IsNotSoftFloatBit = 14, |
| 107 | Feature_HasDSPBit = 32, |
| 108 | Feature_HasDSPR2Bit = 33, |
| 109 | }; |
| 110 | |
| 111 | PredicateBitset MipsInstructionSelector:: |
| 112 | computeAvailableModuleFeatures(const MipsSubtarget *Subtarget) const { |
| 113 | PredicateBitset Features{}; |
| 114 | if (Subtarget->isABI_N64()) |
| 115 | Features.set(Feature_IsPTR64bitBit); |
| 116 | if (Subtarget->useCompactBranches()) |
| 117 | Features.set(Feature_UseCompactBranchesBit); |
| 118 | if (Subtarget->hasMips2()) |
| 119 | Features.set(Feature_HasMips2Bit); |
| 120 | if (Subtarget->hasMips3()) |
| 121 | Features.set(Feature_HasMips3Bit); |
| 122 | if (Subtarget->hasMips4_32()) |
| 123 | Features.set(Feature_HasMips4_32Bit); |
| 124 | if (!Subtarget->hasMips4_32()) |
| 125 | Features.set(Feature_NotMips4_32Bit); |
| 126 | if (Subtarget->hasMips4_32r2()) |
| 127 | Features.set(Feature_HasMips4_32r2Bit); |
| 128 | if (Subtarget->hasMips32()) |
| 129 | Features.set(Feature_HasMips32Bit); |
| 130 | if (Subtarget->hasMips32r2()) |
| 131 | Features.set(Feature_HasMips32r2Bit); |
| 132 | if (Subtarget->hasMips32r6()) |
| 133 | Features.set(Feature_HasMips32r6Bit); |
| 134 | if (!Subtarget->hasMips32r6()) |
| 135 | Features.set(Feature_NotMips32r6Bit); |
| 136 | if (Subtarget->isGP64bit()) |
| 137 | Features.set(Feature_IsGP64bitBit); |
| 138 | if (Subtarget->hasMips64()) |
| 139 | Features.set(Feature_HasMips64Bit); |
| 140 | if (Subtarget->hasMips64r2()) |
| 141 | Features.set(Feature_HasMips64r2Bit); |
| 142 | if (Subtarget->hasMips64r6()) |
| 143 | Features.set(Feature_HasMips64r6Bit); |
| 144 | if (!Subtarget->hasMips64r6()) |
| 145 | Features.set(Feature_NotMips64r6Bit); |
| 146 | if (Subtarget->inMips16Mode()) |
| 147 | Features.set(Feature_InMips16ModeBit); |
| 148 | if (!Subtarget->inMips16Mode()) |
| 149 | Features.set(Feature_NotInMips16ModeBit); |
| 150 | if (Subtarget->hasCnMips()) |
| 151 | Features.set(Feature_HasCnMipsBit); |
| 152 | if (!Subtarget->hasCnMips()) |
| 153 | Features.set(Feature_NotCnMipsBit); |
| 154 | if (Subtarget->hasSym32()) |
| 155 | Features.set(Feature_IsSym32Bit); |
| 156 | if (!Subtarget->hasSym32()) |
| 157 | Features.set(Feature_IsSym64Bit); |
| 158 | if (Subtarget->isABI_N64()) |
| 159 | Features.set(Feature_IsN64Bit); |
| 160 | if (!TM.isPositionIndependent()) |
| 161 | Features.set(Feature_RelocNotPICBit); |
| 162 | if (TM.isPositionIndependent()) |
| 163 | Features.set(Feature_RelocPICBit); |
| 164 | if (TM.Options.NoNaNsFPMath) |
| 165 | Features.set(Feature_NoNaNsFPMathBit); |
| 166 | if (Subtarget->inAbs2008Mode() ||TM.Options.NoNaNsFPMath) |
| 167 | Features.set(Feature_UseAbsBit); |
| 168 | if (Subtarget->hasStandardEncoding()) |
| 169 | Features.set(Feature_HasStdEncBit); |
| 170 | if (!Subtarget->hasDSP()) |
| 171 | Features.set(Feature_NotDSPBit); |
| 172 | if (Subtarget->inMicroMipsMode()) |
| 173 | Features.set(Feature_InMicroMipsBit); |
| 174 | if (!Subtarget->inMicroMipsMode()) |
| 175 | Features.set(Feature_NotInMicroMipsBit); |
| 176 | if (Subtarget->isLittle()) |
| 177 | Features.set(Feature_IsLEBit); |
| 178 | if (!Subtarget->isLittle()) |
| 179 | Features.set(Feature_IsBEBit); |
| 180 | if (Subtarget->hasEVA()) |
| 181 | Features.set(Feature_HasEVABit); |
| 182 | if (Subtarget->hasMSA()) |
| 183 | Features.set(Feature_HasMSABit); |
| 184 | if (!Subtarget->disableMadd4()) |
| 185 | Features.set(Feature_HasMadd4Bit); |
| 186 | if (Subtarget->useIndirectJumpsHazard()) |
| 187 | Features.set(Feature_UseIndirectJumpsHazardBit); |
| 188 | if (!Subtarget->useIndirectJumpsHazard()) |
| 189 | Features.set(Feature_NoIndirectJumpGuardsBit); |
| 190 | if (!Subtarget->isR5900()) |
| 191 | Features.set(Feature_NotR5900Bit); |
| 192 | if (TM.Options.AllowFPOpFusion == FPOpFusion::Fast) |
| 193 | Features.set(Feature_AllowFPOpFusionBit); |
| 194 | if (Subtarget->isFP64bit()) |
| 195 | Features.set(Feature_IsFP64bitBit); |
| 196 | if (!Subtarget->isFP64bit()) |
| 197 | Features.set(Feature_NotFP64bitBit); |
| 198 | if (!Subtarget->useSoftFloat()) |
| 199 | Features.set(Feature_IsNotSoftFloatBit); |
| 200 | if (Subtarget->hasDSP()) |
| 201 | Features.set(Feature_HasDSPBit); |
| 202 | if (Subtarget->hasDSPR2()) |
| 203 | Features.set(Feature_HasDSPR2Bit); |
| 204 | return Features; |
| 205 | } |
| 206 | |
| 207 | void MipsInstructionSelector::setupGeneratedPerFunctionState(MachineFunction &MF) { |
| 208 | AvailableFunctionFeatures = computeAvailableFunctionFeatures((const MipsSubtarget *)&MF.getSubtarget(), &MF); |
| 209 | } |
| 210 | PredicateBitset MipsInstructionSelector:: |
| 211 | computeAvailableFunctionFeatures(const MipsSubtarget *Subtarget, const MachineFunction *MF) const { |
| 212 | PredicateBitset Features{}; |
| 213 | return Features; |
| 214 | } |
| 215 | |
| 216 | // Feature bitsets. |
| 217 | enum { |
| 218 | GIFBS_Invalid, |
| 219 | GIFBS_HasCnMips, |
| 220 | GIFBS_HasDSP, |
| 221 | GIFBS_HasDSPR2, |
| 222 | GIFBS_HasMSA, |
| 223 | GIFBS_InMicroMips, |
| 224 | GIFBS_InMips16Mode, |
| 225 | GIFBS_IsFP64bit, |
| 226 | GIFBS_NotFP64bit, |
| 227 | GIFBS_NotInMips16Mode, |
| 228 | GIFBS_HasDSP_InMicroMips, |
| 229 | GIFBS_HasDSP_NotInMicroMips, |
| 230 | GIFBS_HasDSPR2_InMicroMips, |
| 231 | GIFBS_HasMSA_HasStdEnc, |
| 232 | GIFBS_HasMSA_IsBE, |
| 233 | GIFBS_HasMSA_IsLE, |
| 234 | GIFBS_HasMips32r6_HasStdEnc, |
| 235 | GIFBS_HasMips32r6_InMicroMips, |
| 236 | GIFBS_HasMips64r2_HasStdEnc, |
| 237 | GIFBS_HasMips64r6_HasStdEnc, |
| 238 | GIFBS_HasStdEnc_IsNotSoftFloat, |
| 239 | GIFBS_HasStdEnc_NotInMicroMips, |
| 240 | GIFBS_HasStdEnc_NotMips4_32, |
| 241 | GIFBS_InMicroMips_IsFP64bit, |
| 242 | GIFBS_InMicroMips_IsNotSoftFloat, |
| 243 | GIFBS_InMicroMips_NotFP64bit, |
| 244 | GIFBS_InMicroMips_NotMips32r6, |
| 245 | GIFBS_IsGP64bit_NotInMips16Mode, |
| 246 | GIFBS_AllowFPOpFusion_HasMSA_HasStdEnc, |
| 247 | GIFBS_HasMSA_HasMips64_HasStdEnc, |
| 248 | GIFBS_HasMips3_HasStdEnc_IsGP64bit, |
| 249 | GIFBS_HasMips3_HasStdEnc_NotInMicroMips, |
| 250 | GIFBS_HasMips32r2_HasStdEnc_IsGP64bit, |
| 251 | GIFBS_HasMips32r2_HasStdEnc_NotInMicroMips, |
| 252 | GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips, |
| 253 | GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat, |
| 254 | GIFBS_HasMips64r2_HasStdEnc_NotInMicroMips, |
| 255 | GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips, |
| 256 | GIFBS_HasStdEnc_IsFP64bit_NotInMicroMips, |
| 257 | GIFBS_HasStdEnc_IsFP64bit_NotMips4_32, |
| 258 | GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips, |
| 259 | GIFBS_HasStdEnc_NotFP64bit_NotInMicroMips, |
| 260 | GIFBS_HasStdEnc_NotFP64bit_NotMips4_32, |
| 261 | GIFBS_HasStdEnc_NotInMicroMips_RelocNotPIC, |
| 262 | GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat, |
| 263 | GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit, |
| 264 | GIFBS_InMicroMips_IsNotSoftFloat_UseAbs, |
| 265 | GIFBS_InMicroMips_NotFP64bit_NotMips32r6, |
| 266 | GIFBS_InMicroMips_NotMips32r6_RelocNotPIC, |
| 267 | GIFBS_InMicroMips_NotMips32r6_RelocPIC, |
| 268 | GIFBS_IsFP64bit_IsNotSoftFloat_NotInMips16Mode, |
| 269 | GIFBS_IsNotSoftFloat_NotFP64bit_NotInMips16Mode, |
| 270 | GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6, |
| 271 | GIFBS_HasMips2_HasStdEnc_IsNotSoftFloat_NotInMicroMips, |
| 272 | GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips, |
| 273 | GIFBS_HasMips3_HasStdEnc_IsNotSoftFloat_NotInMicroMips, |
| 274 | GIFBS_HasMips32_HasStdEnc_NotMips32r6_NotMips64r6, |
| 275 | GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips, |
| 276 | GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches, |
| 277 | GIFBS_HasMips4_32_HasStdEnc_NotMips32r6_NotMips64r6, |
| 278 | GIFBS_HasMips64r2_HasStdEnc_IsGP64bit_NotInMicroMips, |
| 279 | GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches, |
| 280 | GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips, |
| 281 | GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips, |
| 282 | GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips_UseAbs, |
| 283 | GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6, |
| 284 | GIFBS_HasMips2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips, |
| 285 | GIFBS_HasMips2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips, |
| 286 | GIFBS_HasMips32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 287 | GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 288 | GIFBS_HasMips64_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips64r6, |
| 289 | GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_UseAbs, |
| 290 | GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_UseAbs, |
| 291 | GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 292 | GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 293 | GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 294 | GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 295 | GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 296 | GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 297 | GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 298 | GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 299 | GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6, |
| 300 | }; |
| 301 | constexpr static PredicateBitset FeatureBitsets[] { |
| 302 | {}, // GIFBS_Invalid |
| 303 | {Feature_HasCnMipsBit, }, |
| 304 | {Feature_HasDSPBit, }, |
| 305 | {Feature_HasDSPR2Bit, }, |
| 306 | {Feature_HasMSABit, }, |
| 307 | {Feature_InMicroMipsBit, }, |
| 308 | {Feature_InMips16ModeBit, }, |
| 309 | {Feature_IsFP64bitBit, }, |
| 310 | {Feature_NotFP64bitBit, }, |
| 311 | {Feature_NotInMips16ModeBit, }, |
| 312 | {Feature_HasDSPBit, Feature_InMicroMipsBit, }, |
| 313 | {Feature_HasDSPBit, Feature_NotInMicroMipsBit, }, |
| 314 | {Feature_HasDSPR2Bit, Feature_InMicroMipsBit, }, |
| 315 | {Feature_HasMSABit, Feature_HasStdEncBit, }, |
| 316 | {Feature_HasMSABit, Feature_IsBEBit, }, |
| 317 | {Feature_HasMSABit, Feature_IsLEBit, }, |
| 318 | {Feature_HasMips32r6Bit, Feature_HasStdEncBit, }, |
| 319 | {Feature_HasMips32r6Bit, Feature_InMicroMipsBit, }, |
| 320 | {Feature_HasMips64r2Bit, Feature_HasStdEncBit, }, |
| 321 | {Feature_HasMips64r6Bit, Feature_HasStdEncBit, }, |
| 322 | {Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, }, |
| 323 | {Feature_HasStdEncBit, Feature_NotInMicroMipsBit, }, |
| 324 | {Feature_HasStdEncBit, Feature_NotMips4_32Bit, }, |
| 325 | {Feature_InMicroMipsBit, Feature_IsFP64bitBit, }, |
| 326 | {Feature_InMicroMipsBit, Feature_IsNotSoftFloatBit, }, |
| 327 | {Feature_InMicroMipsBit, Feature_NotFP64bitBit, }, |
| 328 | {Feature_InMicroMipsBit, Feature_NotMips32r6Bit, }, |
| 329 | {Feature_IsGP64bitBit, Feature_NotInMips16ModeBit, }, |
| 330 | {Feature_AllowFPOpFusionBit, Feature_HasMSABit, Feature_HasStdEncBit, }, |
| 331 | {Feature_HasMSABit, Feature_HasMips64Bit, Feature_HasStdEncBit, }, |
| 332 | {Feature_HasMips3Bit, Feature_HasStdEncBit, Feature_IsGP64bitBit, }, |
| 333 | {Feature_HasMips3Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, }, |
| 334 | {Feature_HasMips32r2Bit, Feature_HasStdEncBit, Feature_IsGP64bitBit, }, |
| 335 | {Feature_HasMips32r2Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, }, |
| 336 | {Feature_HasMips32r6Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, }, |
| 337 | {Feature_HasMips32r6Bit, Feature_InMicroMipsBit, Feature_IsNotSoftFloatBit, }, |
| 338 | {Feature_HasMips64r2Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, }, |
| 339 | {Feature_HasMips64r6Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, }, |
| 340 | {Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_NotInMicroMipsBit, }, |
| 341 | {Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_NotMips4_32Bit, }, |
| 342 | {Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, }, |
| 343 | {Feature_HasStdEncBit, Feature_NotFP64bitBit, Feature_NotInMicroMipsBit, }, |
| 344 | {Feature_HasStdEncBit, Feature_NotFP64bitBit, Feature_NotMips4_32Bit, }, |
| 345 | {Feature_HasStdEncBit, Feature_NotInMicroMipsBit, Feature_RelocNotPICBit, }, |
| 346 | {Feature_InMicroMipsBit, Feature_IsFP64bitBit, Feature_IsNotSoftFloatBit, }, |
| 347 | {Feature_InMicroMipsBit, Feature_IsNotSoftFloatBit, Feature_NotFP64bitBit, }, |
| 348 | {Feature_InMicroMipsBit, Feature_IsNotSoftFloatBit, Feature_UseAbsBit, }, |
| 349 | {Feature_InMicroMipsBit, Feature_NotFP64bitBit, Feature_NotMips32r6Bit, }, |
| 350 | {Feature_InMicroMipsBit, Feature_NotMips32r6Bit, Feature_RelocNotPICBit, }, |
| 351 | {Feature_InMicroMipsBit, Feature_NotMips32r6Bit, Feature_RelocPICBit, }, |
| 352 | {Feature_IsFP64bitBit, Feature_IsNotSoftFloatBit, Feature_NotInMips16ModeBit, }, |
| 353 | {Feature_IsNotSoftFloatBit, Feature_NotFP64bitBit, Feature_NotInMips16ModeBit, }, |
| 354 | {Feature_HasMadd4Bit, Feature_InMicroMipsBit, Feature_NoNaNsFPMathBit, Feature_NotMips32r6Bit, }, |
| 355 | {Feature_HasMips2Bit, Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, }, |
| 356 | {Feature_HasMips3Bit, Feature_HasStdEncBit, Feature_IsGP64bitBit, Feature_NotInMicroMipsBit, }, |
| 357 | {Feature_HasMips3Bit, Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, }, |
| 358 | {Feature_HasMips32Bit, Feature_HasStdEncBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 359 | {Feature_HasMips32r6Bit, Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, }, |
| 360 | {Feature_HasMips32r6Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, Feature_UseCompactBranchesBit, }, |
| 361 | {Feature_HasMips4_32Bit, Feature_HasStdEncBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 362 | {Feature_HasMips64r2Bit, Feature_HasStdEncBit, Feature_IsGP64bitBit, Feature_NotInMicroMipsBit, }, |
| 363 | {Feature_HasMips64r6Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, Feature_UseCompactBranchesBit, }, |
| 364 | {Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, }, |
| 365 | {Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotFP64bitBit, Feature_NotInMicroMipsBit, }, |
| 366 | {Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, Feature_UseAbsBit, }, |
| 367 | {Feature_HasMadd4Bit, Feature_InMicroMipsBit, Feature_NoNaNsFPMathBit, Feature_NotFP64bitBit, Feature_NotMips32r6Bit, }, |
| 368 | {Feature_HasMips2Bit, Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, }, |
| 369 | {Feature_HasMips2Bit, Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotFP64bitBit, Feature_NotInMicroMipsBit, }, |
| 370 | {Feature_HasMips32Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 371 | {Feature_HasMips4_32Bit, Feature_HasStdEncBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 372 | {Feature_HasMips64Bit, Feature_HasStdEncBit, Feature_IsGP64bitBit, Feature_NotInMicroMipsBit, Feature_NotMips64r6Bit, }, |
| 373 | {Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, Feature_UseAbsBit, }, |
| 374 | {Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotFP64bitBit, Feature_NotInMicroMipsBit, Feature_UseAbsBit, }, |
| 375 | {Feature_HasMips4_32Bit, Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 376 | {Feature_HasMips4_32Bit, Feature_HasStdEncBit, Feature_IsGP64bitBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 377 | {Feature_HasMips4_32Bit, Feature_HasStdEncBit, Feature_NotFP64bitBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 378 | {Feature_HasMadd4Bit, Feature_HasMips4_32r2Bit, Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 379 | {Feature_HasMadd4Bit, Feature_HasMips4_32r2Bit, Feature_HasStdEncBit, Feature_NoNaNsFPMathBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 380 | {Feature_HasMadd4Bit, Feature_HasMips4_32r2Bit, Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_IsNotSoftFloatBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 381 | {Feature_HasMadd4Bit, Feature_HasMips4_32r2Bit, Feature_HasStdEncBit, Feature_IsFP64bitBit, Feature_NoNaNsFPMathBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 382 | {Feature_HasMadd4Bit, Feature_HasMips4_32r2Bit, Feature_HasStdEncBit, Feature_IsNotSoftFloatBit, Feature_NotFP64bitBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 383 | {Feature_HasMadd4Bit, Feature_HasMips4_32r2Bit, Feature_HasStdEncBit, Feature_NoNaNsFPMathBit, Feature_NotFP64bitBit, Feature_NotInMicroMipsBit, Feature_NotMips32r6Bit, Feature_NotMips64r6Bit, }, |
| 384 | }; |
| 385 | |
| 386 | // ComplexPattern predicates. |
| 387 | enum { |
| 388 | GICP_Invalid, |
| 389 | }; |
| 390 | // See constructor for table contents |
| 391 | |
| 392 | MipsInstructionSelector::ComplexMatcherMemFn |
| 393 | MipsInstructionSelector::ComplexPredicateFns[] = { |
| 394 | nullptr, // GICP_Invalid |
| 395 | }; |
| 396 | |
| 397 | // PatFrag predicates. |
| 398 | enum { |
| 399 | GICXXPred_MI_Predicate_ffloor_nnan = GICXXPred_Invalid + 1, |
| 400 | GICXXPred_MI_Predicate_or_disjoint, |
| 401 | }; |
| 402 | bool MipsInstructionSelector::testMIPredicate_MI(unsigned PredicateID, const MachineInstr & MI, const MatcherState &State) const { |
| 403 | const MachineFunction &MF = *MI.getParent()->getParent(); |
| 404 | const MachineRegisterInfo &MRI = MF.getRegInfo(); |
| 405 | const auto &Operands = State.RecordedOperands; |
| 406 | (void)Operands; |
| 407 | (void)MRI; |
| 408 | switch (PredicateID) { |
| 409 | case GICXXPred_MI_Predicate_ffloor_nnan: { |
| 410 | |
| 411 | return MI.getFlag(MachineInstr::FmNoNans); |
| 412 | |
| 413 | } |
| 414 | case GICXXPred_MI_Predicate_or_disjoint: { |
| 415 | |
| 416 | return MI.getFlag(MachineInstr::Disjoint); |
| 417 | |
| 418 | } |
| 419 | } |
| 420 | llvm_unreachable("Unknown predicate" ); |
| 421 | return false; |
| 422 | } |
| 423 | // PatFrag predicates. |
| 424 | bool MipsInstructionSelector::testMOPredicate_MO(unsigned PredicateID, const MachineOperand & MO, const MatcherState &State) const { |
| 425 | const auto &Operands = State.RecordedOperands; |
| 426 | Register Reg = MO.getReg(); |
| 427 | (void)Operands; |
| 428 | (void)Reg; |
| 429 | llvm_unreachable("Unknown predicate" ); |
| 430 | return false; |
| 431 | } |
| 432 | // PatFrag predicates. |
| 433 | enum { |
| 434 | GICXXPred_I64_Predicate_immLi16 = GICXXPred_Invalid + 1, |
| 435 | GICXXPred_I64_Predicate_immSExt6, |
| 436 | GICXXPred_I64_Predicate_immSExt10, |
| 437 | GICXXPred_I64_Predicate_immSExtAddiur2, |
| 438 | GICXXPred_I64_Predicate_immSExtAddius5, |
| 439 | GICXXPred_I64_Predicate_immZExt1, |
| 440 | GICXXPred_I64_Predicate_immZExt1Ptr, |
| 441 | GICXXPred_I64_Predicate_immZExt2, |
| 442 | GICXXPred_I64_Predicate_immZExt2Lsa, |
| 443 | GICXXPred_I64_Predicate_immZExt2Ptr, |
| 444 | GICXXPred_I64_Predicate_immZExt2Shift, |
| 445 | GICXXPred_I64_Predicate_immZExt3, |
| 446 | GICXXPred_I64_Predicate_immZExt3Ptr, |
| 447 | GICXXPred_I64_Predicate_immZExt4, |
| 448 | GICXXPred_I64_Predicate_immZExt4Ptr, |
| 449 | GICXXPred_I64_Predicate_immZExt5, |
| 450 | GICXXPred_I64_Predicate_immZExt5_64, |
| 451 | GICXXPred_I64_Predicate_immZExt6, |
| 452 | GICXXPred_I64_Predicate_immZExt8, |
| 453 | GICXXPred_I64_Predicate_immZExt10, |
| 454 | GICXXPred_I64_Predicate_immZExtAndi16, |
| 455 | GICXXPred_I64_Predicate_immi32Cst7, |
| 456 | GICXXPred_I64_Predicate_immi32Cst15, |
| 457 | GICXXPred_I64_Predicate_immi32Cst31, |
| 458 | GICXXPred_I64_Predicate_timmSExt6, |
| 459 | GICXXPred_I64_Predicate_timmZExt1, |
| 460 | GICXXPred_I64_Predicate_timmZExt1Ptr, |
| 461 | GICXXPred_I64_Predicate_timmZExt2, |
| 462 | GICXXPred_I64_Predicate_timmZExt2Ptr, |
| 463 | GICXXPred_I64_Predicate_timmZExt3, |
| 464 | GICXXPred_I64_Predicate_timmZExt3Ptr, |
| 465 | GICXXPred_I64_Predicate_timmZExt4, |
| 466 | GICXXPred_I64_Predicate_timmZExt4Ptr, |
| 467 | GICXXPred_I64_Predicate_timmZExt5, |
| 468 | GICXXPred_I64_Predicate_timmZExt6, |
| 469 | GICXXPred_I64_Predicate_timmZExt8, |
| 470 | GICXXPred_I64_Predicate_timmZExt10, |
| 471 | }; |
| 472 | bool MipsInstructionSelector::testImmPredicate_I64(unsigned PredicateID, int64_t Imm) const { |
| 473 | switch (PredicateID) { |
| 474 | case GICXXPred_I64_Predicate_immLi16: { |
| 475 | return Imm >= -1 && Imm <= 126; |
| 476 | } |
| 477 | case GICXXPred_I64_Predicate_immSExt6: { |
| 478 | return isInt<6>(Imm); |
| 479 | } |
| 480 | case GICXXPred_I64_Predicate_immSExt10: { |
| 481 | return isInt<10>(Imm); |
| 482 | } |
| 483 | case GICXXPred_I64_Predicate_immSExtAddiur2: { |
| 484 | return Imm == 1 || Imm == -1 || |
| 485 | ((Imm % 4 == 0) && |
| 486 | Imm < 28 && Imm > 0); |
| 487 | } |
| 488 | case GICXXPred_I64_Predicate_immSExtAddius5: { |
| 489 | return Imm >= -8 && Imm <= 7; |
| 490 | } |
| 491 | case GICXXPred_I64_Predicate_immZExt1: { |
| 492 | return isUInt<1>(Imm); |
| 493 | } |
| 494 | case GICXXPred_I64_Predicate_immZExt1Ptr: { |
| 495 | return isUInt<1>(Imm); |
| 496 | } |
| 497 | case GICXXPred_I64_Predicate_immZExt2: { |
| 498 | return isUInt<2>(Imm); |
| 499 | } |
| 500 | case GICXXPred_I64_Predicate_immZExt2Lsa: { |
| 501 | return isUInt<2>(Imm - 1); |
| 502 | } |
| 503 | case GICXXPred_I64_Predicate_immZExt2Ptr: { |
| 504 | return isUInt<2>(Imm); |
| 505 | } |
| 506 | case GICXXPred_I64_Predicate_immZExt2Shift: { |
| 507 | return Imm >= 1 && Imm <= 8; |
| 508 | } |
| 509 | case GICXXPred_I64_Predicate_immZExt3: { |
| 510 | return isUInt<3>(Imm); |
| 511 | } |
| 512 | case GICXXPred_I64_Predicate_immZExt3Ptr: { |
| 513 | return isUInt<3>(Imm); |
| 514 | } |
| 515 | case GICXXPred_I64_Predicate_immZExt4: { |
| 516 | return isUInt<4>(Imm); |
| 517 | } |
| 518 | case GICXXPred_I64_Predicate_immZExt4Ptr: { |
| 519 | return isUInt<4>(Imm); |
| 520 | } |
| 521 | case GICXXPred_I64_Predicate_immZExt5: { |
| 522 | return Imm == (Imm & 0x1f); |
| 523 | } |
| 524 | case GICXXPred_I64_Predicate_immZExt5_64: { |
| 525 | return Imm == (Imm & 0x1f); |
| 526 | } |
| 527 | case GICXXPred_I64_Predicate_immZExt6: { |
| 528 | return Imm == (Imm & 0x3f); |
| 529 | } |
| 530 | case GICXXPred_I64_Predicate_immZExt8: { |
| 531 | return isUInt<8>(Imm); |
| 532 | } |
| 533 | case GICXXPred_I64_Predicate_immZExt10: { |
| 534 | return isUInt<10>(Imm); |
| 535 | } |
| 536 | case GICXXPred_I64_Predicate_immZExtAndi16: { |
| 537 | return (Imm == 128 || (Imm >= 1 && Imm <= 4) || Imm == 7 || Imm == 8 || |
| 538 | Imm == 15 || Imm == 16 || Imm == 31 || Imm == 32 || Imm == 63 || |
| 539 | Imm == 64 || Imm == 255 || Imm == 32768 || Imm == 65535 ); |
| 540 | } |
| 541 | case GICXXPred_I64_Predicate_immi32Cst7: { |
| 542 | return isUInt<32>(Imm) && Imm == 7; |
| 543 | } |
| 544 | case GICXXPred_I64_Predicate_immi32Cst15: { |
| 545 | return isUInt<32>(Imm) && Imm == 15; |
| 546 | } |
| 547 | case GICXXPred_I64_Predicate_immi32Cst31: { |
| 548 | return isUInt<32>(Imm) && Imm == 31; |
| 549 | } |
| 550 | case GICXXPred_I64_Predicate_timmSExt6: { |
| 551 | return isInt<6>(Imm); |
| 552 | } |
| 553 | case GICXXPred_I64_Predicate_timmZExt1: { |
| 554 | return isUInt<1>(Imm); |
| 555 | } |
| 556 | case GICXXPred_I64_Predicate_timmZExt1Ptr: { |
| 557 | return isUInt<1>(Imm); |
| 558 | } |
| 559 | case GICXXPred_I64_Predicate_timmZExt2: { |
| 560 | return isUInt<2>(Imm); |
| 561 | } |
| 562 | case GICXXPred_I64_Predicate_timmZExt2Ptr: { |
| 563 | return isUInt<2>(Imm); |
| 564 | } |
| 565 | case GICXXPred_I64_Predicate_timmZExt3: { |
| 566 | return isUInt<3>(Imm); |
| 567 | } |
| 568 | case GICXXPred_I64_Predicate_timmZExt3Ptr: { |
| 569 | return isUInt<3>(Imm); |
| 570 | } |
| 571 | case GICXXPred_I64_Predicate_timmZExt4: { |
| 572 | return isUInt<4>(Imm); |
| 573 | } |
| 574 | case GICXXPred_I64_Predicate_timmZExt4Ptr: { |
| 575 | return isUInt<4>(Imm); |
| 576 | } |
| 577 | case GICXXPred_I64_Predicate_timmZExt5: { |
| 578 | return Imm == (Imm & 0x1f); |
| 579 | } |
| 580 | case GICXXPred_I64_Predicate_timmZExt6: { |
| 581 | return Imm == (Imm & 0x3f); |
| 582 | } |
| 583 | case GICXXPred_I64_Predicate_timmZExt8: { |
| 584 | return isUInt<8>(Imm); |
| 585 | } |
| 586 | case GICXXPred_I64_Predicate_timmZExt10: { |
| 587 | return isUInt<10>(Imm); |
| 588 | } |
| 589 | } |
| 590 | llvm_unreachable("Unknown predicate" ); |
| 591 | return false; |
| 592 | } |
| 593 | // PatFrag predicates. |
| 594 | bool MipsInstructionSelector::testImmPredicate_APFloat(unsigned PredicateID, const APFloat & Imm) const { |
| 595 | llvm_unreachable("Unknown predicate" ); |
| 596 | return false; |
| 597 | } |
| 598 | // PatFrag predicates. |
| 599 | enum { |
| 600 | GICXXPred_APInt_Predicate_imm32SExt16 = GICXXPred_Invalid + 1, |
| 601 | GICXXPred_APInt_Predicate_imm32ZExt16, |
| 602 | }; |
| 603 | bool MipsInstructionSelector::testImmPredicate_APInt(unsigned PredicateID, const APInt & Imm) const { |
| 604 | switch (PredicateID) { |
| 605 | case GICXXPred_APInt_Predicate_imm32SExt16: { |
| 606 | return isInt<16>(Imm.getSExtValue()); |
| 607 | } |
| 608 | case GICXXPred_APInt_Predicate_imm32ZExt16: { |
| 609 | |
| 610 | return (uint32_t)Imm.getZExtValue() == (unsigned short)Imm.getZExtValue(); |
| 611 | |
| 612 | } |
| 613 | } |
| 614 | llvm_unreachable("Unknown predicate" ); |
| 615 | return false; |
| 616 | } |
| 617 | bool MipsInstructionSelector::testSimplePredicate(unsigned) const { |
| 618 | llvm_unreachable("MipsInstructionSelector does not support simple predicates!" ); |
| 619 | return false; |
| 620 | } |
| 621 | // Custom renderers. |
| 622 | enum { |
| 623 | GICR_Invalid, |
| 624 | }; |
| 625 | MipsInstructionSelector::CustomRendererFn |
| 626 | MipsInstructionSelector::CustomRenderers[] = { |
| 627 | nullptr, // GICR_Invalid |
| 628 | }; |
| 629 | |
| 630 | bool MipsInstructionSelector::selectImpl(MachineInstr &I, CodeGenCoverage &CoverageInfo) const { |
| 631 | const PredicateBitset AvailableFeatures = getAvailableFeatures(); |
| 632 | MachineIRBuilder B(I); |
| 633 | State.MIs.clear(); |
| 634 | State.MIs.push_back(&I); |
| 635 | |
| 636 | if (executeMatchTable(*this, State, ExecInfo, B, getMatchTable(), TII, MF->getRegInfo(), TRI, RBI, AvailableFeatures, &CoverageInfo)) { |
| 637 | return true; |
| 638 | } |
| 639 | |
| 640 | return false; |
| 641 | } |
| 642 | |
| 643 | bool MipsInstructionSelector::runCustomAction(unsigned, const MatcherState&, NewMIVector &) const { |
| 644 | llvm_unreachable("MipsInstructionSelector does not support custom C++ actions!" ); |
| 645 | } |
| 646 | #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ |
| 647 | #define GIMT_Encode2(Val) uint8_t(Val), uint8_t((Val) >> 8) |
| 648 | #define GIMT_Encode4(Val) uint8_t(Val), uint8_t((Val) >> 8), uint8_t((Val) >> 16), uint8_t((Val) >> 24) |
| 649 | #define GIMT_Encode8(Val) uint8_t(Val), uint8_t((Val) >> 8), uint8_t((Val) >> 16), uint8_t((Val) >> 24), uint8_t(uint64_t(Val) >> 32), uint8_t(uint64_t(Val) >> 40), uint8_t(uint64_t(Val) >> 48), uint8_t(uint64_t(Val) >> 56) |
| 650 | #else |
| 651 | #define GIMT_Encode2(Val) uint8_t((Val) >> 8), uint8_t(Val) |
| 652 | #define GIMT_Encode4(Val) uint8_t((Val) >> 24), uint8_t((Val) >> 16), uint8_t((Val) >> 8), uint8_t(Val) |
| 653 | #define GIMT_Encode8(Val) uint8_t(uint64_t(Val) >> 56), uint8_t(uint64_t(Val) >> 48), uint8_t(uint64_t(Val) >> 40), uint8_t(uint64_t(Val) >> 32), uint8_t((Val) >> 24), uint8_t((Val) >> 16), uint8_t((Val) >> 8), uint8_t(Val) |
| 654 | #endif |
| 655 | const uint8_t *MipsInstructionSelector::getMatchTable() const { |
| 656 | constexpr static uint8_t MatchTable0[] = { |
| 657 | /* 0 */ GIM_SwitchOpcode, /*MI*/0, /*[*/GIMT_Encode2(55), GIMT_Encode2(302), /*)*//*default:*//*Label 84*/ GIMT_Encode4(76997), |
| 658 | /* 10 */ /*TargetOpcode::G_ADD*//*Label 0*/ GIMT_Encode4(998), |
| 659 | /* 14 */ /*TargetOpcode::G_SUB*//*Label 1*/ GIMT_Encode4(2296), |
| 660 | /* 18 */ /*TargetOpcode::G_MUL*//*Label 2*/ GIMT_Encode4(2987), |
| 661 | /* 22 */ /*TargetOpcode::G_SDIV*//*Label 3*/ GIMT_Encode4(3468), |
| 662 | /* 26 */ /*TargetOpcode::G_UDIV*//*Label 4*/ GIMT_Encode4(3737), |
| 663 | /* 30 */ /*TargetOpcode::G_SREM*//*Label 5*/ GIMT_Encode4(4006), |
| 664 | /* 34 */ /*TargetOpcode::G_UREM*//*Label 6*/ GIMT_Encode4(4275), GIMT_Encode4(0), GIMT_Encode4(0), |
| 665 | /* 46 */ /*TargetOpcode::G_AND*//*Label 7*/ GIMT_Encode4(4544), |
| 666 | /* 50 */ /*TargetOpcode::G_OR*//*Label 8*/ GIMT_Encode4(5100), |
| 667 | /* 54 */ /*TargetOpcode::G_XOR*//*Label 9*/ GIMT_Encode4(5504), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 668 | /* 118 */ /*TargetOpcode::G_MERGE_VALUES*//*Label 10*/ GIMT_Encode4(6396), |
| 669 | /* 122 */ /*TargetOpcode::G_BUILD_VECTOR*//*Label 11*/ GIMT_Encode4(6469), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 670 | /* 142 */ /*TargetOpcode::G_BITCAST*//*Label 12*/ GIMT_Encode4(6810), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 671 | /* 186 */ /*TargetOpcode::G_LOAD*//*Label 13*/ GIMT_Encode4(11121), |
| 672 | /* 190 */ /*TargetOpcode::G_SEXTLOAD*//*Label 14*/ GIMT_Encode4(11186), |
| 673 | /* 194 */ /*TargetOpcode::G_ZEXTLOAD*//*Label 15*/ GIMT_Encode4(11254), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 674 | /* 222 */ /*TargetOpcode::G_ATOMIC_CMPXCHG*//*Label 16*/ GIMT_Encode4(11322), |
| 675 | /* 226 */ /*TargetOpcode::G_ATOMICRMW_XCHG*//*Label 17*/ GIMT_Encode4(11514), |
| 676 | /* 230 */ /*TargetOpcode::G_ATOMICRMW_ADD*//*Label 18*/ GIMT_Encode4(11684), |
| 677 | /* 234 */ /*TargetOpcode::G_ATOMICRMW_SUB*//*Label 19*/ GIMT_Encode4(11854), |
| 678 | /* 238 */ /*TargetOpcode::G_ATOMICRMW_AND*//*Label 20*/ GIMT_Encode4(12024), |
| 679 | /* 242 */ /*TargetOpcode::G_ATOMICRMW_NAND*//*Label 21*/ GIMT_Encode4(12194), |
| 680 | /* 246 */ /*TargetOpcode::G_ATOMICRMW_OR*//*Label 22*/ GIMT_Encode4(12364), |
| 681 | /* 250 */ /*TargetOpcode::G_ATOMICRMW_XOR*//*Label 23*/ GIMT_Encode4(12534), |
| 682 | /* 254 */ /*TargetOpcode::G_ATOMICRMW_MAX*//*Label 24*/ GIMT_Encode4(12704), |
| 683 | /* 258 */ /*TargetOpcode::G_ATOMICRMW_MIN*//*Label 25*/ GIMT_Encode4(12874), |
| 684 | /* 262 */ /*TargetOpcode::G_ATOMICRMW_UMAX*//*Label 26*/ GIMT_Encode4(13044), |
| 685 | /* 266 */ /*TargetOpcode::G_ATOMICRMW_UMIN*//*Label 27*/ GIMT_Encode4(13214), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 686 | /* 318 */ /*TargetOpcode::G_BRCOND*//*Label 28*/ GIMT_Encode4(13384), GIMT_Encode4(0), GIMT_Encode4(0), |
| 687 | /* 330 */ /*TargetOpcode::G_INTRINSIC*//*Label 29*/ GIMT_Encode4(19929), |
| 688 | /* 334 */ /*TargetOpcode::G_INTRINSIC_W_SIDE_EFFECTS*//*Label 30*/ GIMT_Encode4(34194), GIMT_Encode4(0), GIMT_Encode4(0), |
| 689 | /* 346 */ /*TargetOpcode::G_ANYEXT*//*Label 31*/ GIMT_Encode4(39288), |
| 690 | /* 350 */ /*TargetOpcode::G_TRUNC*//*Label 32*/ GIMT_Encode4(39354), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 691 | /* 366 */ /*TargetOpcode::G_CONSTANT*//*Label 33*/ GIMT_Encode4(39418), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 692 | /* 382 */ /*TargetOpcode::G_SEXT*//*Label 34*/ GIMT_Encode4(39479), |
| 693 | /* 386 */ /*TargetOpcode::G_SEXT_INREG*//*Label 35*/ GIMT_Encode4(40943), |
| 694 | /* 390 */ /*TargetOpcode::G_ZEXT*//*Label 36*/ GIMT_Encode4(41291), |
| 695 | /* 394 */ /*TargetOpcode::G_SHL*//*Label 37*/ GIMT_Encode4(41492), |
| 696 | /* 398 */ /*TargetOpcode::G_LSHR*//*Label 38*/ GIMT_Encode4(43289), |
| 697 | /* 402 */ /*TargetOpcode::G_ASHR*//*Label 39*/ GIMT_Encode4(45086), GIMT_Encode4(0), GIMT_Encode4(0), |
| 698 | /* 414 */ /*TargetOpcode::G_ROTR*//*Label 40*/ GIMT_Encode4(46841), GIMT_Encode4(0), |
| 699 | /* 422 */ /*TargetOpcode::G_ICMP*//*Label 41*/ GIMT_Encode4(47129), |
| 700 | /* 426 */ /*TargetOpcode::G_FCMP*//*Label 42*/ GIMT_Encode4(49660), GIMT_Encode4(0), GIMT_Encode4(0), |
| 701 | /* 438 */ /*TargetOpcode::G_SELECT*//*Label 43*/ GIMT_Encode4(50660), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 702 | /* 482 */ /*TargetOpcode::G_UMULH*//*Label 44*/ GIMT_Encode4(62790), |
| 703 | /* 486 */ /*TargetOpcode::G_SMULH*//*Label 45*/ GIMT_Encode4(62899), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 704 | /* 546 */ /*TargetOpcode::G_FADD*//*Label 46*/ GIMT_Encode4(63008), |
| 705 | /* 550 */ /*TargetOpcode::G_FSUB*//*Label 47*/ GIMT_Encode4(64303), |
| 706 | /* 554 */ /*TargetOpcode::G_FMUL*//*Label 48*/ GIMT_Encode4(65118), |
| 707 | /* 558 */ /*TargetOpcode::G_FMA*//*Label 49*/ GIMT_Encode4(65629), GIMT_Encode4(0), |
| 708 | /* 566 */ /*TargetOpcode::G_FDIV*//*Label 50*/ GIMT_Encode4(65735), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 709 | /* 590 */ /*TargetOpcode::G_FEXP2*//*Label 51*/ GIMT_Encode4(66058), GIMT_Encode4(0), GIMT_Encode4(0), |
| 710 | /* 602 */ /*TargetOpcode::G_FLOG2*//*Label 52*/ GIMT_Encode4(66136), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 711 | /* 618 */ /*TargetOpcode::G_FNEG*//*Label 53*/ GIMT_Encode4(66214), |
| 712 | /* 622 */ /*TargetOpcode::G_FPEXT*//*Label 54*/ GIMT_Encode4(71119), |
| 713 | /* 626 */ /*TargetOpcode::G_FPTRUNC*//*Label 55*/ GIMT_Encode4(71313), |
| 714 | /* 630 */ /*TargetOpcode::G_FPTOSI*//*Label 56*/ GIMT_Encode4(71492), |
| 715 | /* 634 */ /*TargetOpcode::G_FPTOUI*//*Label 57*/ GIMT_Encode4(71570), |
| 716 | /* 638 */ /*TargetOpcode::G_SITOFP*//*Label 58*/ GIMT_Encode4(71648), |
| 717 | /* 642 */ /*TargetOpcode::G_UITOFP*//*Label 59*/ GIMT_Encode4(71901), GIMT_Encode4(0), GIMT_Encode4(0), |
| 718 | /* 654 */ /*TargetOpcode::G_FABS*//*Label 60*/ GIMT_Encode4(71979), GIMT_Encode4(0), GIMT_Encode4(0), |
| 719 | /* 666 */ /*TargetOpcode::G_FCANONICALIZE*//*Label 61*/ GIMT_Encode4(72227), |
| 720 | /* 670 */ /*TargetOpcode::G_FMINNUM*//*Label 62*/ GIMT_Encode4(72301), |
| 721 | /* 674 */ /*TargetOpcode::G_FMAXNUM*//*Label 63*/ GIMT_Encode4(72373), |
| 722 | /* 678 */ /*TargetOpcode::G_FMINNUM_IEEE*//*Label 64*/ GIMT_Encode4(72445), |
| 723 | /* 682 */ /*TargetOpcode::G_FMAXNUM_IEEE*//*Label 65*/ GIMT_Encode4(72517), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 724 | /* 742 */ /*TargetOpcode::G_SMIN*//*Label 66*/ GIMT_Encode4(72589), |
| 725 | /* 746 */ /*TargetOpcode::G_SMAX*//*Label 67*/ GIMT_Encode4(72757), |
| 726 | /* 750 */ /*TargetOpcode::G_UMIN*//*Label 68*/ GIMT_Encode4(72925), |
| 727 | /* 754 */ /*TargetOpcode::G_UMAX*//*Label 69*/ GIMT_Encode4(73093), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 728 | /* 770 */ /*TargetOpcode::G_BR*//*Label 70*/ GIMT_Encode4(73261), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 729 | /* 790 */ /*TargetOpcode::G_INSERT_VECTOR_ELT*//*Label 71*/ GIMT_Encode4(73385), |
| 730 | /* 794 */ /*TargetOpcode::G_EXTRACT_VECTOR_ELT*//*Label 72*/ GIMT_Encode4(73949), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 731 | /* 822 */ /*TargetOpcode::G_CTLZ*//*Label 73*/ GIMT_Encode4(74001), GIMT_Encode4(0), GIMT_Encode4(0), |
| 732 | /* 834 */ /*TargetOpcode::G_CTPOP*//*Label 74*/ GIMT_Encode4(74506), |
| 733 | /* 838 */ /*TargetOpcode::G_BSWAP*//*Label 75*/ GIMT_Encode4(74712), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 734 | /* 894 */ /*TargetOpcode::G_FSQRT*//*Label 76*/ GIMT_Encode4(74876), GIMT_Encode4(0), |
| 735 | /* 902 */ /*TargetOpcode::G_FRINT*//*Label 77*/ GIMT_Encode4(75140), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 736 | /* 934 */ /*TargetOpcode::G_STRICT_FADD*//*Label 78*/ GIMT_Encode4(75218), |
| 737 | /* 938 */ /*TargetOpcode::G_STRICT_FSUB*//*Label 79*/ GIMT_Encode4(76073), |
| 738 | /* 942 */ /*TargetOpcode::G_STRICT_FMUL*//*Label 80*/ GIMT_Encode4(76570), |
| 739 | /* 946 */ /*TargetOpcode::G_STRICT_FDIV*//*Label 81*/ GIMT_Encode4(76703), GIMT_Encode4(0), GIMT_Encode4(0), |
| 740 | /* 958 */ /*TargetOpcode::G_STRICT_FSQRT*//*Label 82*/ GIMT_Encode4(76836), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), GIMT_Encode4(0), |
| 741 | /* 994 */ /*TargetOpcode::G_TRAP*//*Label 83*/ GIMT_Encode4(76951), |
| 742 | /* 998 */ // Label 0: @998 |
| 743 | /* 998 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 93*/ GIMT_Encode4(2295), |
| 744 | /* 1009 */ /*GILLT_s32*//*Label 85*/ GIMT_Encode4(1041), |
| 745 | /* 1013 */ /*GILLT_s64*//*Label 86*/ GIMT_Encode4(1449), |
| 746 | /* 1017 */ /*GILLT_v2s16*//*Label 87*/ GIMT_Encode4(1615), |
| 747 | /* 1021 */ /*GILLT_v2s64*//*Label 88*/ GIMT_Encode4(1647), |
| 748 | /* 1025 */ /*GILLT_v4s8*//*Label 89*/ GIMT_Encode4(1801), |
| 749 | /* 1029 */ /*GILLT_v4s32*//*Label 90*/ GIMT_Encode4(1833), |
| 750 | /* 1033 */ /*GILLT_v8s16*//*Label 91*/ GIMT_Encode4(1987), |
| 751 | /* 1037 */ /*GILLT_v16s8*//*Label 92*/ GIMT_Encode4(2141), |
| 752 | /* 1041 */ // Label 85: @1041 |
| 753 | /* 1041 */ GIM_Try, /*On fail goto*//*Label 94*/ GIMT_Encode4(1448), |
| 754 | /* 1046 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 755 | /* 1049 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 756 | /* 1052 */ GIM_Try, /*On fail goto*//*Label 95*/ GIMT_Encode4(1119), // Rule ID 2561 // |
| 757 | /* 1057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 758 | /* 1060 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 759 | /* 1064 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 760 | /* 1068 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 761 | /* 1072 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 762 | /* 1076 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 763 | /* 1080 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 764 | /* 1085 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 765 | /* 1089 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 766 | /* 1093 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt2Lsa), |
| 767 | /* 1097 */ // MIs[2] Operand 1 |
| 768 | /* 1097 */ // No operand predicates |
| 769 | /* 1097 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 770 | /* 1101 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 771 | /* 1103 */ // (add:{ *:[i32] } (shl:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt2Lsa>>:$sa), GPR32Opnd:{ *:[i32] }:$rt) => (LSA:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$sa) |
| 772 | /* 1103 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LSA), |
| 773 | /* 1106 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 774 | /* 1108 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 775 | /* 1112 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 776 | /* 1114 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // sa |
| 777 | /* 1117 */ GIR_RootConstrainSelectedInstOperands, |
| 778 | /* 1118 */ // GIR_Coverage, 2561, |
| 779 | /* 1118 */ GIR_EraseRootFromParent_Done, |
| 780 | /* 1119 */ // Label 95: @1119 |
| 781 | /* 1119 */ GIM_Try, /*On fail goto*//*Label 96*/ GIMT_Encode4(1186), // Rule ID 909 // |
| 782 | /* 1124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 783 | /* 1127 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 784 | /* 1131 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 785 | /* 1135 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 786 | /* 1139 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 787 | /* 1143 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 788 | /* 1147 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 789 | /* 1151 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 790 | /* 1156 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 791 | /* 1160 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 792 | /* 1164 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt2Lsa), |
| 793 | /* 1168 */ // MIs[2] Operand 1 |
| 794 | /* 1168 */ // No operand predicates |
| 795 | /* 1168 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 796 | /* 1170 */ // (add:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (shl:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt2Lsa>>:$sa)) => (LSA:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$sa) |
| 797 | /* 1170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LSA), |
| 798 | /* 1173 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 799 | /* 1175 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 800 | /* 1179 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 801 | /* 1181 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // sa |
| 802 | /* 1184 */ GIR_RootConstrainSelectedInstOperands, |
| 803 | /* 1185 */ // GIR_Coverage, 909, |
| 804 | /* 1185 */ GIR_EraseRootFromParent_Done, |
| 805 | /* 1186 */ // Label 96: @1186 |
| 806 | /* 1186 */ GIM_Try, /*On fail goto*//*Label 97*/ GIMT_Encode4(1228), // Rule ID 40 // |
| 807 | /* 1191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 808 | /* 1194 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 809 | /* 1198 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 810 | /* 1202 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 811 | /* 1206 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 812 | /* 1210 */ GIM_CheckAPIntImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_APInt_Predicate_imm32SExt16), |
| 813 | /* 1214 */ // MIs[1] Operand 1 |
| 814 | /* 1214 */ // No operand predicates |
| 815 | /* 1214 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 816 | /* 1216 */ // (add:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_imm32SExt16>>:$imm16) => (ADDiu:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] }):$imm16) |
| 817 | /* 1216 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDiu), |
| 818 | /* 1219 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 819 | /* 1221 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 820 | /* 1223 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm16 |
| 821 | /* 1226 */ GIR_RootConstrainSelectedInstOperands, |
| 822 | /* 1227 */ // GIR_Coverage, 40, |
| 823 | /* 1227 */ GIR_EraseRootFromParent_Done, |
| 824 | /* 1228 */ // Label 97: @1228 |
| 825 | /* 1228 */ GIM_Try, /*On fail goto*//*Label 98*/ GIMT_Encode4(1270), // Rule ID 2296 // |
| 826 | /* 1233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 827 | /* 1236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 828 | /* 1240 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 829 | /* 1244 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 830 | /* 1248 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 831 | /* 1252 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immSExtAddiur2), |
| 832 | /* 1256 */ // MIs[1] Operand 1 |
| 833 | /* 1256 */ // No operand predicates |
| 834 | /* 1256 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 835 | /* 1258 */ // (add:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immSExtAddiur2>>:$imm) => (ADDIUR2_MM:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immSExtAddiur2>>:$imm) |
| 836 | /* 1258 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDIUR2_MM), |
| 837 | /* 1261 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 838 | /* 1263 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 839 | /* 1265 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 840 | /* 1268 */ GIR_RootConstrainSelectedInstOperands, |
| 841 | /* 1269 */ // GIR_Coverage, 2296, |
| 842 | /* 1269 */ GIR_EraseRootFromParent_Done, |
| 843 | /* 1270 */ // Label 98: @1270 |
| 844 | /* 1270 */ GIM_Try, /*On fail goto*//*Label 99*/ GIMT_Encode4(1312), // Rule ID 2297 // |
| 845 | /* 1275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 846 | /* 1278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 847 | /* 1282 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 848 | /* 1286 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 849 | /* 1290 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 850 | /* 1294 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immSExtAddius5), |
| 851 | /* 1298 */ // MIs[1] Operand 1 |
| 852 | /* 1298 */ // No operand predicates |
| 853 | /* 1298 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 854 | /* 1300 */ // (add:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immSExtAddius5>>:$imm) => (ADDIUS5_MM:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immSExtAddius5>>:$imm) |
| 855 | /* 1300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDIUS5_MM), |
| 856 | /* 1303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 857 | /* 1305 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 858 | /* 1307 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 859 | /* 1310 */ GIR_RootConstrainSelectedInstOperands, |
| 860 | /* 1311 */ // GIR_Coverage, 2297, |
| 861 | /* 1311 */ GIR_EraseRootFromParent_Done, |
| 862 | /* 1312 */ // Label 99: @1312 |
| 863 | /* 1312 */ GIM_Try, /*On fail goto*//*Label 100*/ GIMT_Encode4(1339), // Rule ID 1283 // |
| 864 | /* 1317 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 865 | /* 1320 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 866 | /* 1324 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 867 | /* 1328 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 868 | /* 1332 */ // (add:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) => (ADDU16_MMR6:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) |
| 869 | /* 1332 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDU16_MMR6), |
| 870 | /* 1337 */ GIR_RootConstrainSelectedInstOperands, |
| 871 | /* 1338 */ // GIR_Coverage, 1283, |
| 872 | /* 1338 */ GIR_Done, |
| 873 | /* 1339 */ // Label 100: @1339 |
| 874 | /* 1339 */ GIM_Try, /*On fail goto*//*Label 101*/ GIMT_Encode4(1366), // Rule ID 46 // |
| 875 | /* 1344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 876 | /* 1347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 877 | /* 1351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 878 | /* 1355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 879 | /* 1359 */ // (add:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDu:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 880 | /* 1359 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDu), |
| 881 | /* 1364 */ GIR_RootConstrainSelectedInstOperands, |
| 882 | /* 1365 */ // GIR_Coverage, 46, |
| 883 | /* 1365 */ GIR_Done, |
| 884 | /* 1366 */ // Label 101: @1366 |
| 885 | /* 1366 */ GIM_Try, /*On fail goto*//*Label 102*/ GIMT_Encode4(1393), // Rule ID 1135 // |
| 886 | /* 1371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 887 | /* 1374 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 888 | /* 1378 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 889 | /* 1382 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 890 | /* 1386 */ // (add:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) => (ADDU16_MM:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) |
| 891 | /* 1386 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDU16_MM), |
| 892 | /* 1391 */ GIR_RootConstrainSelectedInstOperands, |
| 893 | /* 1392 */ // GIR_Coverage, 1135, |
| 894 | /* 1392 */ GIR_Done, |
| 895 | /* 1393 */ // Label 102: @1393 |
| 896 | /* 1393 */ GIM_Try, /*On fail goto*//*Label 103*/ GIMT_Encode4(1420), // Rule ID 1147 // |
| 897 | /* 1398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 898 | /* 1401 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 899 | /* 1405 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 900 | /* 1409 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 901 | /* 1413 */ // (add:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDu_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 902 | /* 1413 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDu_MM), |
| 903 | /* 1418 */ GIR_RootConstrainSelectedInstOperands, |
| 904 | /* 1419 */ // GIR_Coverage, 1147, |
| 905 | /* 1419 */ GIR_Done, |
| 906 | /* 1420 */ // Label 103: @1420 |
| 907 | /* 1420 */ GIM_Try, /*On fail goto*//*Label 104*/ GIMT_Encode4(1447), // Rule ID 1954 // |
| 908 | /* 1425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 909 | /* 1428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 910 | /* 1432 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 911 | /* 1436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 912 | /* 1440 */ // (add:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) => (AdduRxRyRz16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) |
| 913 | /* 1440 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AdduRxRyRz16), |
| 914 | /* 1445 */ GIR_RootConstrainSelectedInstOperands, |
| 915 | /* 1446 */ // GIR_Coverage, 1954, |
| 916 | /* 1446 */ GIR_Done, |
| 917 | /* 1447 */ // Label 104: @1447 |
| 918 | /* 1447 */ GIM_Reject, |
| 919 | /* 1448 */ // Label 94: @1448 |
| 920 | /* 1448 */ GIM_Reject, |
| 921 | /* 1449 */ // Label 86: @1449 |
| 922 | /* 1449 */ GIM_Try, /*On fail goto*//*Label 105*/ GIMT_Encode4(1614), |
| 923 | /* 1454 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 924 | /* 1457 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 925 | /* 1460 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 926 | /* 1464 */ GIM_Try, /*On fail goto*//*Label 106*/ GIMT_Encode4(1527), // Rule ID 2562 // |
| 927 | /* 1469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasMips64_HasStdEnc), |
| 928 | /* 1472 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 929 | /* 1476 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 930 | /* 1480 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 931 | /* 1484 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 932 | /* 1488 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 933 | /* 1493 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 934 | /* 1497 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 935 | /* 1501 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt2Lsa), |
| 936 | /* 1505 */ // MIs[2] Operand 1 |
| 937 | /* 1505 */ // No operand predicates |
| 938 | /* 1505 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 939 | /* 1509 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 940 | /* 1511 */ // (add:{ *:[i64] } (shl:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt2Lsa>>:$sa), GPR64Opnd:{ *:[i64] }:$rt) => (DLSA:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] }):$sa) |
| 941 | /* 1511 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DLSA), |
| 942 | /* 1514 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 943 | /* 1516 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 944 | /* 1520 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 945 | /* 1522 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // sa |
| 946 | /* 1525 */ GIR_RootConstrainSelectedInstOperands, |
| 947 | /* 1526 */ // GIR_Coverage, 2562, |
| 948 | /* 1526 */ GIR_EraseRootFromParent_Done, |
| 949 | /* 1527 */ // Label 106: @1527 |
| 950 | /* 1527 */ GIM_Try, /*On fail goto*//*Label 107*/ GIMT_Encode4(1590), // Rule ID 910 // |
| 951 | /* 1532 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasMips64_HasStdEnc), |
| 952 | /* 1535 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 953 | /* 1539 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 954 | /* 1543 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 955 | /* 1547 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 956 | /* 1551 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 957 | /* 1555 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 958 | /* 1560 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 959 | /* 1564 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 960 | /* 1568 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt2Lsa), |
| 961 | /* 1572 */ // MIs[2] Operand 1 |
| 962 | /* 1572 */ // No operand predicates |
| 963 | /* 1572 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 964 | /* 1574 */ // (add:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (shl:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt2Lsa>>:$sa)) => (DLSA:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] }):$sa) |
| 965 | /* 1574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DLSA), |
| 966 | /* 1577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 967 | /* 1579 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 968 | /* 1583 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 969 | /* 1585 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/2, // sa |
| 970 | /* 1588 */ GIR_RootConstrainSelectedInstOperands, |
| 971 | /* 1589 */ // GIR_Coverage, 910, |
| 972 | /* 1589 */ GIR_EraseRootFromParent_Done, |
| 973 | /* 1590 */ // Label 107: @1590 |
| 974 | /* 1590 */ GIM_Try, /*On fail goto*//*Label 108*/ GIMT_Encode4(1613), // Rule ID 277 // |
| 975 | /* 1595 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 976 | /* 1598 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 977 | /* 1602 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 978 | /* 1606 */ // (add:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DADDu:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 979 | /* 1606 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DADDu), |
| 980 | /* 1611 */ GIR_RootConstrainSelectedInstOperands, |
| 981 | /* 1612 */ // GIR_Coverage, 277, |
| 982 | /* 1612 */ GIR_Done, |
| 983 | /* 1613 */ // Label 108: @1613 |
| 984 | /* 1613 */ GIM_Reject, |
| 985 | /* 1614 */ // Label 105: @1614 |
| 986 | /* 1614 */ GIM_Reject, |
| 987 | /* 1615 */ // Label 87: @1615 |
| 988 | /* 1615 */ GIM_Try, /*On fail goto*//*Label 109*/ GIMT_Encode4(1646), // Rule ID 2053 // |
| 989 | /* 1620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 990 | /* 1623 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 991 | /* 1626 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 992 | /* 1629 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 993 | /* 1633 */ // (add:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) => (ADDQ_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) |
| 994 | /* 1633 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDQ_PH), |
| 995 | /* 1638 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::DSPOutFlag20), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 996 | /* 1644 */ GIR_RootConstrainSelectedInstOperands, |
| 997 | /* 1645 */ // GIR_Coverage, 2053, |
| 998 | /* 1645 */ GIR_Done, |
| 999 | /* 1646 */ // Label 109: @1646 |
| 1000 | /* 1646 */ GIM_Reject, |
| 1001 | /* 1647 */ // Label 88: @1647 |
| 1002 | /* 1647 */ GIM_Try, /*On fail goto*//*Label 110*/ GIMT_Encode4(1800), |
| 1003 | /* 1652 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1004 | /* 1655 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1005 | /* 1658 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1006 | /* 1662 */ GIM_Try, /*On fail goto*//*Label 111*/ GIMT_Encode4(1719), // Rule ID 2566 // |
| 1007 | /* 1667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1008 | /* 1670 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1009 | /* 1674 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1010 | /* 1678 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1011 | /* 1682 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1012 | /* 1686 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1013 | /* 1691 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1014 | /* 1696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1015 | /* 1700 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1016 | /* 1702 */ // (add:{ *:[v2i64] } (mul:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt), MSA128DOpnd:{ *:[v2i64] }:$wd_in) => (MADDV_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1017 | /* 1702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_D), |
| 1018 | /* 1705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1019 | /* 1707 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 1020 | /* 1709 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1021 | /* 1713 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1022 | /* 1717 */ GIR_RootConstrainSelectedInstOperands, |
| 1023 | /* 1718 */ // GIR_Coverage, 2566, |
| 1024 | /* 1718 */ GIR_EraseRootFromParent_Done, |
| 1025 | /* 1719 */ // Label 111: @1719 |
| 1026 | /* 1719 */ GIM_Try, /*On fail goto*//*Label 112*/ GIMT_Encode4(1776), // Rule ID 918 // |
| 1027 | /* 1724 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1028 | /* 1727 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1029 | /* 1731 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1030 | /* 1735 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1031 | /* 1739 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1032 | /* 1743 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1033 | /* 1747 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1034 | /* 1752 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1035 | /* 1757 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1036 | /* 1759 */ // (add:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, (mul:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt)) => (MADDV_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1037 | /* 1759 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_D), |
| 1038 | /* 1762 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1039 | /* 1764 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1040 | /* 1766 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1041 | /* 1770 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1042 | /* 1774 */ GIR_RootConstrainSelectedInstOperands, |
| 1043 | /* 1775 */ // GIR_Coverage, 918, |
| 1044 | /* 1775 */ GIR_EraseRootFromParent_Done, |
| 1045 | /* 1776 */ // Label 112: @1776 |
| 1046 | /* 1776 */ GIM_Try, /*On fail goto*//*Label 113*/ GIMT_Encode4(1799), // Rule ID 585 // |
| 1047 | /* 1781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1048 | /* 1784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1049 | /* 1788 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1050 | /* 1792 */ // (add:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (ADDV_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1051 | /* 1792 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDV_D), |
| 1052 | /* 1797 */ GIR_RootConstrainSelectedInstOperands, |
| 1053 | /* 1798 */ // GIR_Coverage, 585, |
| 1054 | /* 1798 */ GIR_Done, |
| 1055 | /* 1799 */ // Label 113: @1799 |
| 1056 | /* 1799 */ GIM_Reject, |
| 1057 | /* 1800 */ // Label 110: @1800 |
| 1058 | /* 1800 */ GIM_Reject, |
| 1059 | /* 1801 */ // Label 89: @1801 |
| 1060 | /* 1801 */ GIM_Try, /*On fail goto*//*Label 114*/ GIMT_Encode4(1832), // Rule ID 2059 // |
| 1061 | /* 1806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 1062 | /* 1809 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 1063 | /* 1812 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 1064 | /* 1815 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 1065 | /* 1819 */ // (add:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) => (ADDU_QB:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) |
| 1066 | /* 1819 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDU_QB), |
| 1067 | /* 1824 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::DSPOutFlag20), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1068 | /* 1830 */ GIR_RootConstrainSelectedInstOperands, |
| 1069 | /* 1831 */ // GIR_Coverage, 2059, |
| 1070 | /* 1831 */ GIR_Done, |
| 1071 | /* 1832 */ // Label 114: @1832 |
| 1072 | /* 1832 */ GIM_Reject, |
| 1073 | /* 1833 */ // Label 90: @1833 |
| 1074 | /* 1833 */ GIM_Try, /*On fail goto*//*Label 115*/ GIMT_Encode4(1986), |
| 1075 | /* 1838 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1076 | /* 1841 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1077 | /* 1844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1078 | /* 1848 */ GIM_Try, /*On fail goto*//*Label 116*/ GIMT_Encode4(1905), // Rule ID 2565 // |
| 1079 | /* 1853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1080 | /* 1856 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1081 | /* 1860 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1082 | /* 1864 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1083 | /* 1868 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1084 | /* 1872 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1085 | /* 1877 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1086 | /* 1882 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1087 | /* 1886 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1088 | /* 1888 */ // (add:{ *:[v4i32] } (mul:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt), MSA128WOpnd:{ *:[v4i32] }:$wd_in) => (MADDV_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1089 | /* 1888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_W), |
| 1090 | /* 1891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1091 | /* 1893 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 1092 | /* 1895 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1093 | /* 1899 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1094 | /* 1903 */ GIR_RootConstrainSelectedInstOperands, |
| 1095 | /* 1904 */ // GIR_Coverage, 2565, |
| 1096 | /* 1904 */ GIR_EraseRootFromParent_Done, |
| 1097 | /* 1905 */ // Label 116: @1905 |
| 1098 | /* 1905 */ GIM_Try, /*On fail goto*//*Label 117*/ GIMT_Encode4(1962), // Rule ID 917 // |
| 1099 | /* 1910 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1100 | /* 1913 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1101 | /* 1917 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1102 | /* 1921 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1103 | /* 1925 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1104 | /* 1929 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1105 | /* 1933 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1106 | /* 1938 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1107 | /* 1943 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1108 | /* 1945 */ // (add:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, (mul:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt)) => (MADDV_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1109 | /* 1945 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_W), |
| 1110 | /* 1948 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1111 | /* 1950 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1112 | /* 1952 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1113 | /* 1956 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1114 | /* 1960 */ GIR_RootConstrainSelectedInstOperands, |
| 1115 | /* 1961 */ // GIR_Coverage, 917, |
| 1116 | /* 1961 */ GIR_EraseRootFromParent_Done, |
| 1117 | /* 1962 */ // Label 117: @1962 |
| 1118 | /* 1962 */ GIM_Try, /*On fail goto*//*Label 118*/ GIMT_Encode4(1985), // Rule ID 584 // |
| 1119 | /* 1967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1120 | /* 1970 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1121 | /* 1974 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1122 | /* 1978 */ // (add:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (ADDV_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1123 | /* 1978 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDV_W), |
| 1124 | /* 1983 */ GIR_RootConstrainSelectedInstOperands, |
| 1125 | /* 1984 */ // GIR_Coverage, 584, |
| 1126 | /* 1984 */ GIR_Done, |
| 1127 | /* 1985 */ // Label 118: @1985 |
| 1128 | /* 1985 */ GIM_Reject, |
| 1129 | /* 1986 */ // Label 115: @1986 |
| 1130 | /* 1986 */ GIM_Reject, |
| 1131 | /* 1987 */ // Label 91: @1987 |
| 1132 | /* 1987 */ GIM_Try, /*On fail goto*//*Label 119*/ GIMT_Encode4(2140), |
| 1133 | /* 1992 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1134 | /* 1995 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1135 | /* 1998 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1136 | /* 2002 */ GIM_Try, /*On fail goto*//*Label 120*/ GIMT_Encode4(2059), // Rule ID 2564 // |
| 1137 | /* 2007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1138 | /* 2010 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1139 | /* 2014 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1140 | /* 2018 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1141 | /* 2022 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1142 | /* 2026 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1143 | /* 2031 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1144 | /* 2036 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1145 | /* 2040 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1146 | /* 2042 */ // (add:{ *:[v8i16] } (mul:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt), MSA128HOpnd:{ *:[v8i16] }:$wd_in) => (MADDV_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1147 | /* 2042 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_H), |
| 1148 | /* 2045 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1149 | /* 2047 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 1150 | /* 2049 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1151 | /* 2053 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1152 | /* 2057 */ GIR_RootConstrainSelectedInstOperands, |
| 1153 | /* 2058 */ // GIR_Coverage, 2564, |
| 1154 | /* 2058 */ GIR_EraseRootFromParent_Done, |
| 1155 | /* 2059 */ // Label 120: @2059 |
| 1156 | /* 2059 */ GIM_Try, /*On fail goto*//*Label 121*/ GIMT_Encode4(2116), // Rule ID 916 // |
| 1157 | /* 2064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1158 | /* 2067 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1159 | /* 2071 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1160 | /* 2075 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1161 | /* 2079 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1162 | /* 2083 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1163 | /* 2087 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1164 | /* 2092 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1165 | /* 2097 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1166 | /* 2099 */ // (add:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, (mul:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt)) => (MADDV_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1167 | /* 2099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_H), |
| 1168 | /* 2102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1169 | /* 2104 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1170 | /* 2106 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1171 | /* 2110 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1172 | /* 2114 */ GIR_RootConstrainSelectedInstOperands, |
| 1173 | /* 2115 */ // GIR_Coverage, 916, |
| 1174 | /* 2115 */ GIR_EraseRootFromParent_Done, |
| 1175 | /* 2116 */ // Label 121: @2116 |
| 1176 | /* 2116 */ GIM_Try, /*On fail goto*//*Label 122*/ GIMT_Encode4(2139), // Rule ID 583 // |
| 1177 | /* 2121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1178 | /* 2124 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1179 | /* 2128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1180 | /* 2132 */ // (add:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (ADDV_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1181 | /* 2132 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDV_H), |
| 1182 | /* 2137 */ GIR_RootConstrainSelectedInstOperands, |
| 1183 | /* 2138 */ // GIR_Coverage, 583, |
| 1184 | /* 2138 */ GIR_Done, |
| 1185 | /* 2139 */ // Label 122: @2139 |
| 1186 | /* 2139 */ GIM_Reject, |
| 1187 | /* 2140 */ // Label 119: @2140 |
| 1188 | /* 2140 */ GIM_Reject, |
| 1189 | /* 2141 */ // Label 92: @2141 |
| 1190 | /* 2141 */ GIM_Try, /*On fail goto*//*Label 123*/ GIMT_Encode4(2294), |
| 1191 | /* 2146 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1192 | /* 2149 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1193 | /* 2152 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1194 | /* 2156 */ GIM_Try, /*On fail goto*//*Label 124*/ GIMT_Encode4(2213), // Rule ID 2563 // |
| 1195 | /* 2161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1196 | /* 2164 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 1197 | /* 2168 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1198 | /* 2172 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1199 | /* 2176 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1200 | /* 2180 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1201 | /* 2185 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1202 | /* 2190 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1203 | /* 2194 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1204 | /* 2196 */ // (add:{ *:[v16i8] } (mul:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt), MSA128BOpnd:{ *:[v16i8] }:$wd_in) => (MADDV_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1205 | /* 2196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_B), |
| 1206 | /* 2199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1207 | /* 2201 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 1208 | /* 2203 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1209 | /* 2207 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1210 | /* 2211 */ GIR_RootConstrainSelectedInstOperands, |
| 1211 | /* 2212 */ // GIR_Coverage, 2563, |
| 1212 | /* 2212 */ GIR_EraseRootFromParent_Done, |
| 1213 | /* 2213 */ // Label 124: @2213 |
| 1214 | /* 2213 */ GIM_Try, /*On fail goto*//*Label 125*/ GIMT_Encode4(2270), // Rule ID 915 // |
| 1215 | /* 2218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1216 | /* 2221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1217 | /* 2225 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1218 | /* 2229 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1219 | /* 2233 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1220 | /* 2237 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1221 | /* 2241 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1222 | /* 2246 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1223 | /* 2251 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1224 | /* 2253 */ // (add:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, (mul:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt)) => (MADDV_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1225 | /* 2253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDV_B), |
| 1226 | /* 2256 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1227 | /* 2258 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1228 | /* 2260 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1229 | /* 2264 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1230 | /* 2268 */ GIR_RootConstrainSelectedInstOperands, |
| 1231 | /* 2269 */ // GIR_Coverage, 915, |
| 1232 | /* 2269 */ GIR_EraseRootFromParent_Done, |
| 1233 | /* 2270 */ // Label 125: @2270 |
| 1234 | /* 2270 */ GIM_Try, /*On fail goto*//*Label 126*/ GIMT_Encode4(2293), // Rule ID 582 // |
| 1235 | /* 2275 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1236 | /* 2278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1237 | /* 2282 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1238 | /* 2286 */ // (add:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (ADDV_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1239 | /* 2286 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ADDV_B), |
| 1240 | /* 2291 */ GIR_RootConstrainSelectedInstOperands, |
| 1241 | /* 2292 */ // GIR_Coverage, 582, |
| 1242 | /* 2292 */ GIR_Done, |
| 1243 | /* 2293 */ // Label 126: @2293 |
| 1244 | /* 2293 */ GIM_Reject, |
| 1245 | /* 2294 */ // Label 123: @2294 |
| 1246 | /* 2294 */ GIM_Reject, |
| 1247 | /* 2295 */ // Label 93: @2295 |
| 1248 | /* 2295 */ GIM_Reject, |
| 1249 | /* 2296 */ // Label 1: @2296 |
| 1250 | /* 2296 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 135*/ GIMT_Encode4(2986), |
| 1251 | /* 2307 */ /*GILLT_s32*//*Label 127*/ GIMT_Encode4(2339), |
| 1252 | /* 2311 */ /*GILLT_s64*//*Label 128*/ GIMT_Encode4(2516), |
| 1253 | /* 2315 */ /*GILLT_v2s16*//*Label 129*/ GIMT_Encode4(2550), |
| 1254 | /* 2319 */ /*GILLT_v2s64*//*Label 130*/ GIMT_Encode4(2582), |
| 1255 | /* 2323 */ /*GILLT_v4s8*//*Label 131*/ GIMT_Encode4(2675), |
| 1256 | /* 2327 */ /*GILLT_v4s32*//*Label 132*/ GIMT_Encode4(2707), |
| 1257 | /* 2331 */ /*GILLT_v8s16*//*Label 133*/ GIMT_Encode4(2800), |
| 1258 | /* 2335 */ /*GILLT_v16s8*//*Label 134*/ GIMT_Encode4(2893), |
| 1259 | /* 2339 */ // Label 127: @2339 |
| 1260 | /* 2339 */ GIM_Try, /*On fail goto*//*Label 136*/ GIMT_Encode4(2515), |
| 1261 | /* 2344 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 1262 | /* 2347 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 1263 | /* 2350 */ GIM_Try, /*On fail goto*//*Label 137*/ GIMT_Encode4(2379), // Rule ID 1953 // |
| 1264 | /* 2355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 1265 | /* 2358 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1266 | /* 2362 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/1, 0, |
| 1267 | /* 2366 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1268 | /* 2370 */ // (sub:{ *:[i32] } 0:{ *:[i32] }, CPU16Regs:{ *:[i32] }:$r) => (NegRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r) |
| 1269 | /* 2370 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NegRxRy16), |
| 1270 | /* 2373 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 1271 | /* 2375 */ GIR_RootToRootCopy, /*OpIdx*/2, // r |
| 1272 | /* 2377 */ GIR_RootConstrainSelectedInstOperands, |
| 1273 | /* 2378 */ // GIR_Coverage, 1953, |
| 1274 | /* 2378 */ GIR_EraseRootFromParent_Done, |
| 1275 | /* 2379 */ // Label 137: @2379 |
| 1276 | /* 2379 */ GIM_Try, /*On fail goto*//*Label 138*/ GIMT_Encode4(2406), // Rule ID 1285 // |
| 1277 | /* 2384 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 1278 | /* 2387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 1279 | /* 2391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 1280 | /* 2395 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 1281 | /* 2399 */ // (sub:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) => (SUBU16_MMR6:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) |
| 1282 | /* 2399 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBU16_MMR6), |
| 1283 | /* 2404 */ GIR_RootConstrainSelectedInstOperands, |
| 1284 | /* 2405 */ // GIR_Coverage, 1285, |
| 1285 | /* 2405 */ GIR_Done, |
| 1286 | /* 2406 */ // Label 138: @2406 |
| 1287 | /* 2406 */ GIM_Try, /*On fail goto*//*Label 139*/ GIMT_Encode4(2433), // Rule ID 47 // |
| 1288 | /* 2411 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 1289 | /* 2414 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1290 | /* 2418 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1291 | /* 2422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1292 | /* 2426 */ // (sub:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBu:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1293 | /* 2426 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBu), |
| 1294 | /* 2431 */ GIR_RootConstrainSelectedInstOperands, |
| 1295 | /* 2432 */ // GIR_Coverage, 47, |
| 1296 | /* 2432 */ GIR_Done, |
| 1297 | /* 2433 */ // Label 139: @2433 |
| 1298 | /* 2433 */ GIM_Try, /*On fail goto*//*Label 140*/ GIMT_Encode4(2460), // Rule ID 1139 // |
| 1299 | /* 2438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 1300 | /* 2441 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 1301 | /* 2445 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 1302 | /* 2449 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 1303 | /* 2453 */ // (sub:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) => (SUBU16_MM:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) |
| 1304 | /* 2453 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBU16_MM), |
| 1305 | /* 2458 */ GIR_RootConstrainSelectedInstOperands, |
| 1306 | /* 2459 */ // GIR_Coverage, 1139, |
| 1307 | /* 2459 */ GIR_Done, |
| 1308 | /* 2460 */ // Label 140: @2460 |
| 1309 | /* 2460 */ GIM_Try, /*On fail goto*//*Label 141*/ GIMT_Encode4(2487), // Rule ID 1148 // |
| 1310 | /* 2465 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 1311 | /* 2468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1312 | /* 2472 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1313 | /* 2476 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1314 | /* 2480 */ // (sub:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBu_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1315 | /* 2480 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBu_MM), |
| 1316 | /* 2485 */ GIR_RootConstrainSelectedInstOperands, |
| 1317 | /* 2486 */ // GIR_Coverage, 1148, |
| 1318 | /* 2486 */ GIR_Done, |
| 1319 | /* 2487 */ // Label 141: @2487 |
| 1320 | /* 2487 */ GIM_Try, /*On fail goto*//*Label 142*/ GIMT_Encode4(2514), // Rule ID 1958 // |
| 1321 | /* 2492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 1322 | /* 2495 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1323 | /* 2499 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1324 | /* 2503 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1325 | /* 2507 */ // (sub:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) => (SubuRxRyRz16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) |
| 1326 | /* 2507 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SubuRxRyRz16), |
| 1327 | /* 2512 */ GIR_RootConstrainSelectedInstOperands, |
| 1328 | /* 2513 */ // GIR_Coverage, 1958, |
| 1329 | /* 2513 */ GIR_Done, |
| 1330 | /* 2514 */ // Label 142: @2514 |
| 1331 | /* 2514 */ GIM_Reject, |
| 1332 | /* 2515 */ // Label 136: @2515 |
| 1333 | /* 2515 */ GIM_Reject, |
| 1334 | /* 2516 */ // Label 128: @2516 |
| 1335 | /* 2516 */ GIM_Try, /*On fail goto*//*Label 143*/ GIMT_Encode4(2549), // Rule ID 278 // |
| 1336 | /* 2521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 1337 | /* 2524 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 1338 | /* 2527 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 1339 | /* 2530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1340 | /* 2534 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1341 | /* 2538 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1342 | /* 2542 */ // (sub:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DSUBu:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 1343 | /* 2542 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DSUBu), |
| 1344 | /* 2547 */ GIR_RootConstrainSelectedInstOperands, |
| 1345 | /* 2548 */ // GIR_Coverage, 278, |
| 1346 | /* 2548 */ GIR_Done, |
| 1347 | /* 2549 */ // Label 143: @2549 |
| 1348 | /* 2549 */ GIM_Reject, |
| 1349 | /* 2550 */ // Label 129: @2550 |
| 1350 | /* 2550 */ GIM_Try, /*On fail goto*//*Label 144*/ GIMT_Encode4(2581), // Rule ID 2055 // |
| 1351 | /* 2555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 1352 | /* 2558 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 1353 | /* 2561 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 1354 | /* 2564 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 1355 | /* 2568 */ // (sub:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) => (SUBQ_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) |
| 1356 | /* 2568 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBQ_PH), |
| 1357 | /* 2573 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::DSPOutFlag20), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1358 | /* 2579 */ GIR_RootConstrainSelectedInstOperands, |
| 1359 | /* 2580 */ // GIR_Coverage, 2055, |
| 1360 | /* 2580 */ GIR_Done, |
| 1361 | /* 2581 */ // Label 144: @2581 |
| 1362 | /* 2581 */ GIM_Reject, |
| 1363 | /* 2582 */ // Label 130: @2582 |
| 1364 | /* 2582 */ GIM_Try, /*On fail goto*//*Label 145*/ GIMT_Encode4(2674), |
| 1365 | /* 2587 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1366 | /* 2590 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1367 | /* 2593 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1368 | /* 2597 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1369 | /* 2601 */ GIM_Try, /*On fail goto*//*Label 146*/ GIMT_Encode4(2654), // Rule ID 974 // |
| 1370 | /* 2606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1371 | /* 2609 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1372 | /* 2613 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1373 | /* 2617 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1374 | /* 2621 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1375 | /* 2625 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1376 | /* 2630 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1377 | /* 2635 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1378 | /* 2637 */ // (sub:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, (mul:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt)) => (MSUBV_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1379 | /* 2637 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUBV_D), |
| 1380 | /* 2640 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1381 | /* 2642 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1382 | /* 2644 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1383 | /* 2648 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1384 | /* 2652 */ GIR_RootConstrainSelectedInstOperands, |
| 1385 | /* 2653 */ // GIR_Coverage, 974, |
| 1386 | /* 2653 */ GIR_EraseRootFromParent_Done, |
| 1387 | /* 2654 */ // Label 146: @2654 |
| 1388 | /* 2654 */ GIM_Try, /*On fail goto*//*Label 147*/ GIMT_Encode4(2673), // Rule ID 1103 // |
| 1389 | /* 2659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1390 | /* 2662 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1391 | /* 2666 */ // (sub:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SUBV_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1392 | /* 2666 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBV_D), |
| 1393 | /* 2671 */ GIR_RootConstrainSelectedInstOperands, |
| 1394 | /* 2672 */ // GIR_Coverage, 1103, |
| 1395 | /* 2672 */ GIR_Done, |
| 1396 | /* 2673 */ // Label 147: @2673 |
| 1397 | /* 2673 */ GIM_Reject, |
| 1398 | /* 2674 */ // Label 145: @2674 |
| 1399 | /* 2674 */ GIM_Reject, |
| 1400 | /* 2675 */ // Label 131: @2675 |
| 1401 | /* 2675 */ GIM_Try, /*On fail goto*//*Label 148*/ GIMT_Encode4(2706), // Rule ID 2061 // |
| 1402 | /* 2680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 1403 | /* 2683 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 1404 | /* 2686 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 1405 | /* 2689 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 1406 | /* 2693 */ // (sub:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) => (SUBU_QB:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) |
| 1407 | /* 2693 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBU_QB), |
| 1408 | /* 2698 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::DSPOutFlag20), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1409 | /* 2704 */ GIR_RootConstrainSelectedInstOperands, |
| 1410 | /* 2705 */ // GIR_Coverage, 2061, |
| 1411 | /* 2705 */ GIR_Done, |
| 1412 | /* 2706 */ // Label 148: @2706 |
| 1413 | /* 2706 */ GIM_Reject, |
| 1414 | /* 2707 */ // Label 132: @2707 |
| 1415 | /* 2707 */ GIM_Try, /*On fail goto*//*Label 149*/ GIMT_Encode4(2799), |
| 1416 | /* 2712 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1417 | /* 2715 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1418 | /* 2718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1419 | /* 2722 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1420 | /* 2726 */ GIM_Try, /*On fail goto*//*Label 150*/ GIMT_Encode4(2779), // Rule ID 973 // |
| 1421 | /* 2731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1422 | /* 2734 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1423 | /* 2738 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1424 | /* 2742 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1425 | /* 2746 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1426 | /* 2750 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1427 | /* 2755 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1428 | /* 2760 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1429 | /* 2762 */ // (sub:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, (mul:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt)) => (MSUBV_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1430 | /* 2762 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUBV_W), |
| 1431 | /* 2765 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1432 | /* 2767 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1433 | /* 2769 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1434 | /* 2773 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1435 | /* 2777 */ GIR_RootConstrainSelectedInstOperands, |
| 1436 | /* 2778 */ // GIR_Coverage, 973, |
| 1437 | /* 2778 */ GIR_EraseRootFromParent_Done, |
| 1438 | /* 2779 */ // Label 150: @2779 |
| 1439 | /* 2779 */ GIM_Try, /*On fail goto*//*Label 151*/ GIMT_Encode4(2798), // Rule ID 1102 // |
| 1440 | /* 2784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1441 | /* 2787 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1442 | /* 2791 */ // (sub:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SUBV_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1443 | /* 2791 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBV_W), |
| 1444 | /* 2796 */ GIR_RootConstrainSelectedInstOperands, |
| 1445 | /* 2797 */ // GIR_Coverage, 1102, |
| 1446 | /* 2797 */ GIR_Done, |
| 1447 | /* 2798 */ // Label 151: @2798 |
| 1448 | /* 2798 */ GIM_Reject, |
| 1449 | /* 2799 */ // Label 149: @2799 |
| 1450 | /* 2799 */ GIM_Reject, |
| 1451 | /* 2800 */ // Label 133: @2800 |
| 1452 | /* 2800 */ GIM_Try, /*On fail goto*//*Label 152*/ GIMT_Encode4(2892), |
| 1453 | /* 2805 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1454 | /* 2808 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1455 | /* 2811 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1456 | /* 2815 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1457 | /* 2819 */ GIM_Try, /*On fail goto*//*Label 153*/ GIMT_Encode4(2872), // Rule ID 972 // |
| 1458 | /* 2824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1459 | /* 2827 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1460 | /* 2831 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1461 | /* 2835 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1462 | /* 2839 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1463 | /* 2843 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1464 | /* 2848 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1465 | /* 2853 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1466 | /* 2855 */ // (sub:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, (mul:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt)) => (MSUBV_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1467 | /* 2855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUBV_H), |
| 1468 | /* 2858 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1469 | /* 2860 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1470 | /* 2862 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1471 | /* 2866 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1472 | /* 2870 */ GIR_RootConstrainSelectedInstOperands, |
| 1473 | /* 2871 */ // GIR_Coverage, 972, |
| 1474 | /* 2871 */ GIR_EraseRootFromParent_Done, |
| 1475 | /* 2872 */ // Label 153: @2872 |
| 1476 | /* 2872 */ GIM_Try, /*On fail goto*//*Label 154*/ GIMT_Encode4(2891), // Rule ID 1101 // |
| 1477 | /* 2877 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1478 | /* 2880 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1479 | /* 2884 */ // (sub:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SUBV_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1480 | /* 2884 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBV_H), |
| 1481 | /* 2889 */ GIR_RootConstrainSelectedInstOperands, |
| 1482 | /* 2890 */ // GIR_Coverage, 1101, |
| 1483 | /* 2890 */ GIR_Done, |
| 1484 | /* 2891 */ // Label 154: @2891 |
| 1485 | /* 2891 */ GIM_Reject, |
| 1486 | /* 2892 */ // Label 152: @2892 |
| 1487 | /* 2892 */ GIM_Reject, |
| 1488 | /* 2893 */ // Label 134: @2893 |
| 1489 | /* 2893 */ GIM_Try, /*On fail goto*//*Label 155*/ GIMT_Encode4(2985), |
| 1490 | /* 2898 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1491 | /* 2901 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1492 | /* 2904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1493 | /* 2908 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1494 | /* 2912 */ GIM_Try, /*On fail goto*//*Label 156*/ GIMT_Encode4(2965), // Rule ID 971 // |
| 1495 | /* 2917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1496 | /* 2920 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 1497 | /* 2924 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 1498 | /* 2928 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1499 | /* 2932 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1500 | /* 2936 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1501 | /* 2941 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1502 | /* 2946 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 1503 | /* 2948 */ // (sub:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, (mul:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt)) => (MSUBV_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1504 | /* 2948 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUBV_B), |
| 1505 | /* 2951 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 1506 | /* 2953 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 1507 | /* 2955 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 1508 | /* 2959 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 1509 | /* 2963 */ GIR_RootConstrainSelectedInstOperands, |
| 1510 | /* 2964 */ // GIR_Coverage, 971, |
| 1511 | /* 2964 */ GIR_EraseRootFromParent_Done, |
| 1512 | /* 2965 */ // Label 156: @2965 |
| 1513 | /* 2965 */ GIM_Try, /*On fail goto*//*Label 157*/ GIMT_Encode4(2984), // Rule ID 1100 // |
| 1514 | /* 2970 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1515 | /* 2973 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1516 | /* 2977 */ // (sub:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SUBV_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1517 | /* 2977 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SUBV_B), |
| 1518 | /* 2982 */ GIR_RootConstrainSelectedInstOperands, |
| 1519 | /* 2983 */ // GIR_Coverage, 1100, |
| 1520 | /* 2983 */ GIR_Done, |
| 1521 | /* 2984 */ // Label 157: @2984 |
| 1522 | /* 2984 */ GIM_Reject, |
| 1523 | /* 2985 */ // Label 155: @2985 |
| 1524 | /* 2985 */ GIM_Reject, |
| 1525 | /* 2986 */ // Label 135: @2986 |
| 1526 | /* 2986 */ GIM_Reject, |
| 1527 | /* 2987 */ // Label 2: @2987 |
| 1528 | /* 2987 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 165*/ GIMT_Encode4(3467), |
| 1529 | /* 2998 */ /*GILLT_s32*//*Label 158*/ GIMT_Encode4(3030), |
| 1530 | /* 3002 */ /*GILLT_s64*//*Label 159*/ GIMT_Encode4(3214), |
| 1531 | /* 3006 */ /*GILLT_v2s16*//*Label 160*/ GIMT_Encode4(3299), |
| 1532 | /* 3010 */ /*GILLT_v2s64*//*Label 161*/ GIMT_Encode4(3331), GIMT_Encode4(0), |
| 1533 | /* 3018 */ /*GILLT_v4s32*//*Label 162*/ GIMT_Encode4(3365), |
| 1534 | /* 3022 */ /*GILLT_v8s16*//*Label 163*/ GIMT_Encode4(3399), |
| 1535 | /* 3026 */ /*GILLT_v16s8*//*Label 164*/ GIMT_Encode4(3433), |
| 1536 | /* 3030 */ // Label 158: @3030 |
| 1537 | /* 3030 */ GIM_Try, /*On fail goto*//*Label 166*/ GIMT_Encode4(3213), |
| 1538 | /* 3035 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 1539 | /* 3038 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 1540 | /* 3041 */ GIM_Try, /*On fail goto*//*Label 167*/ GIMT_Encode4(3080), // Rule ID 48 // |
| 1541 | /* 3046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 1542 | /* 3049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1543 | /* 3053 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1544 | /* 3057 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1545 | /* 3061 */ // (mul:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUL:{ *:[i32] }:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1546 | /* 3061 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUL), |
| 1547 | /* 3066 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::HI0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1548 | /* 3072 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::LO0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1549 | /* 3078 */ GIR_RootConstrainSelectedInstOperands, |
| 1550 | /* 3079 */ // GIR_Coverage, 48, |
| 1551 | /* 3079 */ GIR_Done, |
| 1552 | /* 3080 */ // Label 167: @3080 |
| 1553 | /* 3080 */ GIM_Try, /*On fail goto*//*Label 168*/ GIMT_Encode4(3107), // Rule ID 407 // |
| 1554 | /* 3085 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 1555 | /* 3088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1556 | /* 3092 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1557 | /* 3096 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1558 | /* 3100 */ // (mul:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUL_R6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1559 | /* 3100 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUL_R6), |
| 1560 | /* 3105 */ GIR_RootConstrainSelectedInstOperands, |
| 1561 | /* 3106 */ // GIR_Coverage, 407, |
| 1562 | /* 3106 */ GIR_Done, |
| 1563 | /* 3107 */ // Label 168: @3107 |
| 1564 | /* 3107 */ GIM_Try, /*On fail goto*//*Label 169*/ GIMT_Encode4(3146), // Rule ID 1149 // |
| 1565 | /* 3112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 1566 | /* 3115 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1567 | /* 3119 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1568 | /* 3123 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1569 | /* 3127 */ // (mul:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUL_MM:{ *:[i32] }:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1570 | /* 3127 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUL_MM), |
| 1571 | /* 3132 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::HI0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1572 | /* 3138 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::LO0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1573 | /* 3144 */ GIR_RootConstrainSelectedInstOperands, |
| 1574 | /* 3145 */ // GIR_Coverage, 1149, |
| 1575 | /* 3145 */ GIR_Done, |
| 1576 | /* 3146 */ // Label 169: @3146 |
| 1577 | /* 3146 */ GIM_Try, /*On fail goto*//*Label 170*/ GIMT_Encode4(3173), // Rule ID 1254 // |
| 1578 | /* 3151 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 1579 | /* 3154 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1580 | /* 3158 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1581 | /* 3162 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1582 | /* 3166 */ // (mul:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUL_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1583 | /* 3166 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUL_MMR6), |
| 1584 | /* 3171 */ GIR_RootConstrainSelectedInstOperands, |
| 1585 | /* 3172 */ // GIR_Coverage, 1254, |
| 1586 | /* 3172 */ GIR_Done, |
| 1587 | /* 3173 */ // Label 170: @3173 |
| 1588 | /* 3173 */ GIM_Try, /*On fail goto*//*Label 171*/ GIMT_Encode4(3212), // Rule ID 1956 // |
| 1589 | /* 3178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 1590 | /* 3181 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1591 | /* 3185 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1592 | /* 3189 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 1593 | /* 3193 */ // (mul:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) => (MultRxRyRz16:{ *:[i32] }:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) |
| 1594 | /* 3193 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MultRxRyRz16), |
| 1595 | /* 3198 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::HI0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1596 | /* 3204 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::LO0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1597 | /* 3210 */ GIR_RootConstrainSelectedInstOperands, |
| 1598 | /* 3211 */ // GIR_Coverage, 1956, |
| 1599 | /* 3211 */ GIR_Done, |
| 1600 | /* 3212 */ // Label 171: @3212 |
| 1601 | /* 3212 */ GIM_Reject, |
| 1602 | /* 3213 */ // Label 166: @3213 |
| 1603 | /* 3213 */ GIM_Reject, |
| 1604 | /* 3214 */ // Label 159: @3214 |
| 1605 | /* 3214 */ GIM_Try, /*On fail goto*//*Label 172*/ GIMT_Encode4(3298), |
| 1606 | /* 3219 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 1607 | /* 3222 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 1608 | /* 3225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1609 | /* 3229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1610 | /* 3233 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1611 | /* 3237 */ GIM_Try, /*On fail goto*//*Label 173*/ GIMT_Encode4(3282), // Rule ID 349 // |
| 1612 | /* 3242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 1613 | /* 3245 */ // (mul:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DMUL:{ *:[i64] }:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 1614 | /* 3245 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMUL), |
| 1615 | /* 3250 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::HI0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1616 | /* 3256 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::LO0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1617 | /* 3262 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::P0), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1618 | /* 3268 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::P1), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1619 | /* 3274 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::P2), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1620 | /* 3280 */ GIR_RootConstrainSelectedInstOperands, |
| 1621 | /* 3281 */ // GIR_Coverage, 349, |
| 1622 | /* 3281 */ GIR_Done, |
| 1623 | /* 3282 */ // Label 173: @3282 |
| 1624 | /* 3282 */ GIM_Try, /*On fail goto*//*Label 174*/ GIMT_Encode4(3297), // Rule ID 422 // |
| 1625 | /* 3287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 1626 | /* 3290 */ // (mul:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DMUL_R6:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 1627 | /* 3290 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMUL_R6), |
| 1628 | /* 3295 */ GIR_RootConstrainSelectedInstOperands, |
| 1629 | /* 3296 */ // GIR_Coverage, 422, |
| 1630 | /* 3296 */ GIR_Done, |
| 1631 | /* 3297 */ // Label 174: @3297 |
| 1632 | /* 3297 */ GIM_Reject, |
| 1633 | /* 3298 */ // Label 172: @3298 |
| 1634 | /* 3298 */ GIM_Reject, |
| 1635 | /* 3299 */ // Label 160: @3299 |
| 1636 | /* 3299 */ GIM_Try, /*On fail goto*//*Label 175*/ GIMT_Encode4(3330), // Rule ID 2057 // |
| 1637 | /* 3304 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 1638 | /* 3307 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 1639 | /* 3310 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 1640 | /* 3313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 1641 | /* 3317 */ // (mul:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) => (MUL_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) |
| 1642 | /* 3317 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUL_PH), |
| 1643 | /* 3322 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::DSPOutFlag21), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 1644 | /* 3328 */ GIR_RootConstrainSelectedInstOperands, |
| 1645 | /* 3329 */ // GIR_Coverage, 2057, |
| 1646 | /* 3329 */ GIR_Done, |
| 1647 | /* 3330 */ // Label 175: @3330 |
| 1648 | /* 3330 */ GIM_Reject, |
| 1649 | /* 3331 */ // Label 161: @3331 |
| 1650 | /* 3331 */ GIM_Try, /*On fail goto*//*Label 176*/ GIMT_Encode4(3364), // Rule ID 982 // |
| 1651 | /* 3336 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1652 | /* 3339 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1653 | /* 3342 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1654 | /* 3345 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1655 | /* 3349 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1656 | /* 3353 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1657 | /* 3357 */ // (mul:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MULV_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1658 | /* 3357 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MULV_D), |
| 1659 | /* 3362 */ GIR_RootConstrainSelectedInstOperands, |
| 1660 | /* 3363 */ // GIR_Coverage, 982, |
| 1661 | /* 3363 */ GIR_Done, |
| 1662 | /* 3364 */ // Label 176: @3364 |
| 1663 | /* 3364 */ GIM_Reject, |
| 1664 | /* 3365 */ // Label 162: @3365 |
| 1665 | /* 3365 */ GIM_Try, /*On fail goto*//*Label 177*/ GIMT_Encode4(3398), // Rule ID 981 // |
| 1666 | /* 3370 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1667 | /* 3373 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1668 | /* 3376 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1669 | /* 3379 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1670 | /* 3383 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1671 | /* 3387 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1672 | /* 3391 */ // (mul:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MULV_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1673 | /* 3391 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MULV_W), |
| 1674 | /* 3396 */ GIR_RootConstrainSelectedInstOperands, |
| 1675 | /* 3397 */ // GIR_Coverage, 981, |
| 1676 | /* 3397 */ GIR_Done, |
| 1677 | /* 3398 */ // Label 177: @3398 |
| 1678 | /* 3398 */ GIM_Reject, |
| 1679 | /* 3399 */ // Label 163: @3399 |
| 1680 | /* 3399 */ GIM_Try, /*On fail goto*//*Label 178*/ GIMT_Encode4(3432), // Rule ID 980 // |
| 1681 | /* 3404 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1682 | /* 3407 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1683 | /* 3410 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1684 | /* 3413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1685 | /* 3417 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1686 | /* 3421 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1687 | /* 3425 */ // (mul:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MULV_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1688 | /* 3425 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MULV_H), |
| 1689 | /* 3430 */ GIR_RootConstrainSelectedInstOperands, |
| 1690 | /* 3431 */ // GIR_Coverage, 980, |
| 1691 | /* 3431 */ GIR_Done, |
| 1692 | /* 3432 */ // Label 178: @3432 |
| 1693 | /* 3432 */ GIM_Reject, |
| 1694 | /* 3433 */ // Label 164: @3433 |
| 1695 | /* 3433 */ GIM_Try, /*On fail goto*//*Label 179*/ GIMT_Encode4(3466), // Rule ID 979 // |
| 1696 | /* 3438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1697 | /* 3441 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1698 | /* 3444 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1699 | /* 3447 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1700 | /* 3451 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1701 | /* 3455 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1702 | /* 3459 */ // (mul:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MULV_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1703 | /* 3459 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MULV_B), |
| 1704 | /* 3464 */ GIR_RootConstrainSelectedInstOperands, |
| 1705 | /* 3465 */ // GIR_Coverage, 979, |
| 1706 | /* 3465 */ GIR_Done, |
| 1707 | /* 3466 */ // Label 179: @3466 |
| 1708 | /* 3466 */ GIM_Reject, |
| 1709 | /* 3467 */ // Label 165: @3467 |
| 1710 | /* 3467 */ GIM_Reject, |
| 1711 | /* 3468 */ // Label 3: @3468 |
| 1712 | /* 3468 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 186*/ GIMT_Encode4(3736), |
| 1713 | /* 3479 */ /*GILLT_s32*//*Label 180*/ GIMT_Encode4(3511), |
| 1714 | /* 3483 */ /*GILLT_s64*//*Label 181*/ GIMT_Encode4(3566), GIMT_Encode4(0), |
| 1715 | /* 3491 */ /*GILLT_v2s64*//*Label 182*/ GIMT_Encode4(3600), GIMT_Encode4(0), |
| 1716 | /* 3499 */ /*GILLT_v4s32*//*Label 183*/ GIMT_Encode4(3634), |
| 1717 | /* 3503 */ /*GILLT_v8s16*//*Label 184*/ GIMT_Encode4(3668), |
| 1718 | /* 3507 */ /*GILLT_v16s8*//*Label 185*/ GIMT_Encode4(3702), |
| 1719 | /* 3511 */ // Label 180: @3511 |
| 1720 | /* 3511 */ GIM_Try, /*On fail goto*//*Label 187*/ GIMT_Encode4(3565), |
| 1721 | /* 3516 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 1722 | /* 3519 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 1723 | /* 3522 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1724 | /* 3526 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1725 | /* 3530 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1726 | /* 3534 */ GIM_Try, /*On fail goto*//*Label 188*/ GIMT_Encode4(3549), // Rule ID 401 // |
| 1727 | /* 3539 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 1728 | /* 3542 */ // (sdiv:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (DIV:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1729 | /* 3542 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV), |
| 1730 | /* 3547 */ GIR_RootConstrainSelectedInstOperands, |
| 1731 | /* 3548 */ // GIR_Coverage, 401, |
| 1732 | /* 3548 */ GIR_Done, |
| 1733 | /* 3549 */ // Label 188: @3549 |
| 1734 | /* 3549 */ GIM_Try, /*On fail goto*//*Label 189*/ GIMT_Encode4(3564), // Rule ID 1247 // |
| 1735 | /* 3554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 1736 | /* 3557 */ // (sdiv:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (DIV_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1737 | /* 3557 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_MMR6), |
| 1738 | /* 3562 */ GIR_RootConstrainSelectedInstOperands, |
| 1739 | /* 3563 */ // GIR_Coverage, 1247, |
| 1740 | /* 3563 */ GIR_Done, |
| 1741 | /* 3564 */ // Label 189: @3564 |
| 1742 | /* 3564 */ GIM_Reject, |
| 1743 | /* 3565 */ // Label 187: @3565 |
| 1744 | /* 3565 */ GIM_Reject, |
| 1745 | /* 3566 */ // Label 181: @3566 |
| 1746 | /* 3566 */ GIM_Try, /*On fail goto*//*Label 190*/ GIMT_Encode4(3599), // Rule ID 416 // |
| 1747 | /* 3571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 1748 | /* 3574 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 1749 | /* 3577 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 1750 | /* 3580 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1751 | /* 3584 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1752 | /* 3588 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1753 | /* 3592 */ // (sdiv:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DDIV:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 1754 | /* 3592 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DDIV), |
| 1755 | /* 3597 */ GIR_RootConstrainSelectedInstOperands, |
| 1756 | /* 3598 */ // GIR_Coverage, 416, |
| 1757 | /* 3598 */ GIR_Done, |
| 1758 | /* 3599 */ // Label 190: @3599 |
| 1759 | /* 3599 */ GIM_Reject, |
| 1760 | /* 3600 */ // Label 182: @3600 |
| 1761 | /* 3600 */ GIM_Try, /*On fail goto*//*Label 191*/ GIMT_Encode4(3633), // Rule ID 722 // |
| 1762 | /* 3605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1763 | /* 3608 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1764 | /* 3611 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1765 | /* 3614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1766 | /* 3618 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1767 | /* 3622 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1768 | /* 3626 */ // (sdiv:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (DIV_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1769 | /* 3626 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_S_D), |
| 1770 | /* 3631 */ GIR_RootConstrainSelectedInstOperands, |
| 1771 | /* 3632 */ // GIR_Coverage, 722, |
| 1772 | /* 3632 */ GIR_Done, |
| 1773 | /* 3633 */ // Label 191: @3633 |
| 1774 | /* 3633 */ GIM_Reject, |
| 1775 | /* 3634 */ // Label 183: @3634 |
| 1776 | /* 3634 */ GIM_Try, /*On fail goto*//*Label 192*/ GIMT_Encode4(3667), // Rule ID 721 // |
| 1777 | /* 3639 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1778 | /* 3642 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1779 | /* 3645 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1780 | /* 3648 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1781 | /* 3652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1782 | /* 3656 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1783 | /* 3660 */ // (sdiv:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DIV_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1784 | /* 3660 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_S_W), |
| 1785 | /* 3665 */ GIR_RootConstrainSelectedInstOperands, |
| 1786 | /* 3666 */ // GIR_Coverage, 721, |
| 1787 | /* 3666 */ GIR_Done, |
| 1788 | /* 3667 */ // Label 192: @3667 |
| 1789 | /* 3667 */ GIM_Reject, |
| 1790 | /* 3668 */ // Label 184: @3668 |
| 1791 | /* 3668 */ GIM_Try, /*On fail goto*//*Label 193*/ GIMT_Encode4(3701), // Rule ID 720 // |
| 1792 | /* 3673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1793 | /* 3676 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1794 | /* 3679 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1795 | /* 3682 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1796 | /* 3686 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1797 | /* 3690 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1798 | /* 3694 */ // (sdiv:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DIV_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1799 | /* 3694 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_S_H), |
| 1800 | /* 3699 */ GIR_RootConstrainSelectedInstOperands, |
| 1801 | /* 3700 */ // GIR_Coverage, 720, |
| 1802 | /* 3700 */ GIR_Done, |
| 1803 | /* 3701 */ // Label 193: @3701 |
| 1804 | /* 3701 */ GIM_Reject, |
| 1805 | /* 3702 */ // Label 185: @3702 |
| 1806 | /* 3702 */ GIM_Try, /*On fail goto*//*Label 194*/ GIMT_Encode4(3735), // Rule ID 719 // |
| 1807 | /* 3707 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1808 | /* 3710 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1809 | /* 3713 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1810 | /* 3716 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1811 | /* 3720 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1812 | /* 3724 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1813 | /* 3728 */ // (sdiv:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DIV_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1814 | /* 3728 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_S_B), |
| 1815 | /* 3733 */ GIR_RootConstrainSelectedInstOperands, |
| 1816 | /* 3734 */ // GIR_Coverage, 719, |
| 1817 | /* 3734 */ GIR_Done, |
| 1818 | /* 3735 */ // Label 194: @3735 |
| 1819 | /* 3735 */ GIM_Reject, |
| 1820 | /* 3736 */ // Label 186: @3736 |
| 1821 | /* 3736 */ GIM_Reject, |
| 1822 | /* 3737 */ // Label 4: @3737 |
| 1823 | /* 3737 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 201*/ GIMT_Encode4(4005), |
| 1824 | /* 3748 */ /*GILLT_s32*//*Label 195*/ GIMT_Encode4(3780), |
| 1825 | /* 3752 */ /*GILLT_s64*//*Label 196*/ GIMT_Encode4(3835), GIMT_Encode4(0), |
| 1826 | /* 3760 */ /*GILLT_v2s64*//*Label 197*/ GIMT_Encode4(3869), GIMT_Encode4(0), |
| 1827 | /* 3768 */ /*GILLT_v4s32*//*Label 198*/ GIMT_Encode4(3903), |
| 1828 | /* 3772 */ /*GILLT_v8s16*//*Label 199*/ GIMT_Encode4(3937), |
| 1829 | /* 3776 */ /*GILLT_v16s8*//*Label 200*/ GIMT_Encode4(3971), |
| 1830 | /* 3780 */ // Label 195: @3780 |
| 1831 | /* 3780 */ GIM_Try, /*On fail goto*//*Label 202*/ GIMT_Encode4(3834), |
| 1832 | /* 3785 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 1833 | /* 3788 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 1834 | /* 3791 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1835 | /* 3795 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1836 | /* 3799 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1837 | /* 3803 */ GIM_Try, /*On fail goto*//*Label 203*/ GIMT_Encode4(3818), // Rule ID 402 // |
| 1838 | /* 3808 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 1839 | /* 3811 */ // (udiv:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (DIVU:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1840 | /* 3811 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIVU), |
| 1841 | /* 3816 */ GIR_RootConstrainSelectedInstOperands, |
| 1842 | /* 3817 */ // GIR_Coverage, 402, |
| 1843 | /* 3817 */ GIR_Done, |
| 1844 | /* 3818 */ // Label 203: @3818 |
| 1845 | /* 3818 */ GIM_Try, /*On fail goto*//*Label 204*/ GIMT_Encode4(3833), // Rule ID 1248 // |
| 1846 | /* 3823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 1847 | /* 3826 */ // (udiv:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (DIVU_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1848 | /* 3826 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIVU_MMR6), |
| 1849 | /* 3831 */ GIR_RootConstrainSelectedInstOperands, |
| 1850 | /* 3832 */ // GIR_Coverage, 1248, |
| 1851 | /* 3832 */ GIR_Done, |
| 1852 | /* 3833 */ // Label 204: @3833 |
| 1853 | /* 3833 */ GIM_Reject, |
| 1854 | /* 3834 */ // Label 202: @3834 |
| 1855 | /* 3834 */ GIM_Reject, |
| 1856 | /* 3835 */ // Label 196: @3835 |
| 1857 | /* 3835 */ GIM_Try, /*On fail goto*//*Label 205*/ GIMT_Encode4(3868), // Rule ID 417 // |
| 1858 | /* 3840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 1859 | /* 3843 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 1860 | /* 3846 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 1861 | /* 3849 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1862 | /* 3853 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1863 | /* 3857 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1864 | /* 3861 */ // (udiv:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DDIVU:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 1865 | /* 3861 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DDIVU), |
| 1866 | /* 3866 */ GIR_RootConstrainSelectedInstOperands, |
| 1867 | /* 3867 */ // GIR_Coverage, 417, |
| 1868 | /* 3867 */ GIR_Done, |
| 1869 | /* 3868 */ // Label 205: @3868 |
| 1870 | /* 3868 */ GIM_Reject, |
| 1871 | /* 3869 */ // Label 197: @3869 |
| 1872 | /* 3869 */ GIM_Try, /*On fail goto*//*Label 206*/ GIMT_Encode4(3902), // Rule ID 726 // |
| 1873 | /* 3874 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1874 | /* 3877 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1875 | /* 3880 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1876 | /* 3883 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1877 | /* 3887 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1878 | /* 3891 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1879 | /* 3895 */ // (udiv:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (DIV_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1880 | /* 3895 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_U_D), |
| 1881 | /* 3900 */ GIR_RootConstrainSelectedInstOperands, |
| 1882 | /* 3901 */ // GIR_Coverage, 726, |
| 1883 | /* 3901 */ GIR_Done, |
| 1884 | /* 3902 */ // Label 206: @3902 |
| 1885 | /* 3902 */ GIM_Reject, |
| 1886 | /* 3903 */ // Label 198: @3903 |
| 1887 | /* 3903 */ GIM_Try, /*On fail goto*//*Label 207*/ GIMT_Encode4(3936), // Rule ID 725 // |
| 1888 | /* 3908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1889 | /* 3911 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 1890 | /* 3914 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 1891 | /* 3917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1892 | /* 3921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1893 | /* 3925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 1894 | /* 3929 */ // (udiv:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DIV_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 1895 | /* 3929 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_U_W), |
| 1896 | /* 3934 */ GIR_RootConstrainSelectedInstOperands, |
| 1897 | /* 3935 */ // GIR_Coverage, 725, |
| 1898 | /* 3935 */ GIR_Done, |
| 1899 | /* 3936 */ // Label 207: @3936 |
| 1900 | /* 3936 */ GIM_Reject, |
| 1901 | /* 3937 */ // Label 199: @3937 |
| 1902 | /* 3937 */ GIM_Try, /*On fail goto*//*Label 208*/ GIMT_Encode4(3970), // Rule ID 724 // |
| 1903 | /* 3942 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1904 | /* 3945 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 1905 | /* 3948 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 1906 | /* 3951 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1907 | /* 3955 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1908 | /* 3959 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 1909 | /* 3963 */ // (udiv:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DIV_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 1910 | /* 3963 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_U_H), |
| 1911 | /* 3968 */ GIR_RootConstrainSelectedInstOperands, |
| 1912 | /* 3969 */ // GIR_Coverage, 724, |
| 1913 | /* 3969 */ GIR_Done, |
| 1914 | /* 3970 */ // Label 208: @3970 |
| 1915 | /* 3970 */ GIM_Reject, |
| 1916 | /* 3971 */ // Label 200: @3971 |
| 1917 | /* 3971 */ GIM_Try, /*On fail goto*//*Label 209*/ GIMT_Encode4(4004), // Rule ID 723 // |
| 1918 | /* 3976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1919 | /* 3979 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 1920 | /* 3982 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 1921 | /* 3985 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1922 | /* 3989 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1923 | /* 3993 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 1924 | /* 3997 */ // (udiv:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DIV_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 1925 | /* 3997 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DIV_U_B), |
| 1926 | /* 4002 */ GIR_RootConstrainSelectedInstOperands, |
| 1927 | /* 4003 */ // GIR_Coverage, 723, |
| 1928 | /* 4003 */ GIR_Done, |
| 1929 | /* 4004 */ // Label 209: @4004 |
| 1930 | /* 4004 */ GIM_Reject, |
| 1931 | /* 4005 */ // Label 201: @4005 |
| 1932 | /* 4005 */ GIM_Reject, |
| 1933 | /* 4006 */ // Label 5: @4006 |
| 1934 | /* 4006 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 216*/ GIMT_Encode4(4274), |
| 1935 | /* 4017 */ /*GILLT_s32*//*Label 210*/ GIMT_Encode4(4049), |
| 1936 | /* 4021 */ /*GILLT_s64*//*Label 211*/ GIMT_Encode4(4104), GIMT_Encode4(0), |
| 1937 | /* 4029 */ /*GILLT_v2s64*//*Label 212*/ GIMT_Encode4(4138), GIMT_Encode4(0), |
| 1938 | /* 4037 */ /*GILLT_v4s32*//*Label 213*/ GIMT_Encode4(4172), |
| 1939 | /* 4041 */ /*GILLT_v8s16*//*Label 214*/ GIMT_Encode4(4206), |
| 1940 | /* 4045 */ /*GILLT_v16s8*//*Label 215*/ GIMT_Encode4(4240), |
| 1941 | /* 4049 */ // Label 210: @4049 |
| 1942 | /* 4049 */ GIM_Try, /*On fail goto*//*Label 217*/ GIMT_Encode4(4103), |
| 1943 | /* 4054 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 1944 | /* 4057 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 1945 | /* 4060 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1946 | /* 4064 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1947 | /* 4068 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 1948 | /* 4072 */ GIM_Try, /*On fail goto*//*Label 218*/ GIMT_Encode4(4087), // Rule ID 403 // |
| 1949 | /* 4077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 1950 | /* 4080 */ // (srem:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MOD:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1951 | /* 4080 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD), |
| 1952 | /* 4085 */ GIR_RootConstrainSelectedInstOperands, |
| 1953 | /* 4086 */ // GIR_Coverage, 403, |
| 1954 | /* 4086 */ GIR_Done, |
| 1955 | /* 4087 */ // Label 218: @4087 |
| 1956 | /* 4087 */ GIM_Try, /*On fail goto*//*Label 219*/ GIMT_Encode4(4102), // Rule ID 1252 // |
| 1957 | /* 4092 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 1958 | /* 4095 */ // (srem:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MOD_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 1959 | /* 4095 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_MMR6), |
| 1960 | /* 4100 */ GIR_RootConstrainSelectedInstOperands, |
| 1961 | /* 4101 */ // GIR_Coverage, 1252, |
| 1962 | /* 4101 */ GIR_Done, |
| 1963 | /* 4102 */ // Label 219: @4102 |
| 1964 | /* 4102 */ GIM_Reject, |
| 1965 | /* 4103 */ // Label 217: @4103 |
| 1966 | /* 4103 */ GIM_Reject, |
| 1967 | /* 4104 */ // Label 211: @4104 |
| 1968 | /* 4104 */ GIM_Try, /*On fail goto*//*Label 220*/ GIMT_Encode4(4137), // Rule ID 418 // |
| 1969 | /* 4109 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 1970 | /* 4112 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 1971 | /* 4115 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 1972 | /* 4118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1973 | /* 4122 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1974 | /* 4126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 1975 | /* 4130 */ // (srem:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DMOD:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 1976 | /* 4130 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMOD), |
| 1977 | /* 4135 */ GIR_RootConstrainSelectedInstOperands, |
| 1978 | /* 4136 */ // GIR_Coverage, 418, |
| 1979 | /* 4136 */ GIR_Done, |
| 1980 | /* 4137 */ // Label 220: @4137 |
| 1981 | /* 4137 */ GIM_Reject, |
| 1982 | /* 4138 */ // Label 212: @4138 |
| 1983 | /* 4138 */ GIM_Try, /*On fail goto*//*Label 221*/ GIMT_Encode4(4171), // Rule ID 962 // |
| 1984 | /* 4143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 1985 | /* 4146 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 1986 | /* 4149 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 1987 | /* 4152 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1988 | /* 4156 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1989 | /* 4160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 1990 | /* 4164 */ // (srem:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MOD_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 1991 | /* 4164 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_S_D), |
| 1992 | /* 4169 */ GIR_RootConstrainSelectedInstOperands, |
| 1993 | /* 4170 */ // GIR_Coverage, 962, |
| 1994 | /* 4170 */ GIR_Done, |
| 1995 | /* 4171 */ // Label 221: @4171 |
| 1996 | /* 4171 */ GIM_Reject, |
| 1997 | /* 4172 */ // Label 213: @4172 |
| 1998 | /* 4172 */ GIM_Try, /*On fail goto*//*Label 222*/ GIMT_Encode4(4205), // Rule ID 961 // |
| 1999 | /* 4177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2000 | /* 4180 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2001 | /* 4183 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2002 | /* 4186 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2003 | /* 4190 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2004 | /* 4194 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2005 | /* 4198 */ // (srem:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MOD_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 2006 | /* 4198 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_S_W), |
| 2007 | /* 4203 */ GIR_RootConstrainSelectedInstOperands, |
| 2008 | /* 4204 */ // GIR_Coverage, 961, |
| 2009 | /* 4204 */ GIR_Done, |
| 2010 | /* 4205 */ // Label 222: @4205 |
| 2011 | /* 4205 */ GIM_Reject, |
| 2012 | /* 4206 */ // Label 214: @4206 |
| 2013 | /* 4206 */ GIM_Try, /*On fail goto*//*Label 223*/ GIMT_Encode4(4239), // Rule ID 960 // |
| 2014 | /* 4211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2015 | /* 4214 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2016 | /* 4217 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2017 | /* 4220 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2018 | /* 4224 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2019 | /* 4228 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2020 | /* 4232 */ // (srem:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MOD_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 2021 | /* 4232 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_S_H), |
| 2022 | /* 4237 */ GIR_RootConstrainSelectedInstOperands, |
| 2023 | /* 4238 */ // GIR_Coverage, 960, |
| 2024 | /* 4238 */ GIR_Done, |
| 2025 | /* 4239 */ // Label 223: @4239 |
| 2026 | /* 4239 */ GIM_Reject, |
| 2027 | /* 4240 */ // Label 215: @4240 |
| 2028 | /* 4240 */ GIM_Try, /*On fail goto*//*Label 224*/ GIMT_Encode4(4273), // Rule ID 959 // |
| 2029 | /* 4245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2030 | /* 4248 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 2031 | /* 4251 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 2032 | /* 4254 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2033 | /* 4258 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2034 | /* 4262 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2035 | /* 4266 */ // (srem:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MOD_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 2036 | /* 4266 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_S_B), |
| 2037 | /* 4271 */ GIR_RootConstrainSelectedInstOperands, |
| 2038 | /* 4272 */ // GIR_Coverage, 959, |
| 2039 | /* 4272 */ GIR_Done, |
| 2040 | /* 4273 */ // Label 224: @4273 |
| 2041 | /* 4273 */ GIM_Reject, |
| 2042 | /* 4274 */ // Label 216: @4274 |
| 2043 | /* 4274 */ GIM_Reject, |
| 2044 | /* 4275 */ // Label 6: @4275 |
| 2045 | /* 4275 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 231*/ GIMT_Encode4(4543), |
| 2046 | /* 4286 */ /*GILLT_s32*//*Label 225*/ GIMT_Encode4(4318), |
| 2047 | /* 4290 */ /*GILLT_s64*//*Label 226*/ GIMT_Encode4(4373), GIMT_Encode4(0), |
| 2048 | /* 4298 */ /*GILLT_v2s64*//*Label 227*/ GIMT_Encode4(4407), GIMT_Encode4(0), |
| 2049 | /* 4306 */ /*GILLT_v4s32*//*Label 228*/ GIMT_Encode4(4441), |
| 2050 | /* 4310 */ /*GILLT_v8s16*//*Label 229*/ GIMT_Encode4(4475), |
| 2051 | /* 4314 */ /*GILLT_v16s8*//*Label 230*/ GIMT_Encode4(4509), |
| 2052 | /* 4318 */ // Label 225: @4318 |
| 2053 | /* 4318 */ GIM_Try, /*On fail goto*//*Label 232*/ GIMT_Encode4(4372), |
| 2054 | /* 4323 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 2055 | /* 4326 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 2056 | /* 4329 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2057 | /* 4333 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2058 | /* 4337 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2059 | /* 4341 */ GIM_Try, /*On fail goto*//*Label 233*/ GIMT_Encode4(4356), // Rule ID 404 // |
| 2060 | /* 4346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 2061 | /* 4349 */ // (urem:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MODU:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2062 | /* 4349 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MODU), |
| 2063 | /* 4354 */ GIR_RootConstrainSelectedInstOperands, |
| 2064 | /* 4355 */ // GIR_Coverage, 404, |
| 2065 | /* 4355 */ GIR_Done, |
| 2066 | /* 4356 */ // Label 233: @4356 |
| 2067 | /* 4356 */ GIM_Try, /*On fail goto*//*Label 234*/ GIMT_Encode4(4371), // Rule ID 1253 // |
| 2068 | /* 4361 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2069 | /* 4364 */ // (urem:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MODU_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2070 | /* 4364 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MODU_MMR6), |
| 2071 | /* 4369 */ GIR_RootConstrainSelectedInstOperands, |
| 2072 | /* 4370 */ // GIR_Coverage, 1253, |
| 2073 | /* 4370 */ GIR_Done, |
| 2074 | /* 4371 */ // Label 234: @4371 |
| 2075 | /* 4371 */ GIM_Reject, |
| 2076 | /* 4372 */ // Label 232: @4372 |
| 2077 | /* 4372 */ GIM_Reject, |
| 2078 | /* 4373 */ // Label 226: @4373 |
| 2079 | /* 4373 */ GIM_Try, /*On fail goto*//*Label 235*/ GIMT_Encode4(4406), // Rule ID 419 // |
| 2080 | /* 4378 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 2081 | /* 4381 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 2082 | /* 4384 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 2083 | /* 4387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2084 | /* 4391 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2085 | /* 4395 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2086 | /* 4399 */ // (urem:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DMODU:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 2087 | /* 4399 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMODU), |
| 2088 | /* 4404 */ GIR_RootConstrainSelectedInstOperands, |
| 2089 | /* 4405 */ // GIR_Coverage, 419, |
| 2090 | /* 4405 */ GIR_Done, |
| 2091 | /* 4406 */ // Label 235: @4406 |
| 2092 | /* 4406 */ GIM_Reject, |
| 2093 | /* 4407 */ // Label 227: @4407 |
| 2094 | /* 4407 */ GIM_Try, /*On fail goto*//*Label 236*/ GIMT_Encode4(4440), // Rule ID 966 // |
| 2095 | /* 4412 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2096 | /* 4415 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 2097 | /* 4418 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 2098 | /* 4421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2099 | /* 4425 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2100 | /* 4429 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2101 | /* 4433 */ // (urem:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MOD_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 2102 | /* 4433 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_U_D), |
| 2103 | /* 4438 */ GIR_RootConstrainSelectedInstOperands, |
| 2104 | /* 4439 */ // GIR_Coverage, 966, |
| 2105 | /* 4439 */ GIR_Done, |
| 2106 | /* 4440 */ // Label 236: @4440 |
| 2107 | /* 4440 */ GIM_Reject, |
| 2108 | /* 4441 */ // Label 228: @4441 |
| 2109 | /* 4441 */ GIM_Try, /*On fail goto*//*Label 237*/ GIMT_Encode4(4474), // Rule ID 965 // |
| 2110 | /* 4446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2111 | /* 4449 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2112 | /* 4452 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2113 | /* 4455 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2114 | /* 4459 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2115 | /* 4463 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2116 | /* 4467 */ // (urem:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MOD_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 2117 | /* 4467 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_U_W), |
| 2118 | /* 4472 */ GIR_RootConstrainSelectedInstOperands, |
| 2119 | /* 4473 */ // GIR_Coverage, 965, |
| 2120 | /* 4473 */ GIR_Done, |
| 2121 | /* 4474 */ // Label 237: @4474 |
| 2122 | /* 4474 */ GIM_Reject, |
| 2123 | /* 4475 */ // Label 229: @4475 |
| 2124 | /* 4475 */ GIM_Try, /*On fail goto*//*Label 238*/ GIMT_Encode4(4508), // Rule ID 964 // |
| 2125 | /* 4480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2126 | /* 4483 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2127 | /* 4486 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2128 | /* 4489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2129 | /* 4493 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2130 | /* 4497 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2131 | /* 4501 */ // (urem:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MOD_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 2132 | /* 4501 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_U_H), |
| 2133 | /* 4506 */ GIR_RootConstrainSelectedInstOperands, |
| 2134 | /* 4507 */ // GIR_Coverage, 964, |
| 2135 | /* 4507 */ GIR_Done, |
| 2136 | /* 4508 */ // Label 238: @4508 |
| 2137 | /* 4508 */ GIM_Reject, |
| 2138 | /* 4509 */ // Label 230: @4509 |
| 2139 | /* 4509 */ GIM_Try, /*On fail goto*//*Label 239*/ GIMT_Encode4(4542), // Rule ID 963 // |
| 2140 | /* 4514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2141 | /* 4517 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 2142 | /* 4520 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 2143 | /* 4523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2144 | /* 4527 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2145 | /* 4531 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2146 | /* 4535 */ // (urem:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MOD_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 2147 | /* 4535 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MOD_U_B), |
| 2148 | /* 4540 */ GIR_RootConstrainSelectedInstOperands, |
| 2149 | /* 4541 */ // GIR_Coverage, 963, |
| 2150 | /* 4541 */ GIR_Done, |
| 2151 | /* 4542 */ // Label 239: @4542 |
| 2152 | /* 4542 */ GIM_Reject, |
| 2153 | /* 4543 */ // Label 231: @4543 |
| 2154 | /* 4543 */ GIM_Reject, |
| 2155 | /* 4544 */ // Label 7: @4544 |
| 2156 | /* 4544 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 246*/ GIMT_Encode4(5099), |
| 2157 | /* 4555 */ /*GILLT_s32*//*Label 240*/ GIMT_Encode4(4587), |
| 2158 | /* 4559 */ /*GILLT_s64*//*Label 241*/ GIMT_Encode4(4861), GIMT_Encode4(0), |
| 2159 | /* 4567 */ /*GILLT_v2s64*//*Label 242*/ GIMT_Encode4(4963), GIMT_Encode4(0), |
| 2160 | /* 4575 */ /*GILLT_v4s32*//*Label 243*/ GIMT_Encode4(4997), |
| 2161 | /* 4579 */ /*GILLT_v8s16*//*Label 244*/ GIMT_Encode4(5031), |
| 2162 | /* 4583 */ /*GILLT_v16s8*//*Label 245*/ GIMT_Encode4(5065), |
| 2163 | /* 4587 */ // Label 240: @4587 |
| 2164 | /* 4587 */ GIM_Try, /*On fail goto*//*Label 247*/ GIMT_Encode4(4860), |
| 2165 | /* 4592 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 2166 | /* 4595 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 2167 | /* 4598 */ GIM_Try, /*On fail goto*//*Label 248*/ GIMT_Encode4(4640), // Rule ID 41 // |
| 2168 | /* 4603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2169 | /* 4606 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2170 | /* 4610 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2171 | /* 4614 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2172 | /* 4618 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2173 | /* 4622 */ GIM_CheckAPIntImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_APInt_Predicate_imm32ZExt16), |
| 2174 | /* 4626 */ // MIs[1] Operand 1 |
| 2175 | /* 4626 */ // No operand predicates |
| 2176 | /* 4626 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2177 | /* 4628 */ // (and:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_imm32ZExt16>>:$imm16) => (ANDi:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] }):$imm16) |
| 2178 | /* 4628 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ANDi), |
| 2179 | /* 4631 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 2180 | /* 4633 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 2181 | /* 4635 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm16 |
| 2182 | /* 4638 */ GIR_RootConstrainSelectedInstOperands, |
| 2183 | /* 4639 */ // GIR_Coverage, 41, |
| 2184 | /* 4639 */ GIR_EraseRootFromParent_Done, |
| 2185 | /* 4640 */ // Label 248: @4640 |
| 2186 | /* 4640 */ GIM_Try, /*On fail goto*//*Label 249*/ GIMT_Encode4(4682), // Rule ID 2299 // |
| 2187 | /* 4645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 2188 | /* 4648 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2189 | /* 4652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2190 | /* 4656 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2191 | /* 4660 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2192 | /* 4664 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExtAndi16), |
| 2193 | /* 4668 */ // MIs[1] Operand 1 |
| 2194 | /* 4668 */ // No operand predicates |
| 2195 | /* 4668 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2196 | /* 4670 */ // (and:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExtAndi16>>:$imm) => (ANDI16_MM:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExtAndi16>>:$imm) |
| 2197 | /* 4670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ANDI16_MM), |
| 2198 | /* 4673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2199 | /* 4675 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 2200 | /* 4677 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 2201 | /* 4680 */ GIR_RootConstrainSelectedInstOperands, |
| 2202 | /* 4681 */ // GIR_Coverage, 2299, |
| 2203 | /* 4681 */ GIR_EraseRootFromParent_Done, |
| 2204 | /* 4682 */ // Label 249: @4682 |
| 2205 | /* 4682 */ GIM_Try, /*On fail goto*//*Label 250*/ GIMT_Encode4(4724), // Rule ID 2462 // |
| 2206 | /* 4687 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2207 | /* 4690 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2208 | /* 4694 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2209 | /* 4698 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2210 | /* 4702 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2211 | /* 4706 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExtAndi16), |
| 2212 | /* 4710 */ // MIs[1] Operand 1 |
| 2213 | /* 4710 */ // No operand predicates |
| 2214 | /* 4710 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2215 | /* 4712 */ // (and:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExtAndi16>>:$imm) => (ANDI16_MMR6:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExtAndi16>>:$imm) |
| 2216 | /* 4712 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ANDI16_MMR6), |
| 2217 | /* 4715 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2218 | /* 4717 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 2219 | /* 4719 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 2220 | /* 4722 */ GIR_RootConstrainSelectedInstOperands, |
| 2221 | /* 4723 */ // GIR_Coverage, 2462, |
| 2222 | /* 4723 */ GIR_EraseRootFromParent_Done, |
| 2223 | /* 4724 */ // Label 250: @4724 |
| 2224 | /* 4724 */ GIM_Try, /*On fail goto*//*Label 251*/ GIMT_Encode4(4751), // Rule ID 51 // |
| 2225 | /* 4729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2226 | /* 4732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2227 | /* 4736 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2228 | /* 4740 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2229 | /* 4744 */ // (and:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (AND:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2230 | /* 4744 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND), |
| 2231 | /* 4749 */ GIR_RootConstrainSelectedInstOperands, |
| 2232 | /* 4750 */ // GIR_Coverage, 51, |
| 2233 | /* 4750 */ GIR_Done, |
| 2234 | /* 4751 */ // Label 251: @4751 |
| 2235 | /* 4751 */ GIM_Try, /*On fail goto*//*Label 252*/ GIMT_Encode4(4778), // Rule ID 1136 // |
| 2236 | /* 4756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2237 | /* 4759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2238 | /* 4763 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2239 | /* 4767 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2240 | /* 4771 */ // (and:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) => (AND16_MM:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) |
| 2241 | /* 4771 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND16_MM), |
| 2242 | /* 4776 */ GIR_RootConstrainSelectedInstOperands, |
| 2243 | /* 4777 */ // GIR_Coverage, 1136, |
| 2244 | /* 4777 */ GIR_Done, |
| 2245 | /* 4778 */ // Label 252: @4778 |
| 2246 | /* 4778 */ GIM_Try, /*On fail goto*//*Label 253*/ GIMT_Encode4(4805), // Rule ID 1152 // |
| 2247 | /* 4783 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2248 | /* 4786 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2249 | /* 4790 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2250 | /* 4794 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2251 | /* 4798 */ // (and:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (AND_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2252 | /* 4798 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND_MM), |
| 2253 | /* 4803 */ GIR_RootConstrainSelectedInstOperands, |
| 2254 | /* 4804 */ // GIR_Coverage, 1152, |
| 2255 | /* 4804 */ GIR_Done, |
| 2256 | /* 4805 */ // Label 253: @4805 |
| 2257 | /* 4805 */ GIM_Try, /*On fail goto*//*Label 254*/ GIMT_Encode4(4832), // Rule ID 1245 // |
| 2258 | /* 4810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2259 | /* 4813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2260 | /* 4817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2261 | /* 4821 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2262 | /* 4825 */ // (and:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (AND_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2263 | /* 4825 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND_MMR6), |
| 2264 | /* 4830 */ GIR_RootConstrainSelectedInstOperands, |
| 2265 | /* 4831 */ // GIR_Coverage, 1245, |
| 2266 | /* 4831 */ GIR_Done, |
| 2267 | /* 4832 */ // Label 254: @4832 |
| 2268 | /* 4832 */ GIM_Try, /*On fail goto*//*Label 255*/ GIMT_Encode4(4859), // Rule ID 1955 // |
| 2269 | /* 4837 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 2270 | /* 4840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2271 | /* 4844 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2272 | /* 4848 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2273 | /* 4852 */ // (and:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) => (AndRxRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) |
| 2274 | /* 4852 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AndRxRxRy16), |
| 2275 | /* 4857 */ GIR_RootConstrainSelectedInstOperands, |
| 2276 | /* 4858 */ // GIR_Coverage, 1955, |
| 2277 | /* 4858 */ GIR_Done, |
| 2278 | /* 4859 */ // Label 255: @4859 |
| 2279 | /* 4859 */ GIM_Reject, |
| 2280 | /* 4860 */ // Label 247: @4860 |
| 2281 | /* 4860 */ GIM_Reject, |
| 2282 | /* 4861 */ // Label 241: @4861 |
| 2283 | /* 4861 */ GIM_Try, /*On fail goto*//*Label 256*/ GIMT_Encode4(4962), |
| 2284 | /* 4866 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 2285 | /* 4869 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 2286 | /* 4872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2287 | /* 4876 */ GIM_Try, /*On fail goto*//*Label 257*/ GIMT_Encode4(4938), // Rule ID 344 // |
| 2288 | /* 4881 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 2289 | /* 4884 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2290 | /* 4888 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 2291 | /* 4892 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 2292 | /* 4896 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 2293 | /* 4900 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2294 | /* 4905 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2295 | /* 4910 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/2, GIMT_Encode8(255), |
| 2296 | /* 4921 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2297 | /* 4923 */ // (and:{ *:[i64] } (add:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt), 255:{ *:[i64] }) => (BADDu:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 2298 | /* 4923 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BADDu), |
| 2299 | /* 4926 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2300 | /* 4928 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 2301 | /* 4932 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rt |
| 2302 | /* 4936 */ GIR_RootConstrainSelectedInstOperands, |
| 2303 | /* 4937 */ // GIR_Coverage, 344, |
| 2304 | /* 4937 */ GIR_EraseRootFromParent_Done, |
| 2305 | /* 4938 */ // Label 257: @4938 |
| 2306 | /* 4938 */ GIM_Try, /*On fail goto*//*Label 258*/ GIMT_Encode4(4961), // Rule ID 281 // |
| 2307 | /* 4943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 2308 | /* 4946 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2309 | /* 4950 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2310 | /* 4954 */ // (and:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (AND64:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 2311 | /* 4954 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND64), |
| 2312 | /* 4959 */ GIR_RootConstrainSelectedInstOperands, |
| 2313 | /* 4960 */ // GIR_Coverage, 281, |
| 2314 | /* 4960 */ GIR_Done, |
| 2315 | /* 4961 */ // Label 258: @4961 |
| 2316 | /* 4961 */ GIM_Reject, |
| 2317 | /* 4962 */ // Label 256: @4962 |
| 2318 | /* 4962 */ GIM_Reject, |
| 2319 | /* 4963 */ // Label 242: @4963 |
| 2320 | /* 4963 */ GIM_Try, /*On fail goto*//*Label 259*/ GIMT_Encode4(4996), // Rule ID 593 // |
| 2321 | /* 4968 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2322 | /* 4971 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 2323 | /* 4974 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 2324 | /* 4977 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2325 | /* 4981 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2326 | /* 4985 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2327 | /* 4989 */ // (and:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (AND_V_D_PSEUDO:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 2328 | /* 4989 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND_V_D_PSEUDO), |
| 2329 | /* 4994 */ GIR_RootConstrainSelectedInstOperands, |
| 2330 | /* 4995 */ // GIR_Coverage, 593, |
| 2331 | /* 4995 */ GIR_Done, |
| 2332 | /* 4996 */ // Label 259: @4996 |
| 2333 | /* 4996 */ GIM_Reject, |
| 2334 | /* 4997 */ // Label 243: @4997 |
| 2335 | /* 4997 */ GIM_Try, /*On fail goto*//*Label 260*/ GIMT_Encode4(5030), // Rule ID 592 // |
| 2336 | /* 5002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2337 | /* 5005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2338 | /* 5008 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2339 | /* 5011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2340 | /* 5015 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2341 | /* 5019 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2342 | /* 5023 */ // (and:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (AND_V_W_PSEUDO:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 2343 | /* 5023 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND_V_W_PSEUDO), |
| 2344 | /* 5028 */ GIR_RootConstrainSelectedInstOperands, |
| 2345 | /* 5029 */ // GIR_Coverage, 592, |
| 2346 | /* 5029 */ GIR_Done, |
| 2347 | /* 5030 */ // Label 260: @5030 |
| 2348 | /* 5030 */ GIM_Reject, |
| 2349 | /* 5031 */ // Label 244: @5031 |
| 2350 | /* 5031 */ GIM_Try, /*On fail goto*//*Label 261*/ GIMT_Encode4(5064), // Rule ID 591 // |
| 2351 | /* 5036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2352 | /* 5039 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2353 | /* 5042 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2354 | /* 5045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2355 | /* 5049 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2356 | /* 5053 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2357 | /* 5057 */ // (and:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (AND_V_H_PSEUDO:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 2358 | /* 5057 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND_V_H_PSEUDO), |
| 2359 | /* 5062 */ GIR_RootConstrainSelectedInstOperands, |
| 2360 | /* 5063 */ // GIR_Coverage, 591, |
| 2361 | /* 5063 */ GIR_Done, |
| 2362 | /* 5064 */ // Label 261: @5064 |
| 2363 | /* 5064 */ GIM_Reject, |
| 2364 | /* 5065 */ // Label 245: @5065 |
| 2365 | /* 5065 */ GIM_Try, /*On fail goto*//*Label 262*/ GIMT_Encode4(5098), // Rule ID 590 // |
| 2366 | /* 5070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2367 | /* 5073 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 2368 | /* 5076 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 2369 | /* 5079 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2370 | /* 5083 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2371 | /* 5087 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2372 | /* 5091 */ // (and:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (AND_V:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 2373 | /* 5091 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::AND_V), |
| 2374 | /* 5096 */ GIR_RootConstrainSelectedInstOperands, |
| 2375 | /* 5097 */ // GIR_Coverage, 590, |
| 2376 | /* 5097 */ GIR_Done, |
| 2377 | /* 5098 */ // Label 262: @5098 |
| 2378 | /* 5098 */ GIM_Reject, |
| 2379 | /* 5099 */ // Label 246: @5099 |
| 2380 | /* 5099 */ GIM_Reject, |
| 2381 | /* 5100 */ // Label 8: @5100 |
| 2382 | /* 5100 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 269*/ GIMT_Encode4(5503), |
| 2383 | /* 5111 */ /*GILLT_s32*//*Label 263*/ GIMT_Encode4(5143), |
| 2384 | /* 5115 */ /*GILLT_s64*//*Label 264*/ GIMT_Encode4(5333), GIMT_Encode4(0), |
| 2385 | /* 5123 */ /*GILLT_v2s64*//*Label 265*/ GIMT_Encode4(5367), GIMT_Encode4(0), |
| 2386 | /* 5131 */ /*GILLT_v4s32*//*Label 266*/ GIMT_Encode4(5401), |
| 2387 | /* 5135 */ /*GILLT_v8s16*//*Label 267*/ GIMT_Encode4(5435), |
| 2388 | /* 5139 */ /*GILLT_v16s8*//*Label 268*/ GIMT_Encode4(5469), |
| 2389 | /* 5143 */ // Label 263: @5143 |
| 2390 | /* 5143 */ GIM_Try, /*On fail goto*//*Label 270*/ GIMT_Encode4(5332), |
| 2391 | /* 5148 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 2392 | /* 5151 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 2393 | /* 5154 */ GIM_Try, /*On fail goto*//*Label 271*/ GIMT_Encode4(5196), // Rule ID 42 // |
| 2394 | /* 5159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2395 | /* 5162 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2396 | /* 5166 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2397 | /* 5170 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2398 | /* 5174 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2399 | /* 5178 */ GIM_CheckAPIntImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_APInt_Predicate_imm32ZExt16), |
| 2400 | /* 5182 */ // MIs[1] Operand 1 |
| 2401 | /* 5182 */ // No operand predicates |
| 2402 | /* 5182 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2403 | /* 5184 */ // (or:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_imm32ZExt16>>:$imm16) => (ORi:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] }):$imm16) |
| 2404 | /* 5184 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ORi), |
| 2405 | /* 5187 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 2406 | /* 5189 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 2407 | /* 5191 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm16 |
| 2408 | /* 5194 */ GIR_RootConstrainSelectedInstOperands, |
| 2409 | /* 5195 */ // GIR_Coverage, 42, |
| 2410 | /* 5195 */ GIR_EraseRootFromParent_Done, |
| 2411 | /* 5196 */ // Label 271: @5196 |
| 2412 | /* 5196 */ GIM_Try, /*On fail goto*//*Label 272*/ GIMT_Encode4(5223), // Rule ID 52 // |
| 2413 | /* 5201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2414 | /* 5204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2415 | /* 5208 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2416 | /* 5212 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2417 | /* 5216 */ // (or:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (OR:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2418 | /* 5216 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR), |
| 2419 | /* 5221 */ GIR_RootConstrainSelectedInstOperands, |
| 2420 | /* 5222 */ // GIR_Coverage, 52, |
| 2421 | /* 5222 */ GIR_Done, |
| 2422 | /* 5223 */ // Label 272: @5223 |
| 2423 | /* 5223 */ GIM_Try, /*On fail goto*//*Label 273*/ GIMT_Encode4(5250), // Rule ID 1138 // |
| 2424 | /* 5228 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2425 | /* 5231 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2426 | /* 5235 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2427 | /* 5239 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2428 | /* 5243 */ // (or:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) => (OR16_MM:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) |
| 2429 | /* 5243 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR16_MM), |
| 2430 | /* 5248 */ GIR_RootConstrainSelectedInstOperands, |
| 2431 | /* 5249 */ // GIR_Coverage, 1138, |
| 2432 | /* 5249 */ GIR_Done, |
| 2433 | /* 5250 */ // Label 273: @5250 |
| 2434 | /* 5250 */ GIM_Try, /*On fail goto*//*Label 274*/ GIMT_Encode4(5277), // Rule ID 1153 // |
| 2435 | /* 5255 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2436 | /* 5258 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2437 | /* 5262 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2438 | /* 5266 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2439 | /* 5270 */ // (or:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (OR_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2440 | /* 5270 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR_MM), |
| 2441 | /* 5275 */ GIR_RootConstrainSelectedInstOperands, |
| 2442 | /* 5276 */ // GIR_Coverage, 1153, |
| 2443 | /* 5276 */ GIR_Done, |
| 2444 | /* 5277 */ // Label 274: @5277 |
| 2445 | /* 5277 */ GIM_Try, /*On fail goto*//*Label 275*/ GIMT_Encode4(5304), // Rule ID 1258 // |
| 2446 | /* 5282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2447 | /* 5285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2448 | /* 5289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2449 | /* 5293 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2450 | /* 5297 */ // (or:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (OR_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2451 | /* 5297 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR_MMR6), |
| 2452 | /* 5302 */ GIR_RootConstrainSelectedInstOperands, |
| 2453 | /* 5303 */ // GIR_Coverage, 1258, |
| 2454 | /* 5303 */ GIR_Done, |
| 2455 | /* 5304 */ // Label 275: @5304 |
| 2456 | /* 5304 */ GIM_Try, /*On fail goto*//*Label 276*/ GIMT_Encode4(5331), // Rule ID 1957 // |
| 2457 | /* 5309 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 2458 | /* 5312 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2459 | /* 5316 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2460 | /* 5320 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2461 | /* 5324 */ // (or:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) => (OrRxRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) |
| 2462 | /* 5324 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OrRxRxRy16), |
| 2463 | /* 5329 */ GIR_RootConstrainSelectedInstOperands, |
| 2464 | /* 5330 */ // GIR_Coverage, 1957, |
| 2465 | /* 5330 */ GIR_Done, |
| 2466 | /* 5331 */ // Label 276: @5331 |
| 2467 | /* 5331 */ GIM_Reject, |
| 2468 | /* 5332 */ // Label 270: @5332 |
| 2469 | /* 5332 */ GIM_Reject, |
| 2470 | /* 5333 */ // Label 264: @5333 |
| 2471 | /* 5333 */ GIM_Try, /*On fail goto*//*Label 277*/ GIMT_Encode4(5366), // Rule ID 282 // |
| 2472 | /* 5338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 2473 | /* 5341 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 2474 | /* 5344 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 2475 | /* 5347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2476 | /* 5351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2477 | /* 5355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2478 | /* 5359 */ // (or:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (OR64:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 2479 | /* 5359 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR64), |
| 2480 | /* 5364 */ GIR_RootConstrainSelectedInstOperands, |
| 2481 | /* 5365 */ // GIR_Coverage, 282, |
| 2482 | /* 5365 */ GIR_Done, |
| 2483 | /* 5366 */ // Label 277: @5366 |
| 2484 | /* 5366 */ GIM_Reject, |
| 2485 | /* 5367 */ // Label 265: @5367 |
| 2486 | /* 5367 */ GIM_Try, /*On fail goto*//*Label 278*/ GIMT_Encode4(5400), // Rule ID 999 // |
| 2487 | /* 5372 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2488 | /* 5375 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 2489 | /* 5378 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 2490 | /* 5381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2491 | /* 5385 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2492 | /* 5389 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2493 | /* 5393 */ // (or:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (OR_V_D_PSEUDO:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 2494 | /* 5393 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR_V_D_PSEUDO), |
| 2495 | /* 5398 */ GIR_RootConstrainSelectedInstOperands, |
| 2496 | /* 5399 */ // GIR_Coverage, 999, |
| 2497 | /* 5399 */ GIR_Done, |
| 2498 | /* 5400 */ // Label 278: @5400 |
| 2499 | /* 5400 */ GIM_Reject, |
| 2500 | /* 5401 */ // Label 266: @5401 |
| 2501 | /* 5401 */ GIM_Try, /*On fail goto*//*Label 279*/ GIMT_Encode4(5434), // Rule ID 998 // |
| 2502 | /* 5406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2503 | /* 5409 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2504 | /* 5412 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2505 | /* 5415 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2506 | /* 5419 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2507 | /* 5423 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2508 | /* 5427 */ // (or:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (OR_V_W_PSEUDO:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 2509 | /* 5427 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR_V_W_PSEUDO), |
| 2510 | /* 5432 */ GIR_RootConstrainSelectedInstOperands, |
| 2511 | /* 5433 */ // GIR_Coverage, 998, |
| 2512 | /* 5433 */ GIR_Done, |
| 2513 | /* 5434 */ // Label 279: @5434 |
| 2514 | /* 5434 */ GIM_Reject, |
| 2515 | /* 5435 */ // Label 267: @5435 |
| 2516 | /* 5435 */ GIM_Try, /*On fail goto*//*Label 280*/ GIMT_Encode4(5468), // Rule ID 997 // |
| 2517 | /* 5440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2518 | /* 5443 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2519 | /* 5446 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2520 | /* 5449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2521 | /* 5453 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2522 | /* 5457 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2523 | /* 5461 */ // (or:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (OR_V_H_PSEUDO:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 2524 | /* 5461 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR_V_H_PSEUDO), |
| 2525 | /* 5466 */ GIR_RootConstrainSelectedInstOperands, |
| 2526 | /* 5467 */ // GIR_Coverage, 997, |
| 2527 | /* 5467 */ GIR_Done, |
| 2528 | /* 5468 */ // Label 280: @5468 |
| 2529 | /* 5468 */ GIM_Reject, |
| 2530 | /* 5469 */ // Label 268: @5469 |
| 2531 | /* 5469 */ GIM_Try, /*On fail goto*//*Label 281*/ GIMT_Encode4(5502), // Rule ID 996 // |
| 2532 | /* 5474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2533 | /* 5477 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 2534 | /* 5480 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 2535 | /* 5483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2536 | /* 5487 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2537 | /* 5491 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2538 | /* 5495 */ // (or:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (OR_V:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 2539 | /* 5495 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::OR_V), |
| 2540 | /* 5500 */ GIR_RootConstrainSelectedInstOperands, |
| 2541 | /* 5501 */ // GIR_Coverage, 996, |
| 2542 | /* 5501 */ GIR_Done, |
| 2543 | /* 5502 */ // Label 281: @5502 |
| 2544 | /* 5502 */ GIM_Reject, |
| 2545 | /* 5503 */ // Label 269: @5503 |
| 2546 | /* 5503 */ GIM_Reject, |
| 2547 | /* 5504 */ // Label 9: @5504 |
| 2548 | /* 5504 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 288*/ GIMT_Encode4(6395), |
| 2549 | /* 5515 */ /*GILLT_s32*//*Label 282*/ GIMT_Encode4(5547), |
| 2550 | /* 5519 */ /*GILLT_s64*//*Label 283*/ GIMT_Encode4(6164), GIMT_Encode4(0), |
| 2551 | /* 5527 */ /*GILLT_v2s64*//*Label 284*/ GIMT_Encode4(6259), GIMT_Encode4(0), |
| 2552 | /* 5535 */ /*GILLT_v4s32*//*Label 285*/ GIMT_Encode4(6293), |
| 2553 | /* 5539 */ /*GILLT_v8s16*//*Label 286*/ GIMT_Encode4(6327), |
| 2554 | /* 5543 */ /*GILLT_v16s8*//*Label 287*/ GIMT_Encode4(6361), |
| 2555 | /* 5547 */ // Label 282: @5547 |
| 2556 | /* 5547 */ GIM_Try, /*On fail goto*//*Label 289*/ GIMT_Encode4(6163), |
| 2557 | /* 5552 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 2558 | /* 5555 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 2559 | /* 5558 */ GIM_Try, /*On fail goto*//*Label 290*/ GIMT_Encode4(5617), // Rule ID 54 // |
| 2560 | /* 5563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2561 | /* 5566 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2562 | /* 5570 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2563 | /* 5574 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 2564 | /* 5578 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 2565 | /* 5582 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 2566 | /* 5586 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2567 | /* 5591 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2568 | /* 5596 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2569 | /* 5600 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2570 | /* 5602 */ // (xor:{ *:[i32] } (or:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt), -1:{ *:[i32] }) => (NOR:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2571 | /* 5602 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOR), |
| 2572 | /* 5605 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2573 | /* 5607 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 2574 | /* 5611 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rt |
| 2575 | /* 5615 */ GIR_RootConstrainSelectedInstOperands, |
| 2576 | /* 5616 */ // GIR_Coverage, 54, |
| 2577 | /* 5616 */ GIR_EraseRootFromParent_Done, |
| 2578 | /* 5617 */ // Label 290: @5617 |
| 2579 | /* 5617 */ GIM_Try, /*On fail goto*//*Label 291*/ GIMT_Encode4(5676), // Rule ID 1155 // |
| 2580 | /* 5622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2581 | /* 5625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2582 | /* 5629 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2583 | /* 5633 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 2584 | /* 5637 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 2585 | /* 5641 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 2586 | /* 5645 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2587 | /* 5650 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2588 | /* 5655 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2589 | /* 5659 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2590 | /* 5661 */ // (xor:{ *:[i32] } (or:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt), -1:{ *:[i32] }) => (NOR_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2591 | /* 5661 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOR_MM), |
| 2592 | /* 5664 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2593 | /* 5666 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 2594 | /* 5670 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rt |
| 2595 | /* 5674 */ GIR_RootConstrainSelectedInstOperands, |
| 2596 | /* 5675 */ // GIR_Coverage, 1155, |
| 2597 | /* 5675 */ GIR_EraseRootFromParent_Done, |
| 2598 | /* 5676 */ // Label 291: @5676 |
| 2599 | /* 5676 */ GIM_Try, /*On fail goto*//*Label 292*/ GIMT_Encode4(5735), // Rule ID 1257 // |
| 2600 | /* 5681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2601 | /* 5684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2602 | /* 5688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2603 | /* 5692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 2604 | /* 5696 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 2605 | /* 5700 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 2606 | /* 5704 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2607 | /* 5709 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2608 | /* 5714 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2609 | /* 5718 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2610 | /* 5720 */ // (xor:{ *:[i32] } (or:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt), -1:{ *:[i32] }) => (NOR_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2611 | /* 5720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOR_MMR6), |
| 2612 | /* 5723 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2613 | /* 5725 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 2614 | /* 5729 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rt |
| 2615 | /* 5733 */ GIR_RootConstrainSelectedInstOperands, |
| 2616 | /* 5734 */ // GIR_Coverage, 1257, |
| 2617 | /* 5734 */ GIR_EraseRootFromParent_Done, |
| 2618 | /* 5735 */ // Label 292: @5735 |
| 2619 | /* 5735 */ GIM_Try, /*On fail goto*//*Label 293*/ GIMT_Encode4(5764), // Rule ID 1284 // |
| 2620 | /* 5740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2621 | /* 5743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2622 | /* 5747 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2623 | /* 5751 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2624 | /* 5755 */ // (xor:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, -1:{ *:[i32] }) => (NOT16_MMR6:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs) |
| 2625 | /* 5755 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOT16_MMR6), |
| 2626 | /* 5758 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 2627 | /* 5760 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 2628 | /* 5762 */ GIR_RootConstrainSelectedInstOperands, |
| 2629 | /* 5763 */ // GIR_Coverage, 1284, |
| 2630 | /* 5763 */ GIR_EraseRootFromParent_Done, |
| 2631 | /* 5764 */ // Label 293: @5764 |
| 2632 | /* 5764 */ GIM_Try, /*On fail goto*//*Label 294*/ GIMT_Encode4(5793), // Rule ID 1137 // |
| 2633 | /* 5769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2634 | /* 5772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2635 | /* 5776 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2636 | /* 5780 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2637 | /* 5784 */ // (xor:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, -1:{ *:[i32] }) => (NOT16_MM:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs) |
| 2638 | /* 5784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOT16_MM), |
| 2639 | /* 5787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 2640 | /* 5789 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 2641 | /* 5791 */ GIR_RootConstrainSelectedInstOperands, |
| 2642 | /* 5792 */ // GIR_Coverage, 1137, |
| 2643 | /* 5792 */ GIR_EraseRootFromParent_Done, |
| 2644 | /* 5793 */ // Label 294: @5793 |
| 2645 | /* 5793 */ GIM_Try, /*On fail goto*//*Label 295*/ GIMT_Encode4(5828), // Rule ID 1472 // |
| 2646 | /* 5798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2647 | /* 5801 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2648 | /* 5805 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2649 | /* 5809 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2650 | /* 5813 */ // (xor:{ *:[i32] } GPR32:{ *:[i32] }:$in, -1:{ *:[i32] }) => (NOR:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$in, ZERO:{ *:[i32] }) |
| 2651 | /* 5813 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOR), |
| 2652 | /* 5816 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2653 | /* 5818 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 2654 | /* 5820 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 2655 | /* 5826 */ GIR_RootConstrainSelectedInstOperands, |
| 2656 | /* 5827 */ // GIR_Coverage, 1472, |
| 2657 | /* 5827 */ GIR_EraseRootFromParent_Done, |
| 2658 | /* 5828 */ // Label 295: @5828 |
| 2659 | /* 5828 */ GIM_Try, /*On fail goto*//*Label 296*/ GIMT_Encode4(5857), // Rule ID 1952 // |
| 2660 | /* 5833 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 2661 | /* 5836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2662 | /* 5840 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2663 | /* 5844 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2664 | /* 5848 */ // (xor:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r, -1:{ *:[i32] }) => (NotRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r) |
| 2665 | /* 5848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NotRxRy16), |
| 2666 | /* 5851 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 2667 | /* 5853 */ GIR_RootToRootCopy, /*OpIdx*/1, // r |
| 2668 | /* 5855 */ GIR_RootConstrainSelectedInstOperands, |
| 2669 | /* 5856 */ // GIR_Coverage, 1952, |
| 2670 | /* 5856 */ GIR_EraseRootFromParent_Done, |
| 2671 | /* 5857 */ // Label 296: @5857 |
| 2672 | /* 5857 */ GIM_Try, /*On fail goto*//*Label 297*/ GIMT_Encode4(5886), // Rule ID 2294 // |
| 2673 | /* 5862 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 2674 | /* 5865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2675 | /* 5869 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2676 | /* 5873 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2677 | /* 5877 */ // (xor:{ *:[i32] } GPRMM16:{ *:[i32] }:$in, -1:{ *:[i32] }) => (NOT16_MM:{ *:[i32] } GPRMM16:{ *:[i32] }:$in) |
| 2678 | /* 5877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOT16_MM), |
| 2679 | /* 5880 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 2680 | /* 5882 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 2681 | /* 5884 */ GIR_RootConstrainSelectedInstOperands, |
| 2682 | /* 5885 */ // GIR_Coverage, 2294, |
| 2683 | /* 5885 */ GIR_EraseRootFromParent_Done, |
| 2684 | /* 5886 */ // Label 297: @5886 |
| 2685 | /* 5886 */ GIM_Try, /*On fail goto*//*Label 298*/ GIMT_Encode4(5921), // Rule ID 2295 // |
| 2686 | /* 5891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 2687 | /* 5894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2688 | /* 5898 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2689 | /* 5902 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2690 | /* 5906 */ // (xor:{ *:[i32] } GPR32:{ *:[i32] }:$in, -1:{ *:[i32] }) => (NOR_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$in, ZERO:{ *:[i32] }) |
| 2691 | /* 5906 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOR_MM), |
| 2692 | /* 5909 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2693 | /* 5911 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 2694 | /* 5913 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 2695 | /* 5919 */ GIR_RootConstrainSelectedInstOperands, |
| 2696 | /* 5920 */ // GIR_Coverage, 2295, |
| 2697 | /* 5920 */ GIR_EraseRootFromParent_Done, |
| 2698 | /* 5921 */ // Label 298: @5921 |
| 2699 | /* 5921 */ GIM_Try, /*On fail goto*//*Label 299*/ GIMT_Encode4(5950), // Rule ID 2465 // |
| 2700 | /* 5926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2701 | /* 5929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2702 | /* 5933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2703 | /* 5937 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2704 | /* 5941 */ // (xor:{ *:[i32] } GPRMM16:{ *:[i32] }:$in, -1:{ *:[i32] }) => (NOT16_MMR6:{ *:[i32] } GPRMM16:{ *:[i32] }:$in) |
| 2705 | /* 5941 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOT16_MMR6), |
| 2706 | /* 5944 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 2707 | /* 5946 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 2708 | /* 5948 */ GIR_RootConstrainSelectedInstOperands, |
| 2709 | /* 5949 */ // GIR_Coverage, 2465, |
| 2710 | /* 5949 */ GIR_EraseRootFromParent_Done, |
| 2711 | /* 5950 */ // Label 299: @5950 |
| 2712 | /* 5950 */ GIM_Try, /*On fail goto*//*Label 300*/ GIMT_Encode4(5985), // Rule ID 2466 // |
| 2713 | /* 5955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2714 | /* 5958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2715 | /* 5962 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2716 | /* 5966 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2717 | /* 5970 */ // (xor:{ *:[i32] } GPR32:{ *:[i32] }:$in, -1:{ *:[i32] }) => (NOR_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$in, ZERO:{ *:[i32] }) |
| 2718 | /* 5970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOR_MMR6), |
| 2719 | /* 5973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2720 | /* 5975 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 2721 | /* 5977 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 2722 | /* 5983 */ GIR_RootConstrainSelectedInstOperands, |
| 2723 | /* 5984 */ // GIR_Coverage, 2466, |
| 2724 | /* 5984 */ GIR_EraseRootFromParent_Done, |
| 2725 | /* 5985 */ // Label 300: @5985 |
| 2726 | /* 5985 */ GIM_Try, /*On fail goto*//*Label 301*/ GIMT_Encode4(6027), // Rule ID 43 // |
| 2727 | /* 5990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2728 | /* 5993 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2729 | /* 5997 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2730 | /* 6001 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 2731 | /* 6005 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 2732 | /* 6009 */ GIM_CheckAPIntImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_APInt_Predicate_imm32ZExt16), |
| 2733 | /* 6013 */ // MIs[1] Operand 1 |
| 2734 | /* 6013 */ // No operand predicates |
| 2735 | /* 6013 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2736 | /* 6015 */ // (xor:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_imm32ZExt16>>:$imm16) => (XORi:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] }):$imm16) |
| 2737 | /* 6015 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 2738 | /* 6018 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 2739 | /* 6020 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 2740 | /* 6022 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm16 |
| 2741 | /* 6025 */ GIR_RootConstrainSelectedInstOperands, |
| 2742 | /* 6026 */ // GIR_Coverage, 43, |
| 2743 | /* 6026 */ GIR_EraseRootFromParent_Done, |
| 2744 | /* 6027 */ // Label 301: @6027 |
| 2745 | /* 6027 */ GIM_Try, /*On fail goto*//*Label 302*/ GIMT_Encode4(6054), // Rule ID 53 // |
| 2746 | /* 6032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 2747 | /* 6035 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2748 | /* 6039 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2749 | /* 6043 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2750 | /* 6047 */ // (xor:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (XOR:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2751 | /* 6047 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 2752 | /* 6052 */ GIR_RootConstrainSelectedInstOperands, |
| 2753 | /* 6053 */ // GIR_Coverage, 53, |
| 2754 | /* 6053 */ GIR_Done, |
| 2755 | /* 6054 */ // Label 302: @6054 |
| 2756 | /* 6054 */ GIM_Try, /*On fail goto*//*Label 303*/ GIMT_Encode4(6081), // Rule ID 1140 // |
| 2757 | /* 6059 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2758 | /* 6062 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2759 | /* 6066 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2760 | /* 6070 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 2761 | /* 6074 */ // (xor:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) => (XOR16_MM:{ *:[i32] } GPRMM16Opnd:{ *:[i32] }:$rs, GPRMM16Opnd:{ *:[i32] }:$rt) |
| 2762 | /* 6074 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR16_MM), |
| 2763 | /* 6079 */ GIR_RootConstrainSelectedInstOperands, |
| 2764 | /* 6080 */ // GIR_Coverage, 1140, |
| 2765 | /* 6080 */ GIR_Done, |
| 2766 | /* 6081 */ // Label 303: @6081 |
| 2767 | /* 6081 */ GIM_Try, /*On fail goto*//*Label 304*/ GIMT_Encode4(6108), // Rule ID 1154 // |
| 2768 | /* 6086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 2769 | /* 6089 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2770 | /* 6093 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2771 | /* 6097 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2772 | /* 6101 */ // (xor:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (XOR_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2773 | /* 6101 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 2774 | /* 6106 */ GIR_RootConstrainSelectedInstOperands, |
| 2775 | /* 6107 */ // GIR_Coverage, 1154, |
| 2776 | /* 6107 */ GIR_Done, |
| 2777 | /* 6108 */ // Label 304: @6108 |
| 2778 | /* 6108 */ GIM_Try, /*On fail goto*//*Label 305*/ GIMT_Encode4(6135), // Rule ID 1261 // |
| 2779 | /* 6113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 2780 | /* 6116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2781 | /* 6120 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2782 | /* 6124 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2783 | /* 6128 */ // (xor:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (XOR_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 2784 | /* 6128 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR_MMR6), |
| 2785 | /* 6133 */ GIR_RootConstrainSelectedInstOperands, |
| 2786 | /* 6134 */ // GIR_Coverage, 1261, |
| 2787 | /* 6134 */ GIR_Done, |
| 2788 | /* 6135 */ // Label 305: @6135 |
| 2789 | /* 6135 */ GIM_Try, /*On fail goto*//*Label 306*/ GIMT_Encode4(6162), // Rule ID 1959 // |
| 2790 | /* 6140 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 2791 | /* 6143 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2792 | /* 6147 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2793 | /* 6151 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 2794 | /* 6155 */ // (xor:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) => (XorRxRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$l, CPU16Regs:{ *:[i32] }:$r) |
| 2795 | /* 6155 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 2796 | /* 6160 */ GIR_RootConstrainSelectedInstOperands, |
| 2797 | /* 6161 */ // GIR_Coverage, 1959, |
| 2798 | /* 6161 */ GIR_Done, |
| 2799 | /* 6162 */ // Label 306: @6162 |
| 2800 | /* 6162 */ GIM_Reject, |
| 2801 | /* 6163 */ // Label 289: @6163 |
| 2802 | /* 6163 */ GIM_Reject, |
| 2803 | /* 6164 */ // Label 283: @6164 |
| 2804 | /* 6164 */ GIM_Try, /*On fail goto*//*Label 307*/ GIMT_Encode4(6258), |
| 2805 | /* 6169 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 2806 | /* 6172 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 2807 | /* 6175 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2808 | /* 6179 */ GIM_Try, /*On fail goto*//*Label 308*/ GIMT_Encode4(6234), // Rule ID 284 // |
| 2809 | /* 6184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 2810 | /* 6187 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 2811 | /* 6191 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_OR), |
| 2812 | /* 6195 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 2813 | /* 6199 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 2814 | /* 6203 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2815 | /* 6208 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2816 | /* 6213 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 255, |
| 2817 | /* 6217 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 2818 | /* 6219 */ // (xor:{ *:[i64] } (or:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt), -1:{ *:[i64] }) => (NOR64:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 2819 | /* 6219 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NOR64), |
| 2820 | /* 6222 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 2821 | /* 6224 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 2822 | /* 6228 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rt |
| 2823 | /* 6232 */ GIR_RootConstrainSelectedInstOperands, |
| 2824 | /* 6233 */ // GIR_Coverage, 284, |
| 2825 | /* 6233 */ GIR_EraseRootFromParent_Done, |
| 2826 | /* 6234 */ // Label 308: @6234 |
| 2827 | /* 6234 */ GIM_Try, /*On fail goto*//*Label 309*/ GIMT_Encode4(6257), // Rule ID 283 // |
| 2828 | /* 6239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 2829 | /* 6242 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2830 | /* 6246 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2831 | /* 6250 */ // (xor:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (XOR64:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 2832 | /* 6250 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 2833 | /* 6255 */ GIR_RootConstrainSelectedInstOperands, |
| 2834 | /* 6256 */ // GIR_Coverage, 283, |
| 2835 | /* 6256 */ GIR_Done, |
| 2836 | /* 6257 */ // Label 309: @6257 |
| 2837 | /* 6257 */ GIM_Reject, |
| 2838 | /* 6258 */ // Label 307: @6258 |
| 2839 | /* 6258 */ GIM_Reject, |
| 2840 | /* 6259 */ // Label 284: @6259 |
| 2841 | /* 6259 */ GIM_Try, /*On fail goto*//*Label 310*/ GIMT_Encode4(6292), // Rule ID 1115 // |
| 2842 | /* 6264 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2843 | /* 6267 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 2844 | /* 6270 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 2845 | /* 6273 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2846 | /* 6277 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2847 | /* 6281 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2848 | /* 6285 */ // (xor:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (XOR_V_D_PSEUDO:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 2849 | /* 6285 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR_V_D_PSEUDO), |
| 2850 | /* 6290 */ GIR_RootConstrainSelectedInstOperands, |
| 2851 | /* 6291 */ // GIR_Coverage, 1115, |
| 2852 | /* 6291 */ GIR_Done, |
| 2853 | /* 6292 */ // Label 310: @6292 |
| 2854 | /* 6292 */ GIM_Reject, |
| 2855 | /* 6293 */ // Label 285: @6293 |
| 2856 | /* 6293 */ GIM_Try, /*On fail goto*//*Label 311*/ GIMT_Encode4(6326), // Rule ID 1114 // |
| 2857 | /* 6298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2858 | /* 6301 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 2859 | /* 6304 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 2860 | /* 6307 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2861 | /* 6311 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2862 | /* 6315 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2863 | /* 6319 */ // (xor:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (XOR_V_W_PSEUDO:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 2864 | /* 6319 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR_V_W_PSEUDO), |
| 2865 | /* 6324 */ GIR_RootConstrainSelectedInstOperands, |
| 2866 | /* 6325 */ // GIR_Coverage, 1114, |
| 2867 | /* 6325 */ GIR_Done, |
| 2868 | /* 6326 */ // Label 311: @6326 |
| 2869 | /* 6326 */ GIM_Reject, |
| 2870 | /* 6327 */ // Label 286: @6327 |
| 2871 | /* 6327 */ GIM_Try, /*On fail goto*//*Label 312*/ GIMT_Encode4(6360), // Rule ID 1113 // |
| 2872 | /* 6332 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2873 | /* 6335 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 2874 | /* 6338 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 2875 | /* 6341 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2876 | /* 6345 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2877 | /* 6349 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 2878 | /* 6353 */ // (xor:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (XOR_V_H_PSEUDO:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 2879 | /* 6353 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR_V_H_PSEUDO), |
| 2880 | /* 6358 */ GIR_RootConstrainSelectedInstOperands, |
| 2881 | /* 6359 */ // GIR_Coverage, 1113, |
| 2882 | /* 6359 */ GIR_Done, |
| 2883 | /* 6360 */ // Label 312: @6360 |
| 2884 | /* 6360 */ GIM_Reject, |
| 2885 | /* 6361 */ // Label 287: @6361 |
| 2886 | /* 6361 */ GIM_Try, /*On fail goto*//*Label 313*/ GIMT_Encode4(6394), // Rule ID 1112 // |
| 2887 | /* 6366 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2888 | /* 6369 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 2889 | /* 6372 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 2890 | /* 6375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2891 | /* 6379 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2892 | /* 6383 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 2893 | /* 6387 */ // (xor:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (XOR_V:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 2894 | /* 6387 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::XOR_V), |
| 2895 | /* 6392 */ GIR_RootConstrainSelectedInstOperands, |
| 2896 | /* 6393 */ // GIR_Coverage, 1112, |
| 2897 | /* 6393 */ GIR_Done, |
| 2898 | /* 6394 */ // Label 313: @6394 |
| 2899 | /* 6394 */ GIM_Reject, |
| 2900 | /* 6395 */ // Label 288: @6395 |
| 2901 | /* 6395 */ GIM_Reject, |
| 2902 | /* 6396 */ // Label 10: @6396 |
| 2903 | /* 6396 */ GIM_Try, /*On fail goto*//*Label 314*/ GIMT_Encode4(6468), |
| 2904 | /* 6401 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 2905 | /* 6404 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 2906 | /* 6407 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 2907 | /* 6410 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 2908 | /* 6413 */ GIM_Try, /*On fail goto*//*Label 315*/ GIMT_Encode4(6440), // Rule ID 255 // |
| 2909 | /* 6418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsNotSoftFloat_NotFP64bit_NotInMips16Mode), |
| 2910 | /* 6421 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 2911 | /* 6425 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2912 | /* 6429 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2913 | /* 6433 */ // (MipsBuildPairF64:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$lo, GPR32Opnd:{ *:[i32] }:$hi) => (BuildPairF64:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$lo, GPR32Opnd:{ *:[i32] }:$hi) |
| 2914 | /* 6433 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::BuildPairF64), |
| 2915 | /* 6438 */ GIR_RootConstrainSelectedInstOperands, |
| 2916 | /* 6439 */ // GIR_Coverage, 255, |
| 2917 | /* 6439 */ GIR_Done, |
| 2918 | /* 6440 */ // Label 315: @6440 |
| 2919 | /* 6440 */ GIM_Try, /*On fail goto*//*Label 316*/ GIMT_Encode4(6467), // Rule ID 256 // |
| 2920 | /* 6445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsFP64bit_IsNotSoftFloat_NotInMips16Mode), |
| 2921 | /* 6448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 2922 | /* 6452 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2923 | /* 6456 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2924 | /* 6460 */ // (MipsBuildPairF64:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$lo, GPR32Opnd:{ *:[i32] }:$hi) => (BuildPairF64_64:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$lo, GPR32Opnd:{ *:[i32] }:$hi) |
| 2925 | /* 6460 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::BuildPairF64_64), |
| 2926 | /* 6465 */ GIR_RootConstrainSelectedInstOperands, |
| 2927 | /* 6466 */ // GIR_Coverage, 256, |
| 2928 | /* 6466 */ GIR_Done, |
| 2929 | /* 6467 */ // Label 316: @6467 |
| 2930 | /* 6467 */ GIM_Reject, |
| 2931 | /* 6468 */ // Label 314: @6468 |
| 2932 | /* 6468 */ GIM_Reject, |
| 2933 | /* 6469 */ // Label 11: @6469 |
| 2934 | /* 6469 */ GIM_Try, /*On fail goto*//*Label 317*/ GIMT_Encode4(6540), |
| 2935 | /* 6474 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 2936 | /* 6477 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 2937 | /* 6480 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 2938 | /* 6483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 2939 | /* 6487 */ GIM_Try, /*On fail goto*//*Label 318*/ GIMT_Encode4(6513), // Rule ID 794 // |
| 2940 | /* 6492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasMips64_HasStdEnc), |
| 2941 | /* 6495 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 2942 | /* 6499 */ // MIs[0] rs |
| 2943 | /* 6499 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2944 | /* 6504 */ // (build_vector:{ *:[v2i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rs) => (FILL_D:{ *:[v2i64] } GPR64Opnd:{ *:[i64] }:$rs) |
| 2945 | /* 6504 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FILL_D), |
| 2946 | /* 6507 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 2947 | /* 6509 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 2948 | /* 6511 */ GIR_RootConstrainSelectedInstOperands, |
| 2949 | /* 6512 */ // GIR_Coverage, 794, |
| 2950 | /* 6512 */ GIR_EraseRootFromParent_Done, |
| 2951 | /* 6513 */ // Label 318: @6513 |
| 2952 | /* 6513 */ GIM_Try, /*On fail goto*//*Label 319*/ GIMT_Encode4(6539), // Rule ID 796 // |
| 2953 | /* 6518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2954 | /* 6521 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 2955 | /* 6525 */ // MIs[0] fs |
| 2956 | /* 6525 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2957 | /* 6530 */ // (build_vector:{ *:[v2f64] } FGR64:{ *:[f64] }:$fs, FGR64:{ *:[f64] }:$fs) => (FILL_FD_PSEUDO:{ *:[v2f64] } FGR64:{ *:[f64] }:$fs) |
| 2958 | /* 6530 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FILL_FD_PSEUDO), |
| 2959 | /* 6533 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 2960 | /* 6535 */ GIR_RootToRootCopy, /*OpIdx*/1, // fs |
| 2961 | /* 6537 */ GIR_RootConstrainSelectedInstOperands, |
| 2962 | /* 6538 */ // GIR_Coverage, 796, |
| 2963 | /* 6538 */ GIR_EraseRootFromParent_Done, |
| 2964 | /* 6539 */ // Label 319: @6539 |
| 2965 | /* 6539 */ GIM_Reject, |
| 2966 | /* 6540 */ // Label 317: @6540 |
| 2967 | /* 6540 */ GIM_Try, /*On fail goto*//*Label 320*/ GIMT_Encode4(6631), |
| 2968 | /* 6545 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/5, |
| 2969 | /* 6548 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 2970 | /* 6551 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 2971 | /* 6554 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 2972 | /* 6558 */ GIM_Try, /*On fail goto*//*Label 321*/ GIMT_Encode4(6594), // Rule ID 793 // |
| 2973 | /* 6563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2974 | /* 6566 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 2975 | /* 6570 */ // MIs[0] rs |
| 2976 | /* 6570 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2977 | /* 6575 */ // MIs[0] rs |
| 2978 | /* 6575 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/3, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2979 | /* 6580 */ // MIs[0] rs |
| 2980 | /* 6580 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/4, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2981 | /* 6585 */ // (build_vector:{ *:[v4i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs) => (FILL_W:{ *:[v4i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 2982 | /* 6585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FILL_W), |
| 2983 | /* 6588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 2984 | /* 6590 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 2985 | /* 6592 */ GIR_RootConstrainSelectedInstOperands, |
| 2986 | /* 6593 */ // GIR_Coverage, 793, |
| 2987 | /* 6593 */ GIR_EraseRootFromParent_Done, |
| 2988 | /* 6594 */ // Label 321: @6594 |
| 2989 | /* 6594 */ GIM_Try, /*On fail goto*//*Label 322*/ GIMT_Encode4(6630), // Rule ID 795 // |
| 2990 | /* 6599 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 2991 | /* 6602 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 2992 | /* 6606 */ // MIs[0] fs |
| 2993 | /* 6606 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2994 | /* 6611 */ // MIs[0] fs |
| 2995 | /* 6611 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/3, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2996 | /* 6616 */ // MIs[0] fs |
| 2997 | /* 6616 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/4, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 2998 | /* 6621 */ // (build_vector:{ *:[v4f32] } FGR32:{ *:[f32] }:$fs, FGR32:{ *:[f32] }:$fs, FGR32:{ *:[f32] }:$fs, FGR32:{ *:[f32] }:$fs) => (FILL_FW_PSEUDO:{ *:[v4f32] } FGR32:{ *:[f32] }:$fs) |
| 2999 | /* 6621 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FILL_FW_PSEUDO), |
| 3000 | /* 6624 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 3001 | /* 6626 */ GIR_RootToRootCopy, /*OpIdx*/1, // fs |
| 3002 | /* 6628 */ GIR_RootConstrainSelectedInstOperands, |
| 3003 | /* 6629 */ // GIR_Coverage, 795, |
| 3004 | /* 6629 */ GIR_EraseRootFromParent_Done, |
| 3005 | /* 6630 */ // Label 322: @6630 |
| 3006 | /* 6630 */ GIM_Reject, |
| 3007 | /* 6631 */ // Label 320: @6631 |
| 3008 | /* 6631 */ GIM_Try, /*On fail goto*//*Label 323*/ GIMT_Encode4(6700), // Rule ID 792 // |
| 3009 | /* 6636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 3010 | /* 6639 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/9, |
| 3011 | /* 6642 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 3012 | /* 6645 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3013 | /* 6648 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3014 | /* 6652 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3015 | /* 6656 */ // MIs[0] rs |
| 3016 | /* 6656 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3017 | /* 6661 */ // MIs[0] rs |
| 3018 | /* 6661 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/3, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3019 | /* 6666 */ // MIs[0] rs |
| 3020 | /* 6666 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/4, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3021 | /* 6671 */ // MIs[0] rs |
| 3022 | /* 6671 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/5, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3023 | /* 6676 */ // MIs[0] rs |
| 3024 | /* 6676 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/6, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3025 | /* 6681 */ // MIs[0] rs |
| 3026 | /* 6681 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/7, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3027 | /* 6686 */ // MIs[0] rs |
| 3028 | /* 6686 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/8, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3029 | /* 6691 */ // (build_vector:{ *:[v8i16] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs) => (FILL_H:{ *:[v8i16] } GPR32Opnd:{ *:[i32] }:$rs) |
| 3030 | /* 6691 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FILL_H), |
| 3031 | /* 6694 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 3032 | /* 6696 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 3033 | /* 6698 */ GIR_RootConstrainSelectedInstOperands, |
| 3034 | /* 6699 */ // GIR_Coverage, 792, |
| 3035 | /* 6699 */ GIR_EraseRootFromParent_Done, |
| 3036 | /* 6700 */ // Label 323: @6700 |
| 3037 | /* 6700 */ GIM_Try, /*On fail goto*//*Label 324*/ GIMT_Encode4(6809), // Rule ID 791 // |
| 3038 | /* 6705 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 3039 | /* 6708 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/17, |
| 3040 | /* 6711 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 3041 | /* 6714 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3042 | /* 6717 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 3043 | /* 6721 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3044 | /* 6725 */ // MIs[0] rs |
| 3045 | /* 6725 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/2, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3046 | /* 6730 */ // MIs[0] rs |
| 3047 | /* 6730 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/3, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3048 | /* 6735 */ // MIs[0] rs |
| 3049 | /* 6735 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/4, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3050 | /* 6740 */ // MIs[0] rs |
| 3051 | /* 6740 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/5, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3052 | /* 6745 */ // MIs[0] rs |
| 3053 | /* 6745 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/6, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3054 | /* 6750 */ // MIs[0] rs |
| 3055 | /* 6750 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/7, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3056 | /* 6755 */ // MIs[0] rs |
| 3057 | /* 6755 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/8, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3058 | /* 6760 */ // MIs[0] rs |
| 3059 | /* 6760 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/9, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3060 | /* 6765 */ // MIs[0] rs |
| 3061 | /* 6765 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/10, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3062 | /* 6770 */ // MIs[0] rs |
| 3063 | /* 6770 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/11, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3064 | /* 6775 */ // MIs[0] rs |
| 3065 | /* 6775 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/12, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3066 | /* 6780 */ // MIs[0] rs |
| 3067 | /* 6780 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/13, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3068 | /* 6785 */ // MIs[0] rs |
| 3069 | /* 6785 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/14, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3070 | /* 6790 */ // MIs[0] rs |
| 3071 | /* 6790 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/15, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3072 | /* 6795 */ // MIs[0] rs |
| 3073 | /* 6795 */ GIM_CheckIsSameOperand, /*MI*/0, /*OpIdx*/16, /*OtherMI*/0, /*OtherOpIdx*/1, |
| 3074 | /* 6800 */ // (build_vector:{ *:[v16i8] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rs) => (FILL_B:{ *:[v16i8] } GPR32Opnd:{ *:[i32] }:$rs) |
| 3075 | /* 6800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FILL_B), |
| 3076 | /* 6803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 3077 | /* 6805 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 3078 | /* 6807 */ GIR_RootConstrainSelectedInstOperands, |
| 3079 | /* 6808 */ // GIR_Coverage, 791, |
| 3080 | /* 6808 */ GIR_EraseRootFromParent_Done, |
| 3081 | /* 6809 */ // Label 324: @6809 |
| 3082 | /* 6809 */ GIM_Reject, |
| 3083 | /* 6810 */ // Label 12: @6810 |
| 3084 | /* 6810 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 333*/ GIMT_Encode4(11120), |
| 3085 | /* 6821 */ /*GILLT_s32*//*Label 325*/ GIMT_Encode4(6853), |
| 3086 | /* 6825 */ /*GILLT_s64*//*Label 326*/ GIMT_Encode4(7130), |
| 3087 | /* 6829 */ /*GILLT_v2s16*//*Label 327*/ GIMT_Encode4(7186), |
| 3088 | /* 6833 */ /*GILLT_v2s64*//*Label 328*/ GIMT_Encode4(7246), |
| 3089 | /* 6837 */ /*GILLT_v4s8*//*Label 329*/ GIMT_Encode4(8381), |
| 3090 | /* 6841 */ /*GILLT_v4s32*//*Label 330*/ GIMT_Encode4(8441), |
| 3091 | /* 6845 */ /*GILLT_v8s16*//*Label 331*/ GIMT_Encode4(9510), |
| 3092 | /* 6849 */ /*GILLT_v16s8*//*Label 332*/ GIMT_Encode4(10435), |
| 3093 | /* 6853 */ // Label 325: @6853 |
| 3094 | /* 6853 */ GIM_Try, /*On fail goto*//*Label 334*/ GIMT_Encode4(6879), // Rule ID 138 // |
| 3095 | /* 6858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 3096 | /* 6861 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3097 | /* 6864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3098 | /* 6868 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3099 | /* 6872 */ // (bitconvert:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs) => (MFC1:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 3100 | /* 6872 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MFC1), |
| 3101 | /* 6877 */ GIR_RootConstrainSelectedInstOperands, |
| 3102 | /* 6878 */ // GIR_Coverage, 138, |
| 3103 | /* 6878 */ GIR_Done, |
| 3104 | /* 6879 */ // Label 334: @6879 |
| 3105 | /* 6879 */ GIM_Try, /*On fail goto*//*Label 335*/ GIMT_Encode4(6905), // Rule ID 139 // |
| 3106 | /* 6884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 3107 | /* 6887 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3108 | /* 6890 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3109 | /* 6894 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3110 | /* 6898 */ // (bitconvert:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$rt) => (MTC1:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 3111 | /* 6898 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MTC1), |
| 3112 | /* 6903 */ GIR_RootConstrainSelectedInstOperands, |
| 3113 | /* 6904 */ // GIR_Coverage, 139, |
| 3114 | /* 6904 */ GIR_Done, |
| 3115 | /* 6905 */ // Label 335: @6905 |
| 3116 | /* 6905 */ GIM_Try, /*On fail goto*//*Label 336*/ GIMT_Encode4(6931), // Rule ID 1235 // |
| 3117 | /* 6910 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 3118 | /* 6913 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3119 | /* 6916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3120 | /* 6920 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3121 | /* 6924 */ // (bitconvert:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs) => (MFC1_MM:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 3122 | /* 6924 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MFC1_MM), |
| 3123 | /* 6929 */ GIR_RootConstrainSelectedInstOperands, |
| 3124 | /* 6930 */ // GIR_Coverage, 1235, |
| 3125 | /* 6930 */ GIR_Done, |
| 3126 | /* 6931 */ // Label 336: @6931 |
| 3127 | /* 6931 */ GIM_Try, /*On fail goto*//*Label 337*/ GIMT_Encode4(6957), // Rule ID 1236 // |
| 3128 | /* 6936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 3129 | /* 6939 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3130 | /* 6942 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3131 | /* 6946 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3132 | /* 6950 */ // (bitconvert:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$rt) => (MTC1_MM:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 3133 | /* 6950 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MTC1_MM), |
| 3134 | /* 6955 */ GIR_RootConstrainSelectedInstOperands, |
| 3135 | /* 6956 */ // GIR_Coverage, 1236, |
| 3136 | /* 6956 */ GIR_Done, |
| 3137 | /* 6957 */ // Label 337: @6957 |
| 3138 | /* 6957 */ GIM_Try, /*On fail goto*//*Label 338*/ GIMT_Encode4(6983), // Rule ID 1250 // |
| 3139 | /* 6962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 3140 | /* 6965 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3141 | /* 6968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3142 | /* 6972 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3143 | /* 6976 */ // (bitconvert:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$rt) => (MTC1_MMR6:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 3144 | /* 6976 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MTC1_MMR6), |
| 3145 | /* 6981 */ GIR_RootConstrainSelectedInstOperands, |
| 3146 | /* 6982 */ // GIR_Coverage, 1250, |
| 3147 | /* 6982 */ GIR_Done, |
| 3148 | /* 6983 */ // Label 338: @6983 |
| 3149 | /* 6983 */ GIM_Try, /*On fail goto*//*Label 339*/ GIMT_Encode4(7009), // Rule ID 1251 // |
| 3150 | /* 6988 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 3151 | /* 6991 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3152 | /* 6994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3153 | /* 6998 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3154 | /* 7002 */ // (bitconvert:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs) => (MFC1_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 3155 | /* 7002 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MFC1_MMR6), |
| 3156 | /* 7007 */ GIR_RootConstrainSelectedInstOperands, |
| 3157 | /* 7008 */ // GIR_Coverage, 1251, |
| 3158 | /* 7008 */ GIR_Done, |
| 3159 | /* 7009 */ // Label 339: @7009 |
| 3160 | /* 7009 */ GIM_Try, /*On fail goto*//*Label 340*/ GIMT_Encode4(7039), // Rule ID 2040 // |
| 3161 | /* 7014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3162 | /* 7017 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 3163 | /* 7020 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3164 | /* 7024 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 3165 | /* 7028 */ // (bitconvert:{ *:[i32] } DSPR:{ *:[v2i16] }:$src) => (COPY_TO_REGCLASS:{ *:[i32] } DSPR:{ *:[v2i16] }:$src, GPR32:{ *:[i32] }) |
| 3166 | /* 7028 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3167 | /* 7033 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR32RegClassID), |
| 3168 | /* 7038 */ // GIR_Coverage, 2040, |
| 3169 | /* 7038 */ GIR_Done, |
| 3170 | /* 7039 */ // Label 340: @7039 |
| 3171 | /* 7039 */ GIM_Try, /*On fail goto*//*Label 341*/ GIMT_Encode4(7069), // Rule ID 2041 // |
| 3172 | /* 7044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3173 | /* 7047 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 3174 | /* 7050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3175 | /* 7054 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 3176 | /* 7058 */ // (bitconvert:{ *:[i32] } DSPR:{ *:[v4i8] }:$src) => (COPY_TO_REGCLASS:{ *:[i32] } DSPR:{ *:[v4i8] }:$src, GPR32:{ *:[i32] }) |
| 3177 | /* 7058 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3178 | /* 7063 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR32RegClassID), |
| 3179 | /* 7068 */ // GIR_Coverage, 2041, |
| 3180 | /* 7068 */ GIR_Done, |
| 3181 | /* 7069 */ // Label 341: @7069 |
| 3182 | /* 7069 */ GIM_Try, /*On fail goto*//*Label 342*/ GIMT_Encode4(7099), // Rule ID 2044 // |
| 3183 | /* 7074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3184 | /* 7077 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 3185 | /* 7080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3186 | /* 7084 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 3187 | /* 7088 */ // (bitconvert:{ *:[f32] } DSPR:{ *:[v2i16] }:$src) => (COPY_TO_REGCLASS:{ *:[f32] } DSPR:{ *:[v2i16] }:$src, FGR32:{ *:[i32] }) |
| 3188 | /* 7088 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3189 | /* 7093 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::FGR32RegClassID), |
| 3190 | /* 7098 */ // GIR_Coverage, 2044, |
| 3191 | /* 7098 */ GIR_Done, |
| 3192 | /* 7099 */ // Label 342: @7099 |
| 3193 | /* 7099 */ GIM_Try, /*On fail goto*//*Label 343*/ GIMT_Encode4(7129), // Rule ID 2045 // |
| 3194 | /* 7104 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3195 | /* 7107 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 3196 | /* 7110 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3197 | /* 7114 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 3198 | /* 7118 */ // (bitconvert:{ *:[f32] } DSPR:{ *:[v4i8] }:$src) => (COPY_TO_REGCLASS:{ *:[f32] } DSPR:{ *:[v4i8] }:$src, FGR32:{ *:[i32] }) |
| 3199 | /* 7118 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3200 | /* 7123 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::FGR32RegClassID), |
| 3201 | /* 7128 */ // GIR_Coverage, 2045, |
| 3202 | /* 7128 */ GIR_Done, |
| 3203 | /* 7129 */ // Label 343: @7129 |
| 3204 | /* 7129 */ GIM_Reject, |
| 3205 | /* 7130 */ // Label 326: @7130 |
| 3206 | /* 7130 */ GIM_Try, /*On fail goto*//*Label 344*/ GIMT_Encode4(7185), |
| 3207 | /* 7135 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 3208 | /* 7138 */ GIM_Try, /*On fail goto*//*Label 345*/ GIMT_Encode4(7161), // Rule ID 140 // |
| 3209 | /* 7143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 3210 | /* 7146 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 3211 | /* 7150 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 3212 | /* 7154 */ // (bitconvert:{ *:[f64] } GPR64Opnd:{ *:[i64] }:$rt) => (DMTC1:{ *:[f64] } GPR64Opnd:{ *:[i64] }:$rt) |
| 3213 | /* 7154 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMTC1), |
| 3214 | /* 7159 */ GIR_RootConstrainSelectedInstOperands, |
| 3215 | /* 7160 */ // GIR_Coverage, 140, |
| 3216 | /* 7160 */ GIR_Done, |
| 3217 | /* 7161 */ // Label 345: @7161 |
| 3218 | /* 7161 */ GIM_Try, /*On fail goto*//*Label 346*/ GIMT_Encode4(7184), // Rule ID 141 // |
| 3219 | /* 7166 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 3220 | /* 7169 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 3221 | /* 7173 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 3222 | /* 7177 */ // (bitconvert:{ *:[i64] } FGR64Opnd:{ *:[f64] }:$fs) => (DMFC1:{ *:[i64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 3223 | /* 7177 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMFC1), |
| 3224 | /* 7182 */ GIR_RootConstrainSelectedInstOperands, |
| 3225 | /* 7183 */ // GIR_Coverage, 141, |
| 3226 | /* 7183 */ GIR_Done, |
| 3227 | /* 7184 */ // Label 346: @7184 |
| 3228 | /* 7184 */ GIM_Reject, |
| 3229 | /* 7185 */ // Label 344: @7185 |
| 3230 | /* 7185 */ GIM_Reject, |
| 3231 | /* 7186 */ // Label 327: @7186 |
| 3232 | /* 7186 */ GIM_Try, /*On fail goto*//*Label 347*/ GIMT_Encode4(7245), |
| 3233 | /* 7191 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3234 | /* 7194 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 3235 | /* 7198 */ GIM_Try, /*On fail goto*//*Label 348*/ GIMT_Encode4(7221), // Rule ID 2042 // |
| 3236 | /* 7203 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3237 | /* 7206 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3238 | /* 7210 */ // (bitconvert:{ *:[v2i16] } GPR32:{ *:[i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i16] } GPR32:{ *:[i32] }:$src, DSPR:{ *:[i32] }) |
| 3239 | /* 7210 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3240 | /* 7215 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 3241 | /* 7220 */ // GIR_Coverage, 2042, |
| 3242 | /* 7220 */ GIR_Done, |
| 3243 | /* 7221 */ // Label 348: @7221 |
| 3244 | /* 7221 */ GIM_Try, /*On fail goto*//*Label 349*/ GIMT_Encode4(7244), // Rule ID 2046 // |
| 3245 | /* 7226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3246 | /* 7229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3247 | /* 7233 */ // (bitconvert:{ *:[v2i16] } FGR32:{ *:[f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i16] } FGR32:{ *:[f32] }:$src, DSPR:{ *:[i32] }) |
| 3248 | /* 7233 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3249 | /* 7238 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 3250 | /* 7243 */ // GIR_Coverage, 2046, |
| 3251 | /* 7243 */ GIR_Done, |
| 3252 | /* 7244 */ // Label 349: @7244 |
| 3253 | /* 7244 */ GIM_Reject, |
| 3254 | /* 7245 */ // Label 347: @7245 |
| 3255 | /* 7245 */ GIM_Reject, |
| 3256 | /* 7246 */ // Label 328: @7246 |
| 3257 | /* 7246 */ GIM_Try, /*On fail goto*//*Label 350*/ GIMT_Encode4(7272), // Rule ID 2127 // |
| 3258 | /* 7251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 3259 | /* 7254 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3260 | /* 7257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3261 | /* 7261 */ // (bitconvert:{ *:[v2i64] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } v2f64:{ *:[v2f64] }:$src, MSA128D:{ *:[i32] }) |
| 3262 | /* 7261 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3263 | /* 7266 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3264 | /* 7271 */ // GIR_Coverage, 2127, |
| 3265 | /* 7271 */ GIR_Done, |
| 3266 | /* 7272 */ // Label 350: @7272 |
| 3267 | /* 7272 */ GIM_Try, /*On fail goto*//*Label 351*/ GIMT_Encode4(7298), // Rule ID 2130 // |
| 3268 | /* 7277 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 3269 | /* 7280 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3270 | /* 7283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3271 | /* 7287 */ // (bitconvert:{ *:[v2f64] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } v2i64:{ *:[v2i64] }:$src, MSA128D:{ *:[i32] }) |
| 3272 | /* 7287 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3273 | /* 7292 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3274 | /* 7297 */ // GIR_Coverage, 2130, |
| 3275 | /* 7297 */ GIR_Done, |
| 3276 | /* 7298 */ // Label 351: @7298 |
| 3277 | /* 7298 */ GIM_Try, /*On fail goto*//*Label 352*/ GIMT_Encode4(7324), // Rule ID 2147 // |
| 3278 | /* 7303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3279 | /* 7306 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3280 | /* 7309 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3281 | /* 7313 */ // (bitconvert:{ *:[v2i64] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } v16i8:{ *:[v16i8] }:$src, MSA128D:{ *:[i32] }) |
| 3282 | /* 7313 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3283 | /* 7318 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3284 | /* 7323 */ // GIR_Coverage, 2147, |
| 3285 | /* 7323 */ GIR_Done, |
| 3286 | /* 7324 */ // Label 352: @7324 |
| 3287 | /* 7324 */ GIM_Try, /*On fail goto*//*Label 353*/ GIMT_Encode4(7350), // Rule ID 2148 // |
| 3288 | /* 7329 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3289 | /* 7332 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3290 | /* 7335 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3291 | /* 7339 */ // (bitconvert:{ *:[v2i64] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } v8i16:{ *:[v8i16] }:$src, MSA128D:{ *:[i32] }) |
| 3292 | /* 7339 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3293 | /* 7344 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3294 | /* 7349 */ // GIR_Coverage, 2148, |
| 3295 | /* 7349 */ GIR_Done, |
| 3296 | /* 7350 */ // Label 353: @7350 |
| 3297 | /* 7350 */ GIM_Try, /*On fail goto*//*Label 354*/ GIMT_Encode4(7376), // Rule ID 2149 // |
| 3298 | /* 7355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3299 | /* 7358 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3300 | /* 7361 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3301 | /* 7365 */ // (bitconvert:{ *:[v2i64] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } v4i32:{ *:[v4i32] }:$src, MSA128D:{ *:[i32] }) |
| 3302 | /* 7365 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3303 | /* 7370 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3304 | /* 7375 */ // GIR_Coverage, 2149, |
| 3305 | /* 7375 */ GIR_Done, |
| 3306 | /* 7376 */ // Label 354: @7376 |
| 3307 | /* 7376 */ GIM_Try, /*On fail goto*//*Label 355*/ GIMT_Encode4(7402), // Rule ID 2150 // |
| 3308 | /* 7381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3309 | /* 7384 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3310 | /* 7387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3311 | /* 7391 */ // (bitconvert:{ *:[v2i64] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } v8f16:{ *:[v8f16] }:$src, MSA128D:{ *:[i32] }) |
| 3312 | /* 7391 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3313 | /* 7396 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3314 | /* 7401 */ // GIR_Coverage, 2150, |
| 3315 | /* 7401 */ GIR_Done, |
| 3316 | /* 7402 */ // Label 355: @7402 |
| 3317 | /* 7402 */ GIM_Try, /*On fail goto*//*Label 356*/ GIMT_Encode4(7428), // Rule ID 2151 // |
| 3318 | /* 7407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3319 | /* 7410 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3320 | /* 7413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3321 | /* 7417 */ // (bitconvert:{ *:[v2i64] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } v4f32:{ *:[v4f32] }:$src, MSA128D:{ *:[i32] }) |
| 3322 | /* 7417 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3323 | /* 7422 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3324 | /* 7427 */ // GIR_Coverage, 2151, |
| 3325 | /* 7427 */ GIR_Done, |
| 3326 | /* 7428 */ // Label 356: @7428 |
| 3327 | /* 7428 */ GIM_Try, /*On fail goto*//*Label 357*/ GIMT_Encode4(7454), // Rule ID 2157 // |
| 3328 | /* 7433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3329 | /* 7436 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3330 | /* 7439 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3331 | /* 7443 */ // (bitconvert:{ *:[v2f64] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } v16i8:{ *:[v16i8] }:$src, MSA128D:{ *:[i32] }) |
| 3332 | /* 7443 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3333 | /* 7448 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3334 | /* 7453 */ // GIR_Coverage, 2157, |
| 3335 | /* 7453 */ GIR_Done, |
| 3336 | /* 7454 */ // Label 357: @7454 |
| 3337 | /* 7454 */ GIM_Try, /*On fail goto*//*Label 358*/ GIMT_Encode4(7480), // Rule ID 2158 // |
| 3338 | /* 7459 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3339 | /* 7462 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3340 | /* 7465 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3341 | /* 7469 */ // (bitconvert:{ *:[v2f64] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } v8i16:{ *:[v8i16] }:$src, MSA128D:{ *:[i32] }) |
| 3342 | /* 7469 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3343 | /* 7474 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3344 | /* 7479 */ // GIR_Coverage, 2158, |
| 3345 | /* 7479 */ GIR_Done, |
| 3346 | /* 7480 */ // Label 358: @7480 |
| 3347 | /* 7480 */ GIM_Try, /*On fail goto*//*Label 359*/ GIMT_Encode4(7506), // Rule ID 2159 // |
| 3348 | /* 7485 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3349 | /* 7488 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3350 | /* 7491 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3351 | /* 7495 */ // (bitconvert:{ *:[v2f64] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } v4i32:{ *:[v4i32] }:$src, MSA128D:{ *:[i32] }) |
| 3352 | /* 7495 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3353 | /* 7500 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3354 | /* 7505 */ // GIR_Coverage, 2159, |
| 3355 | /* 7505 */ GIR_Done, |
| 3356 | /* 7506 */ // Label 359: @7506 |
| 3357 | /* 7506 */ GIM_Try, /*On fail goto*//*Label 360*/ GIMT_Encode4(7532), // Rule ID 2160 // |
| 3358 | /* 7511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3359 | /* 7514 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3360 | /* 7517 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3361 | /* 7521 */ // (bitconvert:{ *:[v2f64] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } v8f16:{ *:[v8f16] }:$src, MSA128D:{ *:[i32] }) |
| 3362 | /* 7521 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3363 | /* 7526 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3364 | /* 7531 */ // GIR_Coverage, 2160, |
| 3365 | /* 7531 */ GIR_Done, |
| 3366 | /* 7532 */ // Label 360: @7532 |
| 3367 | /* 7532 */ GIM_Try, /*On fail goto*//*Label 361*/ GIMT_Encode4(7558), // Rule ID 2161 // |
| 3368 | /* 7537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3369 | /* 7540 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3370 | /* 7543 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3371 | /* 7547 */ // (bitconvert:{ *:[v2f64] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } v4f32:{ *:[v4f32] }:$src, MSA128D:{ *:[i32] }) |
| 3372 | /* 7547 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3373 | /* 7552 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3374 | /* 7557 */ // GIR_Coverage, 2161, |
| 3375 | /* 7557 */ GIR_Done, |
| 3376 | /* 7558 */ // Label 361: @7558 |
| 3377 | /* 7558 */ GIM_Try, /*On fail goto*//*Label 362*/ GIMT_Encode4(7675), // Rule ID 2166 // |
| 3378 | /* 7563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3379 | /* 7566 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3380 | /* 7569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3381 | /* 7573 */ // (bitconvert:{ *:[v2i64] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3382 | /* 7573 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s8, |
| 3383 | /* 7576 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3384 | /* 7580 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3385 | /* 7585 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3386 | /* 7589 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 3387 | /* 7594 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s8, |
| 3388 | /* 7597 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 3389 | /* 7601 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3390 | /* 7606 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 3391 | /* 7609 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/27, |
| 3392 | /* 7612 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 3393 | /* 7614 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3394 | /* 7617 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3395 | /* 7621 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3396 | /* 7626 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 3397 | /* 7629 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3398 | /* 7634 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3399 | /* 7637 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3400 | /* 7641 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3401 | /* 7646 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3402 | /* 7649 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3403 | /* 7659 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3404 | /* 7661 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3405 | /* 7664 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3406 | /* 7666 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3407 | /* 7669 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3408 | /* 7674 */ // GIR_Coverage, 2166, |
| 3409 | /* 7674 */ GIR_EraseRootFromParent_Done, |
| 3410 | /* 7675 */ // Label 362: @7675 |
| 3411 | /* 7675 */ GIM_Try, /*On fail goto*//*Label 363*/ GIMT_Encode4(7792), // Rule ID 2167 // |
| 3412 | /* 7680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3413 | /* 7683 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3414 | /* 7686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3415 | /* 7690 */ // (bitconvert:{ *:[v2f64] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3416 | /* 7690 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s8, |
| 3417 | /* 7693 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3418 | /* 7697 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3419 | /* 7702 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3420 | /* 7706 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 3421 | /* 7711 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s8, |
| 3422 | /* 7714 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 3423 | /* 7718 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3424 | /* 7723 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 3425 | /* 7726 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/27, |
| 3426 | /* 7729 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 3427 | /* 7731 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3428 | /* 7734 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3429 | /* 7738 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3430 | /* 7743 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 3431 | /* 7746 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3432 | /* 7751 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3433 | /* 7754 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3434 | /* 7758 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3435 | /* 7763 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3436 | /* 7766 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3437 | /* 7776 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3438 | /* 7778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3439 | /* 7781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3440 | /* 7783 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3441 | /* 7786 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3442 | /* 7791 */ // GIR_Coverage, 2167, |
| 3443 | /* 7791 */ GIR_EraseRootFromParent_Done, |
| 3444 | /* 7792 */ // Label 363: @7792 |
| 3445 | /* 7792 */ GIM_Try, /*On fail goto*//*Label 364*/ GIMT_Encode4(7862), // Rule ID 2171 // |
| 3446 | /* 7797 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3447 | /* 7800 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3448 | /* 7803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3449 | /* 7807 */ // (bitconvert:{ *:[v2i64] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3450 | /* 7807 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3451 | /* 7810 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3452 | /* 7814 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3453 | /* 7819 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3454 | /* 7823 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3455 | /* 7828 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3456 | /* 7831 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3457 | /* 7835 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3458 | /* 7840 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3459 | /* 7843 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 3460 | /* 7846 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3461 | /* 7848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3462 | /* 7851 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3463 | /* 7853 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3464 | /* 7856 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3465 | /* 7861 */ // GIR_Coverage, 2171, |
| 3466 | /* 7861 */ GIR_EraseRootFromParent_Done, |
| 3467 | /* 7862 */ // Label 364: @7862 |
| 3468 | /* 7862 */ GIM_Try, /*On fail goto*//*Label 365*/ GIMT_Encode4(7932), // Rule ID 2172 // |
| 3469 | /* 7867 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3470 | /* 7870 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3471 | /* 7873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3472 | /* 7877 */ // (bitconvert:{ *:[v2f64] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3473 | /* 7877 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3474 | /* 7880 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3475 | /* 7884 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3476 | /* 7889 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3477 | /* 7893 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3478 | /* 7898 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3479 | /* 7901 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3480 | /* 7905 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3481 | /* 7910 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3482 | /* 7913 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 3483 | /* 7916 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3484 | /* 7918 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3485 | /* 7921 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3486 | /* 7923 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3487 | /* 7926 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3488 | /* 7931 */ // GIR_Coverage, 2172, |
| 3489 | /* 7931 */ GIR_EraseRootFromParent_Done, |
| 3490 | /* 7932 */ // Label 365: @7932 |
| 3491 | /* 7932 */ GIM_Try, /*On fail goto*//*Label 366*/ GIMT_Encode4(8002), // Rule ID 2176 // |
| 3492 | /* 7937 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3493 | /* 7940 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3494 | /* 7943 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3495 | /* 7947 */ // (bitconvert:{ *:[v2i64] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8f16:{ *:[v8f16] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3496 | /* 7947 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3497 | /* 7950 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3498 | /* 7954 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3499 | /* 7959 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3500 | /* 7963 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3501 | /* 7968 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3502 | /* 7971 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3503 | /* 7975 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3504 | /* 7980 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3505 | /* 7983 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 3506 | /* 7986 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3507 | /* 7988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3508 | /* 7991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3509 | /* 7993 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3510 | /* 7996 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3511 | /* 8001 */ // GIR_Coverage, 2176, |
| 3512 | /* 8001 */ GIR_EraseRootFromParent_Done, |
| 3513 | /* 8002 */ // Label 366: @8002 |
| 3514 | /* 8002 */ GIM_Try, /*On fail goto*//*Label 367*/ GIMT_Encode4(8072), // Rule ID 2177 // |
| 3515 | /* 8007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3516 | /* 8010 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3517 | /* 8013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3518 | /* 8017 */ // (bitconvert:{ *:[v2f64] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8f16:{ *:[v8f16] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3519 | /* 8017 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3520 | /* 8020 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3521 | /* 8024 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3522 | /* 8029 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3523 | /* 8033 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3524 | /* 8038 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3525 | /* 8041 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3526 | /* 8045 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3527 | /* 8050 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3528 | /* 8053 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 3529 | /* 8056 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3530 | /* 8058 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3531 | /* 8061 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3532 | /* 8063 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3533 | /* 8066 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3534 | /* 8071 */ // GIR_Coverage, 2177, |
| 3535 | /* 8071 */ GIR_EraseRootFromParent_Done, |
| 3536 | /* 8072 */ // Label 367: @8072 |
| 3537 | /* 8072 */ GIM_Try, /*On fail goto*//*Label 368*/ GIMT_Encode4(8149), // Rule ID 2181 // |
| 3538 | /* 8077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3539 | /* 8080 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3540 | /* 8083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3541 | /* 8087 */ // (bitconvert:{ *:[v2i64] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3542 | /* 8087 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3543 | /* 8090 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3544 | /* 8094 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3545 | /* 8099 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3546 | /* 8103 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3547 | /* 8108 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3548 | /* 8111 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3549 | /* 8115 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3550 | /* 8120 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3551 | /* 8123 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3552 | /* 8133 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3553 | /* 8135 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3554 | /* 8138 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3555 | /* 8140 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3556 | /* 8143 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3557 | /* 8148 */ // GIR_Coverage, 2181, |
| 3558 | /* 8148 */ GIR_EraseRootFromParent_Done, |
| 3559 | /* 8149 */ // Label 368: @8149 |
| 3560 | /* 8149 */ GIM_Try, /*On fail goto*//*Label 369*/ GIMT_Encode4(8226), // Rule ID 2182 // |
| 3561 | /* 8154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3562 | /* 8157 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3563 | /* 8160 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3564 | /* 8164 */ // (bitconvert:{ *:[v2f64] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3565 | /* 8164 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3566 | /* 8167 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3567 | /* 8171 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3568 | /* 8176 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3569 | /* 8180 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3570 | /* 8185 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3571 | /* 8188 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3572 | /* 8192 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3573 | /* 8197 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3574 | /* 8200 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3575 | /* 8210 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3576 | /* 8212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3577 | /* 8215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3578 | /* 8217 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3579 | /* 8220 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3580 | /* 8225 */ // GIR_Coverage, 2182, |
| 3581 | /* 8225 */ GIR_EraseRootFromParent_Done, |
| 3582 | /* 8226 */ // Label 369: @8226 |
| 3583 | /* 8226 */ GIM_Try, /*On fail goto*//*Label 370*/ GIMT_Encode4(8303), // Rule ID 2186 // |
| 3584 | /* 8231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3585 | /* 8234 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3586 | /* 8237 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3587 | /* 8241 */ // (bitconvert:{ *:[v2i64] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2i64] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v4f32:{ *:[v4f32] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3588 | /* 8241 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3589 | /* 8244 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3590 | /* 8248 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3591 | /* 8253 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3592 | /* 8257 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3593 | /* 8262 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3594 | /* 8265 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3595 | /* 8269 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3596 | /* 8274 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3597 | /* 8277 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3598 | /* 8287 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3599 | /* 8289 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3600 | /* 8292 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3601 | /* 8294 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3602 | /* 8297 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3603 | /* 8302 */ // GIR_Coverage, 2186, |
| 3604 | /* 8302 */ GIR_EraseRootFromParent_Done, |
| 3605 | /* 8303 */ // Label 370: @8303 |
| 3606 | /* 8303 */ GIM_Try, /*On fail goto*//*Label 371*/ GIMT_Encode4(8380), // Rule ID 2187 // |
| 3607 | /* 8308 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3608 | /* 8311 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3609 | /* 8314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3610 | /* 8318 */ // (bitconvert:{ *:[v2f64] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v2f64] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v4f32:{ *:[v4f32] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128D:{ *:[i32] }) |
| 3611 | /* 8318 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3612 | /* 8321 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3613 | /* 8325 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3614 | /* 8330 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3615 | /* 8334 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3616 | /* 8339 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3617 | /* 8342 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3618 | /* 8346 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3619 | /* 8351 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3620 | /* 8354 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3621 | /* 8364 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3622 | /* 8366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3623 | /* 8369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3624 | /* 8371 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3625 | /* 8374 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128DRegClassID), |
| 3626 | /* 8379 */ // GIR_Coverage, 2187, |
| 3627 | /* 8379 */ GIR_EraseRootFromParent_Done, |
| 3628 | /* 8380 */ // Label 371: @8380 |
| 3629 | /* 8380 */ GIM_Reject, |
| 3630 | /* 8381 */ // Label 329: @8381 |
| 3631 | /* 8381 */ GIM_Try, /*On fail goto*//*Label 372*/ GIMT_Encode4(8440), |
| 3632 | /* 8386 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 3633 | /* 8389 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 3634 | /* 8393 */ GIM_Try, /*On fail goto*//*Label 373*/ GIMT_Encode4(8416), // Rule ID 2043 // |
| 3635 | /* 8398 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3636 | /* 8401 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 3637 | /* 8405 */ // (bitconvert:{ *:[v4i8] } GPR32:{ *:[i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i8] } GPR32:{ *:[i32] }:$src, DSPR:{ *:[i32] }) |
| 3638 | /* 8405 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3639 | /* 8410 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 3640 | /* 8415 */ // GIR_Coverage, 2043, |
| 3641 | /* 8415 */ GIR_Done, |
| 3642 | /* 8416 */ // Label 373: @8416 |
| 3643 | /* 8416 */ GIM_Try, /*On fail goto*//*Label 374*/ GIMT_Encode4(8439), // Rule ID 2047 // |
| 3644 | /* 8421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 3645 | /* 8424 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 3646 | /* 8428 */ // (bitconvert:{ *:[v4i8] } FGR32:{ *:[f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i8] } FGR32:{ *:[f32] }:$src, DSPR:{ *:[i32] }) |
| 3647 | /* 8428 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3648 | /* 8433 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 3649 | /* 8438 */ // GIR_Coverage, 2047, |
| 3650 | /* 8438 */ GIR_Done, |
| 3651 | /* 8439 */ // Label 374: @8439 |
| 3652 | /* 8439 */ GIM_Reject, |
| 3653 | /* 8440 */ // Label 372: @8440 |
| 3654 | /* 8440 */ GIM_Reject, |
| 3655 | /* 8441 */ // Label 330: @8441 |
| 3656 | /* 8441 */ GIM_Try, /*On fail goto*//*Label 375*/ GIMT_Encode4(8467), // Rule ID 2126 // |
| 3657 | /* 8446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 3658 | /* 8449 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3659 | /* 8452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3660 | /* 8456 */ // (bitconvert:{ *:[v4i32] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } v4f32:{ *:[v4f32] }:$src, MSA128W:{ *:[i32] }) |
| 3661 | /* 8456 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3662 | /* 8461 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3663 | /* 8466 */ // GIR_Coverage, 2126, |
| 3664 | /* 8466 */ GIR_Done, |
| 3665 | /* 8467 */ // Label 375: @8467 |
| 3666 | /* 8467 */ GIM_Try, /*On fail goto*//*Label 376*/ GIMT_Encode4(8493), // Rule ID 2129 // |
| 3667 | /* 8472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 3668 | /* 8475 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 3669 | /* 8478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3670 | /* 8482 */ // (bitconvert:{ *:[v4f32] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } v4i32:{ *:[v4i32] }:$src, MSA128W:{ *:[i32] }) |
| 3671 | /* 8482 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3672 | /* 8487 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3673 | /* 8492 */ // GIR_Coverage, 2129, |
| 3674 | /* 8492 */ GIR_Done, |
| 3675 | /* 8493 */ // Label 376: @8493 |
| 3676 | /* 8493 */ GIM_Try, /*On fail goto*//*Label 377*/ GIMT_Encode4(8519), // Rule ID 2142 // |
| 3677 | /* 8498 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3678 | /* 8501 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3679 | /* 8504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3680 | /* 8508 */ // (bitconvert:{ *:[v4i32] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } v16i8:{ *:[v16i8] }:$src, MSA128W:{ *:[i32] }) |
| 3681 | /* 8508 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3682 | /* 8513 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3683 | /* 8518 */ // GIR_Coverage, 2142, |
| 3684 | /* 8518 */ GIR_Done, |
| 3685 | /* 8519 */ // Label 377: @8519 |
| 3686 | /* 8519 */ GIM_Try, /*On fail goto*//*Label 378*/ GIMT_Encode4(8545), // Rule ID 2143 // |
| 3687 | /* 8524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3688 | /* 8527 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3689 | /* 8530 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3690 | /* 8534 */ // (bitconvert:{ *:[v4i32] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } v8i16:{ *:[v8i16] }:$src, MSA128W:{ *:[i32] }) |
| 3691 | /* 8534 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3692 | /* 8539 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3693 | /* 8544 */ // GIR_Coverage, 2143, |
| 3694 | /* 8544 */ GIR_Done, |
| 3695 | /* 8545 */ // Label 378: @8545 |
| 3696 | /* 8545 */ GIM_Try, /*On fail goto*//*Label 379*/ GIMT_Encode4(8571), // Rule ID 2144 // |
| 3697 | /* 8550 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3698 | /* 8553 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3699 | /* 8556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3700 | /* 8560 */ // (bitconvert:{ *:[v4i32] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } v2i64:{ *:[v2i64] }:$src, MSA128W:{ *:[i32] }) |
| 3701 | /* 8560 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3702 | /* 8565 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3703 | /* 8570 */ // GIR_Coverage, 2144, |
| 3704 | /* 8570 */ GIR_Done, |
| 3705 | /* 8571 */ // Label 379: @8571 |
| 3706 | /* 8571 */ GIM_Try, /*On fail goto*//*Label 380*/ GIMT_Encode4(8597), // Rule ID 2145 // |
| 3707 | /* 8576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3708 | /* 8579 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3709 | /* 8582 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3710 | /* 8586 */ // (bitconvert:{ *:[v4i32] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } v8f16:{ *:[v8f16] }:$src, MSA128W:{ *:[i32] }) |
| 3711 | /* 8586 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3712 | /* 8591 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3713 | /* 8596 */ // GIR_Coverage, 2145, |
| 3714 | /* 8596 */ GIR_Done, |
| 3715 | /* 8597 */ // Label 380: @8597 |
| 3716 | /* 8597 */ GIM_Try, /*On fail goto*//*Label 381*/ GIMT_Encode4(8623), // Rule ID 2146 // |
| 3717 | /* 8602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3718 | /* 8605 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3719 | /* 8608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3720 | /* 8612 */ // (bitconvert:{ *:[v4i32] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } v2f64:{ *:[v2f64] }:$src, MSA128W:{ *:[i32] }) |
| 3721 | /* 8612 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3722 | /* 8617 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3723 | /* 8622 */ // GIR_Coverage, 2146, |
| 3724 | /* 8622 */ GIR_Done, |
| 3725 | /* 8623 */ // Label 381: @8623 |
| 3726 | /* 8623 */ GIM_Try, /*On fail goto*//*Label 382*/ GIMT_Encode4(8649), // Rule ID 2152 // |
| 3727 | /* 8628 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3728 | /* 8631 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3729 | /* 8634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3730 | /* 8638 */ // (bitconvert:{ *:[v4f32] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } v16i8:{ *:[v16i8] }:$src, MSA128W:{ *:[i32] }) |
| 3731 | /* 8638 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3732 | /* 8643 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3733 | /* 8648 */ // GIR_Coverage, 2152, |
| 3734 | /* 8648 */ GIR_Done, |
| 3735 | /* 8649 */ // Label 382: @8649 |
| 3736 | /* 8649 */ GIM_Try, /*On fail goto*//*Label 383*/ GIMT_Encode4(8675), // Rule ID 2153 // |
| 3737 | /* 8654 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3738 | /* 8657 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3739 | /* 8660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3740 | /* 8664 */ // (bitconvert:{ *:[v4f32] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } v8i16:{ *:[v8i16] }:$src, MSA128W:{ *:[i32] }) |
| 3741 | /* 8664 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3742 | /* 8669 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3743 | /* 8674 */ // GIR_Coverage, 2153, |
| 3744 | /* 8674 */ GIR_Done, |
| 3745 | /* 8675 */ // Label 383: @8675 |
| 3746 | /* 8675 */ GIM_Try, /*On fail goto*//*Label 384*/ GIMT_Encode4(8701), // Rule ID 2154 // |
| 3747 | /* 8680 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3748 | /* 8683 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3749 | /* 8686 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3750 | /* 8690 */ // (bitconvert:{ *:[v4f32] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } v2i64:{ *:[v2i64] }:$src, MSA128W:{ *:[i32] }) |
| 3751 | /* 8690 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3752 | /* 8695 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3753 | /* 8700 */ // GIR_Coverage, 2154, |
| 3754 | /* 8700 */ GIR_Done, |
| 3755 | /* 8701 */ // Label 384: @8701 |
| 3756 | /* 8701 */ GIM_Try, /*On fail goto*//*Label 385*/ GIMT_Encode4(8727), // Rule ID 2155 // |
| 3757 | /* 8706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3758 | /* 8709 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3759 | /* 8712 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3760 | /* 8716 */ // (bitconvert:{ *:[v4f32] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } v8f16:{ *:[v8f16] }:$src, MSA128W:{ *:[i32] }) |
| 3761 | /* 8716 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3762 | /* 8721 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3763 | /* 8726 */ // GIR_Coverage, 2155, |
| 3764 | /* 8726 */ GIR_Done, |
| 3765 | /* 8727 */ // Label 385: @8727 |
| 3766 | /* 8727 */ GIM_Try, /*On fail goto*//*Label 386*/ GIMT_Encode4(8753), // Rule ID 2156 // |
| 3767 | /* 8732 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 3768 | /* 8735 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3769 | /* 8738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3770 | /* 8742 */ // (bitconvert:{ *:[v4f32] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } v2f64:{ *:[v2f64] }:$src, MSA128W:{ *:[i32] }) |
| 3771 | /* 8742 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3772 | /* 8747 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3773 | /* 8752 */ // GIR_Coverage, 2156, |
| 3774 | /* 8752 */ GIR_Done, |
| 3775 | /* 8753 */ // Label 386: @8753 |
| 3776 | /* 8753 */ GIM_Try, /*On fail goto*//*Label 387*/ GIMT_Encode4(8823), // Rule ID 2164 // |
| 3777 | /* 8758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3778 | /* 8761 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3779 | /* 8764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3780 | /* 8768 */ // (bitconvert:{ *:[v4i32] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3781 | /* 8768 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 3782 | /* 8771 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3783 | /* 8775 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3784 | /* 8780 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3785 | /* 8784 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 3786 | /* 8789 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 3787 | /* 8792 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 3788 | /* 8796 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3789 | /* 8801 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3790 | /* 8804 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 3791 | /* 8807 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3792 | /* 8809 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3793 | /* 8812 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3794 | /* 8814 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3795 | /* 8817 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3796 | /* 8822 */ // GIR_Coverage, 2164, |
| 3797 | /* 8822 */ GIR_EraseRootFromParent_Done, |
| 3798 | /* 8823 */ // Label 387: @8823 |
| 3799 | /* 8823 */ GIM_Try, /*On fail goto*//*Label 388*/ GIMT_Encode4(8893), // Rule ID 2165 // |
| 3800 | /* 8828 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3801 | /* 8831 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 3802 | /* 8834 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3803 | /* 8838 */ // (bitconvert:{ *:[v4f32] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3804 | /* 8838 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 3805 | /* 8841 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3806 | /* 8845 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3807 | /* 8850 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3808 | /* 8854 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 3809 | /* 8859 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 3810 | /* 8862 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 3811 | /* 8866 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3812 | /* 8871 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3813 | /* 8874 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 3814 | /* 8877 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3815 | /* 8879 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3816 | /* 8882 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3817 | /* 8884 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3818 | /* 8887 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3819 | /* 8892 */ // GIR_Coverage, 2165, |
| 3820 | /* 8892 */ GIR_EraseRootFromParent_Done, |
| 3821 | /* 8893 */ // Label 388: @8893 |
| 3822 | /* 8893 */ GIM_Try, /*On fail goto*//*Label 389*/ GIMT_Encode4(8970), // Rule ID 2169 // |
| 3823 | /* 8898 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3824 | /* 8901 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3825 | /* 8904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3826 | /* 8908 */ // (bitconvert:{ *:[v4i32] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3827 | /* 8908 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3828 | /* 8911 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3829 | /* 8915 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3830 | /* 8920 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3831 | /* 8924 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3832 | /* 8929 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3833 | /* 8932 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3834 | /* 8936 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3835 | /* 8941 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3836 | /* 8944 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3837 | /* 8954 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3838 | /* 8956 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3839 | /* 8959 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3840 | /* 8961 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3841 | /* 8964 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3842 | /* 8969 */ // GIR_Coverage, 2169, |
| 3843 | /* 8969 */ GIR_EraseRootFromParent_Done, |
| 3844 | /* 8970 */ // Label 389: @8970 |
| 3845 | /* 8970 */ GIM_Try, /*On fail goto*//*Label 390*/ GIMT_Encode4(9047), // Rule ID 2170 // |
| 3846 | /* 8975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3847 | /* 8978 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3848 | /* 8981 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3849 | /* 8985 */ // (bitconvert:{ *:[v4f32] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3850 | /* 8985 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3851 | /* 8988 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3852 | /* 8992 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3853 | /* 8997 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3854 | /* 9001 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3855 | /* 9006 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3856 | /* 9009 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3857 | /* 9013 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3858 | /* 9018 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3859 | /* 9021 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3860 | /* 9031 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3861 | /* 9033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3862 | /* 9036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3863 | /* 9038 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3864 | /* 9041 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3865 | /* 9046 */ // GIR_Coverage, 2170, |
| 3866 | /* 9046 */ GIR_EraseRootFromParent_Done, |
| 3867 | /* 9047 */ // Label 390: @9047 |
| 3868 | /* 9047 */ GIM_Try, /*On fail goto*//*Label 391*/ GIMT_Encode4(9124), // Rule ID 2174 // |
| 3869 | /* 9052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3870 | /* 9055 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3871 | /* 9058 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3872 | /* 9062 */ // (bitconvert:{ *:[v4i32] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8f16:{ *:[v8f16] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3873 | /* 9062 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3874 | /* 9065 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3875 | /* 9069 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3876 | /* 9074 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3877 | /* 9078 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3878 | /* 9083 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3879 | /* 9086 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3880 | /* 9090 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3881 | /* 9095 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3882 | /* 9098 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3883 | /* 9108 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3884 | /* 9110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3885 | /* 9113 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3886 | /* 9115 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3887 | /* 9118 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3888 | /* 9123 */ // GIR_Coverage, 2174, |
| 3889 | /* 9123 */ GIR_EraseRootFromParent_Done, |
| 3890 | /* 9124 */ // Label 391: @9124 |
| 3891 | /* 9124 */ GIM_Try, /*On fail goto*//*Label 392*/ GIMT_Encode4(9201), // Rule ID 2175 // |
| 3892 | /* 9129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3893 | /* 9132 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 3894 | /* 9135 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3895 | /* 9139 */ // (bitconvert:{ *:[v4f32] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v8f16:{ *:[v8f16] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3896 | /* 9139 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 3897 | /* 9142 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3898 | /* 9146 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3899 | /* 9151 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3900 | /* 9155 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 3901 | /* 9160 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 3902 | /* 9163 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 3903 | /* 9167 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3904 | /* 9172 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3905 | /* 9175 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3906 | /* 9185 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3907 | /* 9187 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3908 | /* 9190 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3909 | /* 9192 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3910 | /* 9195 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3911 | /* 9200 */ // GIR_Coverage, 2175, |
| 3912 | /* 9200 */ GIR_EraseRootFromParent_Done, |
| 3913 | /* 9201 */ // Label 392: @9201 |
| 3914 | /* 9201 */ GIM_Try, /*On fail goto*//*Label 393*/ GIMT_Encode4(9278), // Rule ID 2191 // |
| 3915 | /* 9206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3916 | /* 9209 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3917 | /* 9212 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3918 | /* 9216 */ // (bitconvert:{ *:[v4i32] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v2i64:{ *:[v2i64] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3919 | /* 9216 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3920 | /* 9219 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3921 | /* 9223 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3922 | /* 9228 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3923 | /* 9232 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3924 | /* 9237 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3925 | /* 9240 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3926 | /* 9244 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3927 | /* 9249 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3928 | /* 9252 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3929 | /* 9262 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3930 | /* 9264 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3931 | /* 9267 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3932 | /* 9269 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3933 | /* 9272 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3934 | /* 9277 */ // GIR_Coverage, 2191, |
| 3935 | /* 9277 */ GIR_EraseRootFromParent_Done, |
| 3936 | /* 9278 */ // Label 393: @9278 |
| 3937 | /* 9278 */ GIM_Try, /*On fail goto*//*Label 394*/ GIMT_Encode4(9355), // Rule ID 2192 // |
| 3938 | /* 9283 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3939 | /* 9286 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3940 | /* 9289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3941 | /* 9293 */ // (bitconvert:{ *:[v4f32] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v2i64:{ *:[v2i64] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3942 | /* 9293 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3943 | /* 9296 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3944 | /* 9300 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3945 | /* 9305 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3946 | /* 9309 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3947 | /* 9314 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3948 | /* 9317 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3949 | /* 9321 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3950 | /* 9326 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3951 | /* 9329 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3952 | /* 9339 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3953 | /* 9341 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3954 | /* 9344 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3955 | /* 9346 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3956 | /* 9349 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3957 | /* 9354 */ // GIR_Coverage, 2192, |
| 3958 | /* 9354 */ GIR_EraseRootFromParent_Done, |
| 3959 | /* 9355 */ // Label 394: @9355 |
| 3960 | /* 9355 */ GIM_Try, /*On fail goto*//*Label 395*/ GIMT_Encode4(9432), // Rule ID 2196 // |
| 3961 | /* 9360 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3962 | /* 9363 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3963 | /* 9366 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3964 | /* 9370 */ // (bitconvert:{ *:[v4i32] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v2f64:{ *:[v2f64] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3965 | /* 9370 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3966 | /* 9373 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3967 | /* 9377 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3968 | /* 9382 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3969 | /* 9386 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3970 | /* 9391 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3971 | /* 9394 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3972 | /* 9398 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3973 | /* 9403 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3974 | /* 9406 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3975 | /* 9416 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3976 | /* 9418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3977 | /* 9421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 3978 | /* 9423 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 3979 | /* 9426 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3980 | /* 9431 */ // GIR_Coverage, 2196, |
| 3981 | /* 9431 */ GIR_EraseRootFromParent_Done, |
| 3982 | /* 9432 */ // Label 395: @9432 |
| 3983 | /* 9432 */ GIM_Try, /*On fail goto*//*Label 396*/ GIMT_Encode4(9509), // Rule ID 2197 // |
| 3984 | /* 9437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 3985 | /* 9440 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 3986 | /* 9443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3987 | /* 9447 */ // (bitconvert:{ *:[v4f32] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v4f32] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } v2f64:{ *:[v2f64] }:$src, MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128W:{ *:[i32] }) |
| 3988 | /* 9447 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 3989 | /* 9450 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 3990 | /* 9454 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3991 | /* 9459 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 3992 | /* 9463 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 3993 | /* 9468 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 3994 | /* 9471 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 3995 | /* 9475 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 3996 | /* 9480 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 3997 | /* 9483 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 3998 | /* 9493 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 3999 | /* 9495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4000 | /* 9498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4001 | /* 9500 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4002 | /* 9503 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 4003 | /* 9508 */ // GIR_Coverage, 2197, |
| 4004 | /* 9508 */ GIR_EraseRootFromParent_Done, |
| 4005 | /* 9509 */ // Label 396: @9509 |
| 4006 | /* 9509 */ GIM_Reject, |
| 4007 | /* 9510 */ // Label 331: @9510 |
| 4008 | /* 9510 */ GIM_Try, /*On fail goto*//*Label 397*/ GIMT_Encode4(9536), // Rule ID 2125 // |
| 4009 | /* 9515 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 4010 | /* 9518 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4011 | /* 9521 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4012 | /* 9525 */ // (bitconvert:{ *:[v8i16] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } v8f16:{ *:[v8f16] }:$src, MSA128H:{ *:[i32] }) |
| 4013 | /* 9525 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4014 | /* 9530 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4015 | /* 9535 */ // GIR_Coverage, 2125, |
| 4016 | /* 9535 */ GIR_Done, |
| 4017 | /* 9536 */ // Label 397: @9536 |
| 4018 | /* 9536 */ GIM_Try, /*On fail goto*//*Label 398*/ GIMT_Encode4(9562), // Rule ID 2128 // |
| 4019 | /* 9541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 4020 | /* 9544 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4021 | /* 9547 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4022 | /* 9551 */ // (bitconvert:{ *:[v8f16] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v8f16] } v8i16:{ *:[v8i16] }:$src, MSA128H:{ *:[i32] }) |
| 4023 | /* 9551 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4024 | /* 9556 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4025 | /* 9561 */ // GIR_Coverage, 2128, |
| 4026 | /* 9561 */ GIR_Done, |
| 4027 | /* 9562 */ // Label 398: @9562 |
| 4028 | /* 9562 */ GIM_Try, /*On fail goto*//*Label 399*/ GIMT_Encode4(9588), // Rule ID 2137 // |
| 4029 | /* 9567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4030 | /* 9570 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 4031 | /* 9573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4032 | /* 9577 */ // (bitconvert:{ *:[v8i16] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } v16i8:{ *:[v16i8] }:$src, MSA128H:{ *:[i32] }) |
| 4033 | /* 9577 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4034 | /* 9582 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4035 | /* 9587 */ // GIR_Coverage, 2137, |
| 4036 | /* 9587 */ GIR_Done, |
| 4037 | /* 9588 */ // Label 399: @9588 |
| 4038 | /* 9588 */ GIM_Try, /*On fail goto*//*Label 400*/ GIMT_Encode4(9614), // Rule ID 2138 // |
| 4039 | /* 9593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4040 | /* 9596 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4041 | /* 9599 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4042 | /* 9603 */ // (bitconvert:{ *:[v8i16] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } v4i32:{ *:[v4i32] }:$src, MSA128H:{ *:[i32] }) |
| 4043 | /* 9603 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4044 | /* 9608 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4045 | /* 9613 */ // GIR_Coverage, 2138, |
| 4046 | /* 9613 */ GIR_Done, |
| 4047 | /* 9614 */ // Label 400: @9614 |
| 4048 | /* 9614 */ GIM_Try, /*On fail goto*//*Label 401*/ GIMT_Encode4(9640), // Rule ID 2139 // |
| 4049 | /* 9619 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4050 | /* 9622 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4051 | /* 9625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4052 | /* 9629 */ // (bitconvert:{ *:[v8i16] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } v2i64:{ *:[v2i64] }:$src, MSA128H:{ *:[i32] }) |
| 4053 | /* 9629 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4054 | /* 9634 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4055 | /* 9639 */ // GIR_Coverage, 2139, |
| 4056 | /* 9639 */ GIR_Done, |
| 4057 | /* 9640 */ // Label 401: @9640 |
| 4058 | /* 9640 */ GIM_Try, /*On fail goto*//*Label 402*/ GIMT_Encode4(9666), // Rule ID 2140 // |
| 4059 | /* 9645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4060 | /* 9648 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4061 | /* 9651 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4062 | /* 9655 */ // (bitconvert:{ *:[v8i16] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } v4f32:{ *:[v4f32] }:$src, MSA128H:{ *:[i32] }) |
| 4063 | /* 9655 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4064 | /* 9660 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4065 | /* 9665 */ // GIR_Coverage, 2140, |
| 4066 | /* 9665 */ GIR_Done, |
| 4067 | /* 9666 */ // Label 402: @9666 |
| 4068 | /* 9666 */ GIM_Try, /*On fail goto*//*Label 403*/ GIMT_Encode4(9692), // Rule ID 2141 // |
| 4069 | /* 9671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4070 | /* 9674 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4071 | /* 9677 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4072 | /* 9681 */ // (bitconvert:{ *:[v8i16] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } v2f64:{ *:[v2f64] }:$src, MSA128H:{ *:[i32] }) |
| 4073 | /* 9681 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4074 | /* 9686 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4075 | /* 9691 */ // GIR_Coverage, 2141, |
| 4076 | /* 9691 */ GIR_Done, |
| 4077 | /* 9692 */ // Label 403: @9692 |
| 4078 | /* 9692 */ GIM_Try, /*On fail goto*//*Label 404*/ GIMT_Encode4(9769), // Rule ID 2162 // |
| 4079 | /* 9697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4080 | /* 9700 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 4081 | /* 9703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4082 | /* 9707 */ // (bitconvert:{ *:[v8i16] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$src, MSA128B:{ *:[i32] }), 177:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4083 | /* 9707 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 4084 | /* 9710 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4085 | /* 9714 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4086 | /* 9719 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4087 | /* 9723 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4088 | /* 9728 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 4089 | /* 9731 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4090 | /* 9735 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4091 | /* 9740 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4092 | /* 9743 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4093 | /* 9753 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4094 | /* 9755 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4095 | /* 9758 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4096 | /* 9760 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4097 | /* 9763 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4098 | /* 9768 */ // GIR_Coverage, 2162, |
| 4099 | /* 9768 */ GIR_EraseRootFromParent_Done, |
| 4100 | /* 9769 */ // Label 404: @9769 |
| 4101 | /* 9769 */ GIM_Try, /*On fail goto*//*Label 405*/ GIMT_Encode4(9846), // Rule ID 2163 // |
| 4102 | /* 9774 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4103 | /* 9777 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 4104 | /* 9780 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4105 | /* 9784 */ // (bitconvert:{ *:[v8f16] } v16i8:{ *:[v16i8] }:$src) => (COPY_TO_REGCLASS:{ *:[v8f16] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$src, MSA128B:{ *:[i32] }), 177:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4106 | /* 9784 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 4107 | /* 9787 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4108 | /* 9791 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4109 | /* 9796 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4110 | /* 9800 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4111 | /* 9805 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 4112 | /* 9808 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4113 | /* 9812 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4114 | /* 9817 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4115 | /* 9820 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4116 | /* 9830 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4117 | /* 9832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4118 | /* 9835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4119 | /* 9837 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4120 | /* 9840 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4121 | /* 9845 */ // GIR_Coverage, 2163, |
| 4122 | /* 9845 */ GIR_EraseRootFromParent_Done, |
| 4123 | /* 9846 */ // Label 405: @9846 |
| 4124 | /* 9846 */ GIM_Try, /*On fail goto*//*Label 406*/ GIMT_Encode4(9923), // Rule ID 2179 // |
| 4125 | /* 9851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4126 | /* 9854 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4127 | /* 9857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4128 | /* 9861 */ // (bitconvert:{ *:[v8i16] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v4i32:{ *:[v4i32] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4129 | /* 9861 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4130 | /* 9864 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4131 | /* 9868 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4132 | /* 9873 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4133 | /* 9877 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4134 | /* 9882 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4135 | /* 9885 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4136 | /* 9889 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4137 | /* 9894 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4138 | /* 9897 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4139 | /* 9907 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4140 | /* 9909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4141 | /* 9912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4142 | /* 9914 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4143 | /* 9917 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4144 | /* 9922 */ // GIR_Coverage, 2179, |
| 4145 | /* 9922 */ GIR_EraseRootFromParent_Done, |
| 4146 | /* 9923 */ // Label 406: @9923 |
| 4147 | /* 9923 */ GIM_Try, /*On fail goto*//*Label 407*/ GIMT_Encode4(10000), // Rule ID 2180 // |
| 4148 | /* 9928 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4149 | /* 9931 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4150 | /* 9934 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4151 | /* 9938 */ // (bitconvert:{ *:[v8f16] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v8f16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v4i32:{ *:[v4i32] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4152 | /* 9938 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4153 | /* 9941 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4154 | /* 9945 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4155 | /* 9950 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4156 | /* 9954 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4157 | /* 9959 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4158 | /* 9962 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4159 | /* 9966 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4160 | /* 9971 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4161 | /* 9974 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4162 | /* 9984 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4163 | /* 9986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4164 | /* 9989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4165 | /* 9991 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4166 | /* 9994 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4167 | /* 9999 */ // GIR_Coverage, 2180, |
| 4168 | /* 9999 */ GIR_EraseRootFromParent_Done, |
| 4169 | /* 10000 */ // Label 407: @10000 |
| 4170 | /* 10000 */ GIM_Try, /*On fail goto*//*Label 408*/ GIMT_Encode4(10077), // Rule ID 2184 // |
| 4171 | /* 10005 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4172 | /* 10008 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4173 | /* 10011 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4174 | /* 10015 */ // (bitconvert:{ *:[v8i16] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v4f32:{ *:[v4f32] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4175 | /* 10015 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4176 | /* 10018 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4177 | /* 10022 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4178 | /* 10027 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4179 | /* 10031 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4180 | /* 10036 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4181 | /* 10039 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4182 | /* 10043 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4183 | /* 10048 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4184 | /* 10051 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4185 | /* 10061 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4186 | /* 10063 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4187 | /* 10066 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4188 | /* 10068 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4189 | /* 10071 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4190 | /* 10076 */ // GIR_Coverage, 2184, |
| 4191 | /* 10076 */ GIR_EraseRootFromParent_Done, |
| 4192 | /* 10077 */ // Label 408: @10077 |
| 4193 | /* 10077 */ GIM_Try, /*On fail goto*//*Label 409*/ GIMT_Encode4(10154), // Rule ID 2185 // |
| 4194 | /* 10082 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4195 | /* 10085 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4196 | /* 10088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4197 | /* 10092 */ // (bitconvert:{ *:[v8f16] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v8f16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v4f32:{ *:[v4f32] }:$src, MSA128H:{ *:[i32] }), 177:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4198 | /* 10092 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4199 | /* 10095 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4200 | /* 10099 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4201 | /* 10104 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4202 | /* 10108 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4203 | /* 10113 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4204 | /* 10116 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4205 | /* 10120 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4206 | /* 10125 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4207 | /* 10128 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4208 | /* 10138 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4209 | /* 10140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4210 | /* 10143 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4211 | /* 10145 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4212 | /* 10148 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4213 | /* 10153 */ // GIR_Coverage, 2185, |
| 4214 | /* 10153 */ GIR_EraseRootFromParent_Done, |
| 4215 | /* 10154 */ // Label 409: @10154 |
| 4216 | /* 10154 */ GIM_Try, /*On fail goto*//*Label 410*/ GIMT_Encode4(10224), // Rule ID 2189 // |
| 4217 | /* 10159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4218 | /* 10162 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4219 | /* 10165 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4220 | /* 10169 */ // (bitconvert:{ *:[v8i16] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v2i64:{ *:[v2i64] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4221 | /* 10169 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4222 | /* 10172 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4223 | /* 10176 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4224 | /* 10181 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4225 | /* 10185 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4226 | /* 10190 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4227 | /* 10193 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4228 | /* 10197 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4229 | /* 10202 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4230 | /* 10205 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 4231 | /* 10208 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4232 | /* 10210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4233 | /* 10213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4234 | /* 10215 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4235 | /* 10218 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4236 | /* 10223 */ // GIR_Coverage, 2189, |
| 4237 | /* 10223 */ GIR_EraseRootFromParent_Done, |
| 4238 | /* 10224 */ // Label 410: @10224 |
| 4239 | /* 10224 */ GIM_Try, /*On fail goto*//*Label 411*/ GIMT_Encode4(10294), // Rule ID 2190 // |
| 4240 | /* 10229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4241 | /* 10232 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4242 | /* 10235 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4243 | /* 10239 */ // (bitconvert:{ *:[v8f16] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v8f16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v2i64:{ *:[v2i64] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4244 | /* 10239 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4245 | /* 10242 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4246 | /* 10246 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4247 | /* 10251 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4248 | /* 10255 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4249 | /* 10260 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4250 | /* 10263 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4251 | /* 10267 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4252 | /* 10272 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4253 | /* 10275 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 4254 | /* 10278 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4255 | /* 10280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4256 | /* 10283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4257 | /* 10285 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4258 | /* 10288 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4259 | /* 10293 */ // GIR_Coverage, 2190, |
| 4260 | /* 10293 */ GIR_EraseRootFromParent_Done, |
| 4261 | /* 10294 */ // Label 411: @10294 |
| 4262 | /* 10294 */ GIM_Try, /*On fail goto*//*Label 412*/ GIMT_Encode4(10364), // Rule ID 2194 // |
| 4263 | /* 10299 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4264 | /* 10302 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4265 | /* 10305 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4266 | /* 10309 */ // (bitconvert:{ *:[v8i16] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v8i16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v2f64:{ *:[v2f64] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4267 | /* 10309 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4268 | /* 10312 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4269 | /* 10316 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4270 | /* 10321 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4271 | /* 10325 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4272 | /* 10330 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4273 | /* 10333 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4274 | /* 10337 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4275 | /* 10342 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4276 | /* 10345 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 4277 | /* 10348 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4278 | /* 10350 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4279 | /* 10353 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4280 | /* 10355 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4281 | /* 10358 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4282 | /* 10363 */ // GIR_Coverage, 2194, |
| 4283 | /* 10363 */ GIR_EraseRootFromParent_Done, |
| 4284 | /* 10364 */ // Label 412: @10364 |
| 4285 | /* 10364 */ GIM_Try, /*On fail goto*//*Label 413*/ GIMT_Encode4(10434), // Rule ID 2195 // |
| 4286 | /* 10369 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4287 | /* 10372 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4288 | /* 10375 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4289 | /* 10379 */ // (bitconvert:{ *:[v8f16] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v8f16] } (SHF_H:{ *:[v8i16] } (COPY_TO_REGCLASS:{ *:[v8i16] } v2f64:{ *:[v2f64] }:$src, MSA128H:{ *:[i32] }), 27:{ *:[i32] }), MSA128H:{ *:[i32] }) |
| 4290 | /* 10379 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v8s16, |
| 4291 | /* 10382 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4292 | /* 10386 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4293 | /* 10391 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4294 | /* 10395 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4295 | /* 10400 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v8s16, |
| 4296 | /* 10403 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_H), |
| 4297 | /* 10407 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4298 | /* 10412 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4299 | /* 10415 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 4300 | /* 10418 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4301 | /* 10420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4302 | /* 10423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4303 | /* 10425 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4304 | /* 10428 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128HRegClassID), |
| 4305 | /* 10433 */ // GIR_Coverage, 2195, |
| 4306 | /* 10433 */ GIR_EraseRootFromParent_Done, |
| 4307 | /* 10434 */ // Label 413: @10434 |
| 4308 | /* 10434 */ GIM_Reject, |
| 4309 | /* 10435 */ // Label 332: @10435 |
| 4310 | /* 10435 */ GIM_Try, /*On fail goto*//*Label 414*/ GIMT_Encode4(10461), // Rule ID 2131 // |
| 4311 | /* 10440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4312 | /* 10443 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4313 | /* 10446 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4314 | /* 10450 */ // (bitconvert:{ *:[v16i8] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } v8i16:{ *:[v8i16] }:$src, MSA128B:{ *:[i32] }) |
| 4315 | /* 10450 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4316 | /* 10455 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4317 | /* 10460 */ // GIR_Coverage, 2131, |
| 4318 | /* 10460 */ GIR_Done, |
| 4319 | /* 10461 */ // Label 414: @10461 |
| 4320 | /* 10461 */ GIM_Try, /*On fail goto*//*Label 415*/ GIMT_Encode4(10487), // Rule ID 2132 // |
| 4321 | /* 10466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4322 | /* 10469 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4323 | /* 10472 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4324 | /* 10476 */ // (bitconvert:{ *:[v16i8] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } v4i32:{ *:[v4i32] }:$src, MSA128B:{ *:[i32] }) |
| 4325 | /* 10476 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4326 | /* 10481 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4327 | /* 10486 */ // GIR_Coverage, 2132, |
| 4328 | /* 10486 */ GIR_Done, |
| 4329 | /* 10487 */ // Label 415: @10487 |
| 4330 | /* 10487 */ GIM_Try, /*On fail goto*//*Label 416*/ GIMT_Encode4(10513), // Rule ID 2133 // |
| 4331 | /* 10492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4332 | /* 10495 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4333 | /* 10498 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4334 | /* 10502 */ // (bitconvert:{ *:[v16i8] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } v2i64:{ *:[v2i64] }:$src, MSA128B:{ *:[i32] }) |
| 4335 | /* 10502 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4336 | /* 10507 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4337 | /* 10512 */ // GIR_Coverage, 2133, |
| 4338 | /* 10512 */ GIR_Done, |
| 4339 | /* 10513 */ // Label 416: @10513 |
| 4340 | /* 10513 */ GIM_Try, /*On fail goto*//*Label 417*/ GIMT_Encode4(10539), // Rule ID 2134 // |
| 4341 | /* 10518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4342 | /* 10521 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4343 | /* 10524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4344 | /* 10528 */ // (bitconvert:{ *:[v16i8] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } v8f16:{ *:[v8f16] }:$src, MSA128B:{ *:[i32] }) |
| 4345 | /* 10528 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4346 | /* 10533 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4347 | /* 10538 */ // GIR_Coverage, 2134, |
| 4348 | /* 10538 */ GIR_Done, |
| 4349 | /* 10539 */ // Label 417: @10539 |
| 4350 | /* 10539 */ GIM_Try, /*On fail goto*//*Label 418*/ GIMT_Encode4(10565), // Rule ID 2135 // |
| 4351 | /* 10544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4352 | /* 10547 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4353 | /* 10550 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4354 | /* 10554 */ // (bitconvert:{ *:[v16i8] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } v4f32:{ *:[v4f32] }:$src, MSA128B:{ *:[i32] }) |
| 4355 | /* 10554 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4356 | /* 10559 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4357 | /* 10564 */ // GIR_Coverage, 2135, |
| 4358 | /* 10564 */ GIR_Done, |
| 4359 | /* 10565 */ // Label 418: @10565 |
| 4360 | /* 10565 */ GIM_Try, /*On fail goto*//*Label 419*/ GIMT_Encode4(10591), // Rule ID 2136 // |
| 4361 | /* 10570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsLE), |
| 4362 | /* 10573 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4363 | /* 10576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4364 | /* 10580 */ // (bitconvert:{ *:[v16i8] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } v2f64:{ *:[v2f64] }:$src, MSA128B:{ *:[i32] }) |
| 4365 | /* 10580 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4366 | /* 10585 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4367 | /* 10590 */ // GIR_Coverage, 2136, |
| 4368 | /* 10590 */ GIR_Done, |
| 4369 | /* 10591 */ // Label 419: @10591 |
| 4370 | /* 10591 */ GIM_Try, /*On fail goto*//*Label 420*/ GIMT_Encode4(10668), // Rule ID 2168 // |
| 4371 | /* 10596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4372 | /* 10599 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4373 | /* 10602 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4374 | /* 10606 */ // (bitconvert:{ *:[v16i8] } v8i16:{ *:[v8i16] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v8i16:{ *:[v8i16] }:$src, MSA128B:{ *:[i32] }), 177:{ *:[i32] }), MSA128B:{ *:[i32] }) |
| 4375 | /* 10606 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 4376 | /* 10609 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4377 | /* 10613 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4378 | /* 10618 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4379 | /* 10622 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4380 | /* 10627 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 4381 | /* 10630 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4382 | /* 10634 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4383 | /* 10639 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4384 | /* 10642 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4385 | /* 10652 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4386 | /* 10654 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4387 | /* 10657 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4388 | /* 10659 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4389 | /* 10662 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4390 | /* 10667 */ // GIR_Coverage, 2168, |
| 4391 | /* 10667 */ GIR_EraseRootFromParent_Done, |
| 4392 | /* 10668 */ // Label 420: @10668 |
| 4393 | /* 10668 */ GIM_Try, /*On fail goto*//*Label 421*/ GIMT_Encode4(10745), // Rule ID 2173 // |
| 4394 | /* 10673 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4395 | /* 10676 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 4396 | /* 10679 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4397 | /* 10683 */ // (bitconvert:{ *:[v16i8] } v8f16:{ *:[v8f16] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v8f16:{ *:[v8f16] }:$src, MSA128B:{ *:[i32] }), 177:{ *:[i32] }), MSA128B:{ *:[i32] }) |
| 4398 | /* 10683 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 4399 | /* 10686 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4400 | /* 10690 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4401 | /* 10695 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4402 | /* 10699 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4403 | /* 10704 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 4404 | /* 10707 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4405 | /* 10711 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4406 | /* 10716 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4407 | /* 10719 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4408 | /* 10729 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4409 | /* 10731 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4410 | /* 10734 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4411 | /* 10736 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4412 | /* 10739 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4413 | /* 10744 */ // GIR_Coverage, 2173, |
| 4414 | /* 10744 */ GIR_EraseRootFromParent_Done, |
| 4415 | /* 10745 */ // Label 421: @10745 |
| 4416 | /* 10745 */ GIM_Try, /*On fail goto*//*Label 422*/ GIMT_Encode4(10815), // Rule ID 2178 // |
| 4417 | /* 10750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4418 | /* 10753 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4419 | /* 10756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4420 | /* 10760 */ // (bitconvert:{ *:[v16i8] } v4i32:{ *:[v4i32] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v4i32:{ *:[v4i32] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128B:{ *:[i32] }) |
| 4421 | /* 10760 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 4422 | /* 10763 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4423 | /* 10767 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4424 | /* 10772 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4425 | /* 10776 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4426 | /* 10781 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 4427 | /* 10784 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4428 | /* 10788 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4429 | /* 10793 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4430 | /* 10796 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 4431 | /* 10799 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4432 | /* 10801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4433 | /* 10804 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4434 | /* 10806 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4435 | /* 10809 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4436 | /* 10814 */ // GIR_Coverage, 2178, |
| 4437 | /* 10814 */ GIR_EraseRootFromParent_Done, |
| 4438 | /* 10815 */ // Label 422: @10815 |
| 4439 | /* 10815 */ GIM_Try, /*On fail goto*//*Label 423*/ GIMT_Encode4(10885), // Rule ID 2183 // |
| 4440 | /* 10820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4441 | /* 10823 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 4442 | /* 10826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4443 | /* 10830 */ // (bitconvert:{ *:[v16i8] } v4f32:{ *:[v4f32] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v4f32:{ *:[v4f32] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128B:{ *:[i32] }) |
| 4444 | /* 10830 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v16s8, |
| 4445 | /* 10833 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4446 | /* 10837 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4447 | /* 10842 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4448 | /* 10846 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4449 | /* 10851 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v16s8, |
| 4450 | /* 10854 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4451 | /* 10858 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4452 | /* 10863 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4453 | /* 10866 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/27, |
| 4454 | /* 10869 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4455 | /* 10871 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4456 | /* 10874 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4457 | /* 10876 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4458 | /* 10879 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4459 | /* 10884 */ // GIR_Coverage, 2183, |
| 4460 | /* 10884 */ GIR_EraseRootFromParent_Done, |
| 4461 | /* 10885 */ // Label 423: @10885 |
| 4462 | /* 10885 */ GIM_Try, /*On fail goto*//*Label 424*/ GIMT_Encode4(11002), // Rule ID 2188 // |
| 4463 | /* 10890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4464 | /* 10893 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4465 | /* 10896 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4466 | /* 10900 */ // (bitconvert:{ *:[v16i8] } v2i64:{ *:[v2i64] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v2i64:{ *:[v2i64] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128B:{ *:[i32] }) |
| 4467 | /* 10900 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s8, |
| 4468 | /* 10903 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4469 | /* 10907 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4470 | /* 10912 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4471 | /* 10916 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4472 | /* 10921 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s8, |
| 4473 | /* 10924 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4474 | /* 10928 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4475 | /* 10933 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 4476 | /* 10936 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/27, |
| 4477 | /* 10939 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 4478 | /* 10941 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 4479 | /* 10944 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4480 | /* 10948 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4481 | /* 10953 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 4482 | /* 10956 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 4483 | /* 10961 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 4484 | /* 10964 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 4485 | /* 10968 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4486 | /* 10973 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4487 | /* 10976 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4488 | /* 10986 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4489 | /* 10988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4490 | /* 10991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4491 | /* 10993 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4492 | /* 10996 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4493 | /* 11001 */ // GIR_Coverage, 2188, |
| 4494 | /* 11001 */ GIR_EraseRootFromParent_Done, |
| 4495 | /* 11002 */ // Label 424: @11002 |
| 4496 | /* 11002 */ GIM_Try, /*On fail goto*//*Label 425*/ GIMT_Encode4(11119), // Rule ID 2193 // |
| 4497 | /* 11007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_IsBE), |
| 4498 | /* 11010 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 4499 | /* 11013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4500 | /* 11017 */ // (bitconvert:{ *:[v16i8] } v2f64:{ *:[v2f64] }:$src) => (COPY_TO_REGCLASS:{ *:[v16i8] } (SHF_W:{ *:[v4i32] } (COPY_TO_REGCLASS:{ *:[v4i32] } (SHF_B:{ *:[v16i8] } (COPY_TO_REGCLASS:{ *:[v16i8] } v2f64:{ *:[v2f64] }:$src, MSA128B:{ *:[i32] }), 27:{ *:[i32] }), MSA128W:{ *:[i32] }), 177:{ *:[i32] }), MSA128B:{ *:[i32] }) |
| 4501 | /* 11017 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_v16s8, |
| 4502 | /* 11020 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4503 | /* 11024 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4504 | /* 11029 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 4505 | /* 11033 */ GIR_ConstrainOperandRC, /*InsnID*/4, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4506 | /* 11038 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_v16s8, |
| 4507 | /* 11041 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(Mips::SHF_B), |
| 4508 | /* 11045 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4509 | /* 11050 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 4510 | /* 11053 */ GIR_AddImm8, /*InsnID*/3, /*Imm*/27, |
| 4511 | /* 11056 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 4512 | /* 11058 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_v4s32, |
| 4513 | /* 11061 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4514 | /* 11065 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4515 | /* 11070 */ GIR_AddSimpleTempRegister, /*InsnID*/2, /*TempRegID*/2, |
| 4516 | /* 11073 */ GIR_ConstrainOperandRC, /*InsnID*/2, /*Op*/0, GIMT_Encode2(Mips::MSA128WRegClassID), |
| 4517 | /* 11078 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_v4s32, |
| 4518 | /* 11081 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SHF_W), |
| 4519 | /* 11085 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 4520 | /* 11090 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 4521 | /* 11093 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(177), |
| 4522 | /* 11103 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 4523 | /* 11105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 4524 | /* 11108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 4525 | /* 11110 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 4526 | /* 11113 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::MSA128BRegClassID), |
| 4527 | /* 11118 */ // GIR_Coverage, 2193, |
| 4528 | /* 11118 */ GIR_EraseRootFromParent_Done, |
| 4529 | /* 11119 */ // Label 425: @11119 |
| 4530 | /* 11119 */ GIM_Reject, |
| 4531 | /* 11120 */ // Label 333: @11120 |
| 4532 | /* 11120 */ GIM_Reject, |
| 4533 | /* 11121 */ // Label 13: @11121 |
| 4534 | /* 11121 */ GIM_Try, /*On fail goto*//*Label 426*/ GIMT_Encode4(11185), // Rule ID 2116 // |
| 4535 | /* 11126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 4536 | /* 11129 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 4537 | /* 11132 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4538 | /* 11135 */ GIM_CheckMemorySizeEqualToLLT, /*MI*/0, /*MMO*/0, /*OpIdx*/0, |
| 4539 | /* 11139 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4540 | /* 11143 */ // MIs[0] Operand 1 |
| 4541 | /* 11143 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 4542 | /* 11147 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4543 | /* 11151 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 4544 | /* 11155 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 4545 | /* 11159 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 4546 | /* 11163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4547 | /* 11165 */ // (ld:{ *:[i32] } (add:{ *:[i32] } i32:{ *:[i32] }:$base, i32:{ *:[i32] }:$index))<<P:Predicate_unindexedload>><<P:Predicate_load>> => (LWX:{ *:[i32] } i32:{ *:[i32] }:$base, i32:{ *:[i32] }:$index) |
| 4548 | /* 11165 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LWX), |
| 4549 | /* 11168 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 4550 | /* 11170 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // base |
| 4551 | /* 11174 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // index |
| 4552 | /* 11178 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4553 | /* 11183 */ GIR_RootConstrainSelectedInstOperands, |
| 4554 | /* 11184 */ // GIR_Coverage, 2116, |
| 4555 | /* 11184 */ GIR_EraseRootFromParent_Done, |
| 4556 | /* 11185 */ // Label 426: @11185 |
| 4557 | /* 11185 */ GIM_Reject, |
| 4558 | /* 11186 */ // Label 14: @11186 |
| 4559 | /* 11186 */ GIM_Try, /*On fail goto*//*Label 427*/ GIMT_Encode4(11253), // Rule ID 2115 // |
| 4560 | /* 11191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 4561 | /* 11194 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 4562 | /* 11197 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4563 | /* 11200 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 4564 | /* 11207 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4565 | /* 11211 */ // MIs[0] Operand 1 |
| 4566 | /* 11211 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 4567 | /* 11215 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4568 | /* 11219 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 4569 | /* 11223 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 4570 | /* 11227 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 4571 | /* 11231 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4572 | /* 11233 */ // (ld:{ *:[i32] } (add:{ *:[i32] } i32:{ *:[i32] }:$base, i32:{ *:[i32] }:$index))<<P:Predicate_unindexedload>><<P:Predicate_sextload>><<P:Predicate_sextloadi16>> => (LHX:{ *:[i32] } i32:{ *:[i32] }:$base, i32:{ *:[i32] }:$index) |
| 4573 | /* 11233 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LHX), |
| 4574 | /* 11236 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 4575 | /* 11238 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // base |
| 4576 | /* 11242 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // index |
| 4577 | /* 11246 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4578 | /* 11251 */ GIR_RootConstrainSelectedInstOperands, |
| 4579 | /* 11252 */ // GIR_Coverage, 2115, |
| 4580 | /* 11252 */ GIR_EraseRootFromParent_Done, |
| 4581 | /* 11253 */ // Label 427: @11253 |
| 4582 | /* 11253 */ GIM_Reject, |
| 4583 | /* 11254 */ // Label 15: @11254 |
| 4584 | /* 11254 */ GIM_Try, /*On fail goto*//*Label 428*/ GIMT_Encode4(11321), // Rule ID 2114 // |
| 4585 | /* 11259 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 4586 | /* 11262 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 4587 | /* 11265 */ GIM_CheckAtomicOrdering, /*MI*/0, /*Order*/(uint8_t)AtomicOrdering::NotAtomic, |
| 4588 | /* 11268 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 4589 | /* 11275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4590 | /* 11279 */ // MIs[0] Operand 1 |
| 4591 | /* 11279 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/32, |
| 4592 | /* 11283 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 4593 | /* 11287 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 4594 | /* 11291 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 4595 | /* 11295 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 4596 | /* 11299 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 4597 | /* 11301 */ // (ld:{ *:[i32] } (add:{ *:[i32] } i32:{ *:[i32] }:$base, i32:{ *:[i32] }:$index))<<P:Predicate_unindexedload>><<P:Predicate_zextload>><<P:Predicate_zextloadi8>> => (LBUX:{ *:[i32] } i32:{ *:[i32] }:$base, i32:{ *:[i32] }:$index) |
| 4598 | /* 11301 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LBUX), |
| 4599 | /* 11304 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 4600 | /* 11306 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // base |
| 4601 | /* 11310 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // index |
| 4602 | /* 11314 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 4603 | /* 11319 */ GIR_RootConstrainSelectedInstOperands, |
| 4604 | /* 11320 */ // GIR_Coverage, 2114, |
| 4605 | /* 11320 */ GIR_EraseRootFromParent_Done, |
| 4606 | /* 11321 */ // Label 428: @11321 |
| 4607 | /* 11321 */ GIM_Reject, |
| 4608 | /* 11322 */ // Label 16: @11322 |
| 4609 | /* 11322 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 431*/ GIMT_Encode4(11513), |
| 4610 | /* 11333 */ /*GILLT_s32*//*Label 429*/ GIMT_Encode4(11341), |
| 4611 | /* 11337 */ /*GILLT_s64*//*Label 430*/ GIMT_Encode4(11468), |
| 4612 | /* 11341 */ // Label 429: @11341 |
| 4613 | /* 11341 */ GIM_Try, /*On fail goto*//*Label 432*/ GIMT_Encode4(11467), |
| 4614 | /* 11346 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 4615 | /* 11349 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 4616 | /* 11352 */ GIM_Try, /*On fail goto*//*Label 433*/ GIMT_Encode4(11390), // Rule ID 25 // |
| 4617 | /* 11357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4618 | /* 11360 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 4619 | /* 11367 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4620 | /* 11371 */ // MIs[0] ptr |
| 4621 | /* 11371 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4622 | /* 11375 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4623 | /* 11379 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4624 | /* 11383 */ // (atomic_cmp_swap:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$cmp, GPR32:{ *:[i32] }:$swap)<<P:Predicate_atomic_cmp_swap_i8>> => (ATOMIC_CMP_SWAP_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$cmp, GPR32:{ *:[i32] }:$swap) |
| 4625 | /* 11383 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_CMP_SWAP_I8), |
| 4626 | /* 11388 */ GIR_RootConstrainSelectedInstOperands, |
| 4627 | /* 11389 */ // GIR_Coverage, 25, |
| 4628 | /* 11389 */ GIR_Done, |
| 4629 | /* 11390 */ // Label 433: @11390 |
| 4630 | /* 11390 */ GIM_Try, /*On fail goto*//*Label 434*/ GIMT_Encode4(11428), // Rule ID 26 // |
| 4631 | /* 11395 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4632 | /* 11398 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 4633 | /* 11405 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4634 | /* 11409 */ // MIs[0] ptr |
| 4635 | /* 11409 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4636 | /* 11413 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4637 | /* 11417 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4638 | /* 11421 */ // (atomic_cmp_swap:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$cmp, GPR32:{ *:[i32] }:$swap)<<P:Predicate_atomic_cmp_swap_i16>> => (ATOMIC_CMP_SWAP_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$cmp, GPR32:{ *:[i32] }:$swap) |
| 4639 | /* 11421 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_CMP_SWAP_I16), |
| 4640 | /* 11426 */ GIR_RootConstrainSelectedInstOperands, |
| 4641 | /* 11427 */ // GIR_Coverage, 26, |
| 4642 | /* 11427 */ GIR_Done, |
| 4643 | /* 11428 */ // Label 434: @11428 |
| 4644 | /* 11428 */ GIM_Try, /*On fail goto*//*Label 435*/ GIMT_Encode4(11466), // Rule ID 27 // |
| 4645 | /* 11433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4646 | /* 11436 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 4647 | /* 11443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4648 | /* 11447 */ // MIs[0] ptr |
| 4649 | /* 11447 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4650 | /* 11451 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4651 | /* 11455 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4652 | /* 11459 */ // (atomic_cmp_swap:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$cmp, GPR32:{ *:[i32] }:$swap)<<P:Predicate_atomic_cmp_swap_i32>> => (ATOMIC_CMP_SWAP_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$cmp, GPR32:{ *:[i32] }:$swap) |
| 4653 | /* 11459 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_CMP_SWAP_I32), |
| 4654 | /* 11464 */ GIR_RootConstrainSelectedInstOperands, |
| 4655 | /* 11465 */ // GIR_Coverage, 27, |
| 4656 | /* 11465 */ GIR_Done, |
| 4657 | /* 11466 */ // Label 435: @11466 |
| 4658 | /* 11466 */ GIM_Reject, |
| 4659 | /* 11467 */ // Label 432: @11467 |
| 4660 | /* 11467 */ GIM_Reject, |
| 4661 | /* 11468 */ // Label 430: @11468 |
| 4662 | /* 11468 */ GIM_Try, /*On fail goto*//*Label 436*/ GIMT_Encode4(11512), // Rule ID 266 // |
| 4663 | /* 11473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4664 | /* 11476 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 4665 | /* 11479 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 4666 | /* 11482 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 4667 | /* 11489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4668 | /* 11493 */ // MIs[0] ptr |
| 4669 | /* 11493 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4670 | /* 11497 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4671 | /* 11501 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4672 | /* 11505 */ // (atomic_cmp_swap:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$cmp, GPR64:{ *:[i64] }:$swap)<<P:Predicate_atomic_cmp_swap_i64>> => (ATOMIC_CMP_SWAP_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$cmp, GPR64:{ *:[i64] }:$swap) |
| 4673 | /* 11505 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_CMP_SWAP_I64), |
| 4674 | /* 11510 */ GIR_RootConstrainSelectedInstOperands, |
| 4675 | /* 11511 */ // GIR_Coverage, 266, |
| 4676 | /* 11511 */ GIR_Done, |
| 4677 | /* 11512 */ // Label 436: @11512 |
| 4678 | /* 11512 */ GIM_Reject, |
| 4679 | /* 11513 */ // Label 431: @11513 |
| 4680 | /* 11513 */ GIM_Reject, |
| 4681 | /* 11514 */ // Label 17: @11514 |
| 4682 | /* 11514 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 439*/ GIMT_Encode4(11683), |
| 4683 | /* 11525 */ /*GILLT_s32*//*Label 437*/ GIMT_Encode4(11533), |
| 4684 | /* 11529 */ /*GILLT_s64*//*Label 438*/ GIMT_Encode4(11645), |
| 4685 | /* 11533 */ // Label 437: @11533 |
| 4686 | /* 11533 */ GIM_Try, /*On fail goto*//*Label 440*/ GIMT_Encode4(11644), |
| 4687 | /* 11538 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 4688 | /* 11541 */ GIM_Try, /*On fail goto*//*Label 441*/ GIMT_Encode4(11575), // Rule ID 22 // |
| 4689 | /* 11546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4690 | /* 11549 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 4691 | /* 11556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4692 | /* 11560 */ // MIs[0] ptr |
| 4693 | /* 11560 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4694 | /* 11564 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4695 | /* 11568 */ // (atomic_swap:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_swap_i8>> => (ATOMIC_SWAP_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4696 | /* 11568 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_SWAP_I8), |
| 4697 | /* 11573 */ GIR_RootConstrainSelectedInstOperands, |
| 4698 | /* 11574 */ // GIR_Coverage, 22, |
| 4699 | /* 11574 */ GIR_Done, |
| 4700 | /* 11575 */ // Label 441: @11575 |
| 4701 | /* 11575 */ GIM_Try, /*On fail goto*//*Label 442*/ GIMT_Encode4(11609), // Rule ID 23 // |
| 4702 | /* 11580 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4703 | /* 11583 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 4704 | /* 11590 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4705 | /* 11594 */ // MIs[0] ptr |
| 4706 | /* 11594 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4707 | /* 11598 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4708 | /* 11602 */ // (atomic_swap:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_swap_i16>> => (ATOMIC_SWAP_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4709 | /* 11602 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_SWAP_I16), |
| 4710 | /* 11607 */ GIR_RootConstrainSelectedInstOperands, |
| 4711 | /* 11608 */ // GIR_Coverage, 23, |
| 4712 | /* 11608 */ GIR_Done, |
| 4713 | /* 11609 */ // Label 442: @11609 |
| 4714 | /* 11609 */ GIM_Try, /*On fail goto*//*Label 443*/ GIMT_Encode4(11643), // Rule ID 24 // |
| 4715 | /* 11614 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4716 | /* 11617 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 4717 | /* 11624 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4718 | /* 11628 */ // MIs[0] ptr |
| 4719 | /* 11628 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4720 | /* 11632 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4721 | /* 11636 */ // (atomic_swap:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_swap_i32>> => (ATOMIC_SWAP_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4722 | /* 11636 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_SWAP_I32), |
| 4723 | /* 11641 */ GIR_RootConstrainSelectedInstOperands, |
| 4724 | /* 11642 */ // GIR_Coverage, 24, |
| 4725 | /* 11642 */ GIR_Done, |
| 4726 | /* 11643 */ // Label 443: @11643 |
| 4727 | /* 11643 */ GIM_Reject, |
| 4728 | /* 11644 */ // Label 440: @11644 |
| 4729 | /* 11644 */ GIM_Reject, |
| 4730 | /* 11645 */ // Label 438: @11645 |
| 4731 | /* 11645 */ GIM_Try, /*On fail goto*//*Label 444*/ GIMT_Encode4(11682), // Rule ID 265 // |
| 4732 | /* 11650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4733 | /* 11653 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 4734 | /* 11656 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 4735 | /* 11663 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4736 | /* 11667 */ // MIs[0] ptr |
| 4737 | /* 11667 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4738 | /* 11671 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4739 | /* 11675 */ // (atomic_swap:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_swap_i64>> => (ATOMIC_SWAP_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 4740 | /* 11675 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_SWAP_I64), |
| 4741 | /* 11680 */ GIR_RootConstrainSelectedInstOperands, |
| 4742 | /* 11681 */ // GIR_Coverage, 265, |
| 4743 | /* 11681 */ GIR_Done, |
| 4744 | /* 11682 */ // Label 444: @11682 |
| 4745 | /* 11682 */ GIM_Reject, |
| 4746 | /* 11683 */ // Label 439: @11683 |
| 4747 | /* 11683 */ GIM_Reject, |
| 4748 | /* 11684 */ // Label 18: @11684 |
| 4749 | /* 11684 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 447*/ GIMT_Encode4(11853), |
| 4750 | /* 11695 */ /*GILLT_s32*//*Label 445*/ GIMT_Encode4(11703), |
| 4751 | /* 11699 */ /*GILLT_s64*//*Label 446*/ GIMT_Encode4(11815), |
| 4752 | /* 11703 */ // Label 445: @11703 |
| 4753 | /* 11703 */ GIM_Try, /*On fail goto*//*Label 448*/ GIMT_Encode4(11814), |
| 4754 | /* 11708 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 4755 | /* 11711 */ GIM_Try, /*On fail goto*//*Label 449*/ GIMT_Encode4(11745), // Rule ID 4 // |
| 4756 | /* 11716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4757 | /* 11719 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 4758 | /* 11726 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4759 | /* 11730 */ // MIs[0] ptr |
| 4760 | /* 11730 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4761 | /* 11734 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4762 | /* 11738 */ // (atomic_load_add:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_add_i8>> => (ATOMIC_LOAD_ADD_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4763 | /* 11738 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_ADD_I8), |
| 4764 | /* 11743 */ GIR_RootConstrainSelectedInstOperands, |
| 4765 | /* 11744 */ // GIR_Coverage, 4, |
| 4766 | /* 11744 */ GIR_Done, |
| 4767 | /* 11745 */ // Label 449: @11745 |
| 4768 | /* 11745 */ GIM_Try, /*On fail goto*//*Label 450*/ GIMT_Encode4(11779), // Rule ID 5 // |
| 4769 | /* 11750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4770 | /* 11753 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 4771 | /* 11760 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4772 | /* 11764 */ // MIs[0] ptr |
| 4773 | /* 11764 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4774 | /* 11768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4775 | /* 11772 */ // (atomic_load_add:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_add_i16>> => (ATOMIC_LOAD_ADD_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4776 | /* 11772 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_ADD_I16), |
| 4777 | /* 11777 */ GIR_RootConstrainSelectedInstOperands, |
| 4778 | /* 11778 */ // GIR_Coverage, 5, |
| 4779 | /* 11778 */ GIR_Done, |
| 4780 | /* 11779 */ // Label 450: @11779 |
| 4781 | /* 11779 */ GIM_Try, /*On fail goto*//*Label 451*/ GIMT_Encode4(11813), // Rule ID 6 // |
| 4782 | /* 11784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4783 | /* 11787 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 4784 | /* 11794 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4785 | /* 11798 */ // MIs[0] ptr |
| 4786 | /* 11798 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4787 | /* 11802 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4788 | /* 11806 */ // (atomic_load_add:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_add_i32>> => (ATOMIC_LOAD_ADD_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4789 | /* 11806 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_ADD_I32), |
| 4790 | /* 11811 */ GIR_RootConstrainSelectedInstOperands, |
| 4791 | /* 11812 */ // GIR_Coverage, 6, |
| 4792 | /* 11812 */ GIR_Done, |
| 4793 | /* 11813 */ // Label 451: @11813 |
| 4794 | /* 11813 */ GIM_Reject, |
| 4795 | /* 11814 */ // Label 448: @11814 |
| 4796 | /* 11814 */ GIM_Reject, |
| 4797 | /* 11815 */ // Label 446: @11815 |
| 4798 | /* 11815 */ GIM_Try, /*On fail goto*//*Label 452*/ GIMT_Encode4(11852), // Rule ID 259 // |
| 4799 | /* 11820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4800 | /* 11823 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 4801 | /* 11826 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 4802 | /* 11833 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4803 | /* 11837 */ // MIs[0] ptr |
| 4804 | /* 11837 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4805 | /* 11841 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4806 | /* 11845 */ // (atomic_load_add:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_add_i64>> => (ATOMIC_LOAD_ADD_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 4807 | /* 11845 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_ADD_I64), |
| 4808 | /* 11850 */ GIR_RootConstrainSelectedInstOperands, |
| 4809 | /* 11851 */ // GIR_Coverage, 259, |
| 4810 | /* 11851 */ GIR_Done, |
| 4811 | /* 11852 */ // Label 452: @11852 |
| 4812 | /* 11852 */ GIM_Reject, |
| 4813 | /* 11853 */ // Label 447: @11853 |
| 4814 | /* 11853 */ GIM_Reject, |
| 4815 | /* 11854 */ // Label 19: @11854 |
| 4816 | /* 11854 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 455*/ GIMT_Encode4(12023), |
| 4817 | /* 11865 */ /*GILLT_s32*//*Label 453*/ GIMT_Encode4(11873), |
| 4818 | /* 11869 */ /*GILLT_s64*//*Label 454*/ GIMT_Encode4(11985), |
| 4819 | /* 11873 */ // Label 453: @11873 |
| 4820 | /* 11873 */ GIM_Try, /*On fail goto*//*Label 456*/ GIMT_Encode4(11984), |
| 4821 | /* 11878 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 4822 | /* 11881 */ GIM_Try, /*On fail goto*//*Label 457*/ GIMT_Encode4(11915), // Rule ID 7 // |
| 4823 | /* 11886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4824 | /* 11889 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 4825 | /* 11896 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4826 | /* 11900 */ // MIs[0] ptr |
| 4827 | /* 11900 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4828 | /* 11904 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4829 | /* 11908 */ // (atomic_load_sub:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_sub_i8>> => (ATOMIC_LOAD_SUB_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4830 | /* 11908 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_SUB_I8), |
| 4831 | /* 11913 */ GIR_RootConstrainSelectedInstOperands, |
| 4832 | /* 11914 */ // GIR_Coverage, 7, |
| 4833 | /* 11914 */ GIR_Done, |
| 4834 | /* 11915 */ // Label 457: @11915 |
| 4835 | /* 11915 */ GIM_Try, /*On fail goto*//*Label 458*/ GIMT_Encode4(11949), // Rule ID 8 // |
| 4836 | /* 11920 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4837 | /* 11923 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 4838 | /* 11930 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4839 | /* 11934 */ // MIs[0] ptr |
| 4840 | /* 11934 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4841 | /* 11938 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4842 | /* 11942 */ // (atomic_load_sub:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_sub_i16>> => (ATOMIC_LOAD_SUB_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4843 | /* 11942 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_SUB_I16), |
| 4844 | /* 11947 */ GIR_RootConstrainSelectedInstOperands, |
| 4845 | /* 11948 */ // GIR_Coverage, 8, |
| 4846 | /* 11948 */ GIR_Done, |
| 4847 | /* 11949 */ // Label 458: @11949 |
| 4848 | /* 11949 */ GIM_Try, /*On fail goto*//*Label 459*/ GIMT_Encode4(11983), // Rule ID 9 // |
| 4849 | /* 11954 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4850 | /* 11957 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 4851 | /* 11964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4852 | /* 11968 */ // MIs[0] ptr |
| 4853 | /* 11968 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4854 | /* 11972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4855 | /* 11976 */ // (atomic_load_sub:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_sub_i32>> => (ATOMIC_LOAD_SUB_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4856 | /* 11976 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_SUB_I32), |
| 4857 | /* 11981 */ GIR_RootConstrainSelectedInstOperands, |
| 4858 | /* 11982 */ // GIR_Coverage, 9, |
| 4859 | /* 11982 */ GIR_Done, |
| 4860 | /* 11983 */ // Label 459: @11983 |
| 4861 | /* 11983 */ GIM_Reject, |
| 4862 | /* 11984 */ // Label 456: @11984 |
| 4863 | /* 11984 */ GIM_Reject, |
| 4864 | /* 11985 */ // Label 454: @11985 |
| 4865 | /* 11985 */ GIM_Try, /*On fail goto*//*Label 460*/ GIMT_Encode4(12022), // Rule ID 260 // |
| 4866 | /* 11990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4867 | /* 11993 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 4868 | /* 11996 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 4869 | /* 12003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4870 | /* 12007 */ // MIs[0] ptr |
| 4871 | /* 12007 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4872 | /* 12011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4873 | /* 12015 */ // (atomic_load_sub:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_sub_i64>> => (ATOMIC_LOAD_SUB_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 4874 | /* 12015 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_SUB_I64), |
| 4875 | /* 12020 */ GIR_RootConstrainSelectedInstOperands, |
| 4876 | /* 12021 */ // GIR_Coverage, 260, |
| 4877 | /* 12021 */ GIR_Done, |
| 4878 | /* 12022 */ // Label 460: @12022 |
| 4879 | /* 12022 */ GIM_Reject, |
| 4880 | /* 12023 */ // Label 455: @12023 |
| 4881 | /* 12023 */ GIM_Reject, |
| 4882 | /* 12024 */ // Label 20: @12024 |
| 4883 | /* 12024 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 463*/ GIMT_Encode4(12193), |
| 4884 | /* 12035 */ /*GILLT_s32*//*Label 461*/ GIMT_Encode4(12043), |
| 4885 | /* 12039 */ /*GILLT_s64*//*Label 462*/ GIMT_Encode4(12155), |
| 4886 | /* 12043 */ // Label 461: @12043 |
| 4887 | /* 12043 */ GIM_Try, /*On fail goto*//*Label 464*/ GIMT_Encode4(12154), |
| 4888 | /* 12048 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 4889 | /* 12051 */ GIM_Try, /*On fail goto*//*Label 465*/ GIMT_Encode4(12085), // Rule ID 10 // |
| 4890 | /* 12056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4891 | /* 12059 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 4892 | /* 12066 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4893 | /* 12070 */ // MIs[0] ptr |
| 4894 | /* 12070 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4895 | /* 12074 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4896 | /* 12078 */ // (atomic_load_and:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_and_i8>> => (ATOMIC_LOAD_AND_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4897 | /* 12078 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_AND_I8), |
| 4898 | /* 12083 */ GIR_RootConstrainSelectedInstOperands, |
| 4899 | /* 12084 */ // GIR_Coverage, 10, |
| 4900 | /* 12084 */ GIR_Done, |
| 4901 | /* 12085 */ // Label 465: @12085 |
| 4902 | /* 12085 */ GIM_Try, /*On fail goto*//*Label 466*/ GIMT_Encode4(12119), // Rule ID 11 // |
| 4903 | /* 12090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4904 | /* 12093 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 4905 | /* 12100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4906 | /* 12104 */ // MIs[0] ptr |
| 4907 | /* 12104 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4908 | /* 12108 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4909 | /* 12112 */ // (atomic_load_and:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_and_i16>> => (ATOMIC_LOAD_AND_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4910 | /* 12112 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_AND_I16), |
| 4911 | /* 12117 */ GIR_RootConstrainSelectedInstOperands, |
| 4912 | /* 12118 */ // GIR_Coverage, 11, |
| 4913 | /* 12118 */ GIR_Done, |
| 4914 | /* 12119 */ // Label 466: @12119 |
| 4915 | /* 12119 */ GIM_Try, /*On fail goto*//*Label 467*/ GIMT_Encode4(12153), // Rule ID 12 // |
| 4916 | /* 12124 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4917 | /* 12127 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 4918 | /* 12134 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4919 | /* 12138 */ // MIs[0] ptr |
| 4920 | /* 12138 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4921 | /* 12142 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4922 | /* 12146 */ // (atomic_load_and:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_and_i32>> => (ATOMIC_LOAD_AND_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4923 | /* 12146 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_AND_I32), |
| 4924 | /* 12151 */ GIR_RootConstrainSelectedInstOperands, |
| 4925 | /* 12152 */ // GIR_Coverage, 12, |
| 4926 | /* 12152 */ GIR_Done, |
| 4927 | /* 12153 */ // Label 467: @12153 |
| 4928 | /* 12153 */ GIM_Reject, |
| 4929 | /* 12154 */ // Label 464: @12154 |
| 4930 | /* 12154 */ GIM_Reject, |
| 4931 | /* 12155 */ // Label 462: @12155 |
| 4932 | /* 12155 */ GIM_Try, /*On fail goto*//*Label 468*/ GIMT_Encode4(12192), // Rule ID 261 // |
| 4933 | /* 12160 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4934 | /* 12163 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 4935 | /* 12166 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 4936 | /* 12173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4937 | /* 12177 */ // MIs[0] ptr |
| 4938 | /* 12177 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4939 | /* 12181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 4940 | /* 12185 */ // (atomic_load_and:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_and_i64>> => (ATOMIC_LOAD_AND_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 4941 | /* 12185 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_AND_I64), |
| 4942 | /* 12190 */ GIR_RootConstrainSelectedInstOperands, |
| 4943 | /* 12191 */ // GIR_Coverage, 261, |
| 4944 | /* 12191 */ GIR_Done, |
| 4945 | /* 12192 */ // Label 468: @12192 |
| 4946 | /* 12192 */ GIM_Reject, |
| 4947 | /* 12193 */ // Label 463: @12193 |
| 4948 | /* 12193 */ GIM_Reject, |
| 4949 | /* 12194 */ // Label 21: @12194 |
| 4950 | /* 12194 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 471*/ GIMT_Encode4(12363), |
| 4951 | /* 12205 */ /*GILLT_s32*//*Label 469*/ GIMT_Encode4(12213), |
| 4952 | /* 12209 */ /*GILLT_s64*//*Label 470*/ GIMT_Encode4(12325), |
| 4953 | /* 12213 */ // Label 469: @12213 |
| 4954 | /* 12213 */ GIM_Try, /*On fail goto*//*Label 472*/ GIMT_Encode4(12324), |
| 4955 | /* 12218 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 4956 | /* 12221 */ GIM_Try, /*On fail goto*//*Label 473*/ GIMT_Encode4(12255), // Rule ID 19 // |
| 4957 | /* 12226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4958 | /* 12229 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 4959 | /* 12236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4960 | /* 12240 */ // MIs[0] ptr |
| 4961 | /* 12240 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4962 | /* 12244 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4963 | /* 12248 */ // (atomic_load_nand:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_nand_i8>> => (ATOMIC_LOAD_NAND_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4964 | /* 12248 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_NAND_I8), |
| 4965 | /* 12253 */ GIR_RootConstrainSelectedInstOperands, |
| 4966 | /* 12254 */ // GIR_Coverage, 19, |
| 4967 | /* 12254 */ GIR_Done, |
| 4968 | /* 12255 */ // Label 473: @12255 |
| 4969 | /* 12255 */ GIM_Try, /*On fail goto*//*Label 474*/ GIMT_Encode4(12289), // Rule ID 20 // |
| 4970 | /* 12260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4971 | /* 12263 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 4972 | /* 12270 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4973 | /* 12274 */ // MIs[0] ptr |
| 4974 | /* 12274 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4975 | /* 12278 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4976 | /* 12282 */ // (atomic_load_nand:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_nand_i16>> => (ATOMIC_LOAD_NAND_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4977 | /* 12282 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_NAND_I16), |
| 4978 | /* 12287 */ GIR_RootConstrainSelectedInstOperands, |
| 4979 | /* 12288 */ // GIR_Coverage, 20, |
| 4980 | /* 12288 */ GIR_Done, |
| 4981 | /* 12289 */ // Label 474: @12289 |
| 4982 | /* 12289 */ GIM_Try, /*On fail goto*//*Label 475*/ GIMT_Encode4(12323), // Rule ID 21 // |
| 4983 | /* 12294 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 4984 | /* 12297 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 4985 | /* 12304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4986 | /* 12308 */ // MIs[0] ptr |
| 4987 | /* 12308 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 4988 | /* 12312 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 4989 | /* 12316 */ // (atomic_load_nand:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_nand_i32>> => (ATOMIC_LOAD_NAND_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 4990 | /* 12316 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_NAND_I32), |
| 4991 | /* 12321 */ GIR_RootConstrainSelectedInstOperands, |
| 4992 | /* 12322 */ // GIR_Coverage, 21, |
| 4993 | /* 12322 */ GIR_Done, |
| 4994 | /* 12323 */ // Label 475: @12323 |
| 4995 | /* 12323 */ GIM_Reject, |
| 4996 | /* 12324 */ // Label 472: @12324 |
| 4997 | /* 12324 */ GIM_Reject, |
| 4998 | /* 12325 */ // Label 470: @12325 |
| 4999 | /* 12325 */ GIM_Try, /*On fail goto*//*Label 476*/ GIMT_Encode4(12362), // Rule ID 264 // |
| 5000 | /* 12330 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5001 | /* 12333 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5002 | /* 12336 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 5003 | /* 12343 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5004 | /* 12347 */ // MIs[0] ptr |
| 5005 | /* 12347 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5006 | /* 12351 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5007 | /* 12355 */ // (atomic_load_nand:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_nand_i64>> => (ATOMIC_LOAD_NAND_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 5008 | /* 12355 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_NAND_I64), |
| 5009 | /* 12360 */ GIR_RootConstrainSelectedInstOperands, |
| 5010 | /* 12361 */ // GIR_Coverage, 264, |
| 5011 | /* 12361 */ GIR_Done, |
| 5012 | /* 12362 */ // Label 476: @12362 |
| 5013 | /* 12362 */ GIM_Reject, |
| 5014 | /* 12363 */ // Label 471: @12363 |
| 5015 | /* 12363 */ GIM_Reject, |
| 5016 | /* 12364 */ // Label 22: @12364 |
| 5017 | /* 12364 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 479*/ GIMT_Encode4(12533), |
| 5018 | /* 12375 */ /*GILLT_s32*//*Label 477*/ GIMT_Encode4(12383), |
| 5019 | /* 12379 */ /*GILLT_s64*//*Label 478*/ GIMT_Encode4(12495), |
| 5020 | /* 12383 */ // Label 477: @12383 |
| 5021 | /* 12383 */ GIM_Try, /*On fail goto*//*Label 480*/ GIMT_Encode4(12494), |
| 5022 | /* 12388 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 5023 | /* 12391 */ GIM_Try, /*On fail goto*//*Label 481*/ GIMT_Encode4(12425), // Rule ID 13 // |
| 5024 | /* 12396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5025 | /* 12399 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 5026 | /* 12406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5027 | /* 12410 */ // MIs[0] ptr |
| 5028 | /* 12410 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5029 | /* 12414 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5030 | /* 12418 */ // (atomic_load_or:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_or_i8>> => (ATOMIC_LOAD_OR_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5031 | /* 12418 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_OR_I8), |
| 5032 | /* 12423 */ GIR_RootConstrainSelectedInstOperands, |
| 5033 | /* 12424 */ // GIR_Coverage, 13, |
| 5034 | /* 12424 */ GIR_Done, |
| 5035 | /* 12425 */ // Label 481: @12425 |
| 5036 | /* 12425 */ GIM_Try, /*On fail goto*//*Label 482*/ GIMT_Encode4(12459), // Rule ID 14 // |
| 5037 | /* 12430 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5038 | /* 12433 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 5039 | /* 12440 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5040 | /* 12444 */ // MIs[0] ptr |
| 5041 | /* 12444 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5042 | /* 12448 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5043 | /* 12452 */ // (atomic_load_or:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_or_i16>> => (ATOMIC_LOAD_OR_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5044 | /* 12452 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_OR_I16), |
| 5045 | /* 12457 */ GIR_RootConstrainSelectedInstOperands, |
| 5046 | /* 12458 */ // GIR_Coverage, 14, |
| 5047 | /* 12458 */ GIR_Done, |
| 5048 | /* 12459 */ // Label 482: @12459 |
| 5049 | /* 12459 */ GIM_Try, /*On fail goto*//*Label 483*/ GIMT_Encode4(12493), // Rule ID 15 // |
| 5050 | /* 12464 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5051 | /* 12467 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 5052 | /* 12474 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5053 | /* 12478 */ // MIs[0] ptr |
| 5054 | /* 12478 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5055 | /* 12482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5056 | /* 12486 */ // (atomic_load_or:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_or_i32>> => (ATOMIC_LOAD_OR_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5057 | /* 12486 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_OR_I32), |
| 5058 | /* 12491 */ GIR_RootConstrainSelectedInstOperands, |
| 5059 | /* 12492 */ // GIR_Coverage, 15, |
| 5060 | /* 12492 */ GIR_Done, |
| 5061 | /* 12493 */ // Label 483: @12493 |
| 5062 | /* 12493 */ GIM_Reject, |
| 5063 | /* 12494 */ // Label 480: @12494 |
| 5064 | /* 12494 */ GIM_Reject, |
| 5065 | /* 12495 */ // Label 478: @12495 |
| 5066 | /* 12495 */ GIM_Try, /*On fail goto*//*Label 484*/ GIMT_Encode4(12532), // Rule ID 262 // |
| 5067 | /* 12500 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5068 | /* 12503 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5069 | /* 12506 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 5070 | /* 12513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5071 | /* 12517 */ // MIs[0] ptr |
| 5072 | /* 12517 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5073 | /* 12521 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5074 | /* 12525 */ // (atomic_load_or:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_or_i64>> => (ATOMIC_LOAD_OR_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 5075 | /* 12525 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_OR_I64), |
| 5076 | /* 12530 */ GIR_RootConstrainSelectedInstOperands, |
| 5077 | /* 12531 */ // GIR_Coverage, 262, |
| 5078 | /* 12531 */ GIR_Done, |
| 5079 | /* 12532 */ // Label 484: @12532 |
| 5080 | /* 12532 */ GIM_Reject, |
| 5081 | /* 12533 */ // Label 479: @12533 |
| 5082 | /* 12533 */ GIM_Reject, |
| 5083 | /* 12534 */ // Label 23: @12534 |
| 5084 | /* 12534 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 487*/ GIMT_Encode4(12703), |
| 5085 | /* 12545 */ /*GILLT_s32*//*Label 485*/ GIMT_Encode4(12553), |
| 5086 | /* 12549 */ /*GILLT_s64*//*Label 486*/ GIMT_Encode4(12665), |
| 5087 | /* 12553 */ // Label 485: @12553 |
| 5088 | /* 12553 */ GIM_Try, /*On fail goto*//*Label 488*/ GIMT_Encode4(12664), |
| 5089 | /* 12558 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 5090 | /* 12561 */ GIM_Try, /*On fail goto*//*Label 489*/ GIMT_Encode4(12595), // Rule ID 16 // |
| 5091 | /* 12566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5092 | /* 12569 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 5093 | /* 12576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5094 | /* 12580 */ // MIs[0] ptr |
| 5095 | /* 12580 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5096 | /* 12584 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5097 | /* 12588 */ // (atomic_load_xor:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_xor_i8>> => (ATOMIC_LOAD_XOR_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5098 | /* 12588 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_XOR_I8), |
| 5099 | /* 12593 */ GIR_RootConstrainSelectedInstOperands, |
| 5100 | /* 12594 */ // GIR_Coverage, 16, |
| 5101 | /* 12594 */ GIR_Done, |
| 5102 | /* 12595 */ // Label 489: @12595 |
| 5103 | /* 12595 */ GIM_Try, /*On fail goto*//*Label 490*/ GIMT_Encode4(12629), // Rule ID 17 // |
| 5104 | /* 12600 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5105 | /* 12603 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 5106 | /* 12610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5107 | /* 12614 */ // MIs[0] ptr |
| 5108 | /* 12614 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5109 | /* 12618 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5110 | /* 12622 */ // (atomic_load_xor:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_xor_i16>> => (ATOMIC_LOAD_XOR_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5111 | /* 12622 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_XOR_I16), |
| 5112 | /* 12627 */ GIR_RootConstrainSelectedInstOperands, |
| 5113 | /* 12628 */ // GIR_Coverage, 17, |
| 5114 | /* 12628 */ GIR_Done, |
| 5115 | /* 12629 */ // Label 490: @12629 |
| 5116 | /* 12629 */ GIM_Try, /*On fail goto*//*Label 491*/ GIMT_Encode4(12663), // Rule ID 18 // |
| 5117 | /* 12634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5118 | /* 12637 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 5119 | /* 12644 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5120 | /* 12648 */ // MIs[0] ptr |
| 5121 | /* 12648 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5122 | /* 12652 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5123 | /* 12656 */ // (atomic_load_xor:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_xor_i32>> => (ATOMIC_LOAD_XOR_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5124 | /* 12656 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_XOR_I32), |
| 5125 | /* 12661 */ GIR_RootConstrainSelectedInstOperands, |
| 5126 | /* 12662 */ // GIR_Coverage, 18, |
| 5127 | /* 12662 */ GIR_Done, |
| 5128 | /* 12663 */ // Label 491: @12663 |
| 5129 | /* 12663 */ GIM_Reject, |
| 5130 | /* 12664 */ // Label 488: @12664 |
| 5131 | /* 12664 */ GIM_Reject, |
| 5132 | /* 12665 */ // Label 486: @12665 |
| 5133 | /* 12665 */ GIM_Try, /*On fail goto*//*Label 492*/ GIMT_Encode4(12702), // Rule ID 263 // |
| 5134 | /* 12670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5135 | /* 12673 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5136 | /* 12676 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 5137 | /* 12683 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5138 | /* 12687 */ // MIs[0] ptr |
| 5139 | /* 12687 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5140 | /* 12691 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5141 | /* 12695 */ // (atomic_load_xor:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_xor_i64>> => (ATOMIC_LOAD_XOR_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 5142 | /* 12695 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_XOR_I64), |
| 5143 | /* 12700 */ GIR_RootConstrainSelectedInstOperands, |
| 5144 | /* 12701 */ // GIR_Coverage, 263, |
| 5145 | /* 12701 */ GIR_Done, |
| 5146 | /* 12702 */ // Label 492: @12702 |
| 5147 | /* 12702 */ GIM_Reject, |
| 5148 | /* 12703 */ // Label 487: @12703 |
| 5149 | /* 12703 */ GIM_Reject, |
| 5150 | /* 12704 */ // Label 24: @12704 |
| 5151 | /* 12704 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 495*/ GIMT_Encode4(12873), |
| 5152 | /* 12715 */ /*GILLT_s32*//*Label 493*/ GIMT_Encode4(12723), |
| 5153 | /* 12719 */ /*GILLT_s64*//*Label 494*/ GIMT_Encode4(12835), |
| 5154 | /* 12723 */ // Label 493: @12723 |
| 5155 | /* 12723 */ GIM_Try, /*On fail goto*//*Label 496*/ GIMT_Encode4(12834), |
| 5156 | /* 12728 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 5157 | /* 12731 */ GIM_Try, /*On fail goto*//*Label 497*/ GIMT_Encode4(12765), // Rule ID 31 // |
| 5158 | /* 12736 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5159 | /* 12739 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 5160 | /* 12746 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5161 | /* 12750 */ // MIs[0] ptr |
| 5162 | /* 12750 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5163 | /* 12754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5164 | /* 12758 */ // (atomic_load_max:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_max_i8>> => (ATOMIC_LOAD_MAX_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5165 | /* 12758 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MAX_I8), |
| 5166 | /* 12763 */ GIR_RootConstrainSelectedInstOperands, |
| 5167 | /* 12764 */ // GIR_Coverage, 31, |
| 5168 | /* 12764 */ GIR_Done, |
| 5169 | /* 12765 */ // Label 497: @12765 |
| 5170 | /* 12765 */ GIM_Try, /*On fail goto*//*Label 498*/ GIMT_Encode4(12799), // Rule ID 32 // |
| 5171 | /* 12770 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5172 | /* 12773 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 5173 | /* 12780 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5174 | /* 12784 */ // MIs[0] ptr |
| 5175 | /* 12784 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5176 | /* 12788 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5177 | /* 12792 */ // (atomic_load_max:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_max_i16>> => (ATOMIC_LOAD_MAX_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5178 | /* 12792 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MAX_I16), |
| 5179 | /* 12797 */ GIR_RootConstrainSelectedInstOperands, |
| 5180 | /* 12798 */ // GIR_Coverage, 32, |
| 5181 | /* 12798 */ GIR_Done, |
| 5182 | /* 12799 */ // Label 498: @12799 |
| 5183 | /* 12799 */ GIM_Try, /*On fail goto*//*Label 499*/ GIMT_Encode4(12833), // Rule ID 33 // |
| 5184 | /* 12804 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5185 | /* 12807 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 5186 | /* 12814 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5187 | /* 12818 */ // MIs[0] ptr |
| 5188 | /* 12818 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5189 | /* 12822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5190 | /* 12826 */ // (atomic_load_max:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_max_i32>> => (ATOMIC_LOAD_MAX_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5191 | /* 12826 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MAX_I32), |
| 5192 | /* 12831 */ GIR_RootConstrainSelectedInstOperands, |
| 5193 | /* 12832 */ // GIR_Coverage, 33, |
| 5194 | /* 12832 */ GIR_Done, |
| 5195 | /* 12833 */ // Label 499: @12833 |
| 5196 | /* 12833 */ GIM_Reject, |
| 5197 | /* 12834 */ // Label 496: @12834 |
| 5198 | /* 12834 */ GIM_Reject, |
| 5199 | /* 12835 */ // Label 494: @12835 |
| 5200 | /* 12835 */ GIM_Try, /*On fail goto*//*Label 500*/ GIMT_Encode4(12872), // Rule ID 268 // |
| 5201 | /* 12840 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5202 | /* 12843 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5203 | /* 12846 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 5204 | /* 12853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5205 | /* 12857 */ // MIs[0] ptr |
| 5206 | /* 12857 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5207 | /* 12861 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5208 | /* 12865 */ // (atomic_load_max:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_max_i64>> => (ATOMIC_LOAD_MAX_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 5209 | /* 12865 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MAX_I64), |
| 5210 | /* 12870 */ GIR_RootConstrainSelectedInstOperands, |
| 5211 | /* 12871 */ // GIR_Coverage, 268, |
| 5212 | /* 12871 */ GIR_Done, |
| 5213 | /* 12872 */ // Label 500: @12872 |
| 5214 | /* 12872 */ GIM_Reject, |
| 5215 | /* 12873 */ // Label 495: @12873 |
| 5216 | /* 12873 */ GIM_Reject, |
| 5217 | /* 12874 */ // Label 25: @12874 |
| 5218 | /* 12874 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 503*/ GIMT_Encode4(13043), |
| 5219 | /* 12885 */ /*GILLT_s32*//*Label 501*/ GIMT_Encode4(12893), |
| 5220 | /* 12889 */ /*GILLT_s64*//*Label 502*/ GIMT_Encode4(13005), |
| 5221 | /* 12893 */ // Label 501: @12893 |
| 5222 | /* 12893 */ GIM_Try, /*On fail goto*//*Label 504*/ GIMT_Encode4(13004), |
| 5223 | /* 12898 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 5224 | /* 12901 */ GIM_Try, /*On fail goto*//*Label 505*/ GIMT_Encode4(12935), // Rule ID 28 // |
| 5225 | /* 12906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5226 | /* 12909 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 5227 | /* 12916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5228 | /* 12920 */ // MIs[0] ptr |
| 5229 | /* 12920 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5230 | /* 12924 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5231 | /* 12928 */ // (atomic_load_min:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_min_i8>> => (ATOMIC_LOAD_MIN_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5232 | /* 12928 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MIN_I8), |
| 5233 | /* 12933 */ GIR_RootConstrainSelectedInstOperands, |
| 5234 | /* 12934 */ // GIR_Coverage, 28, |
| 5235 | /* 12934 */ GIR_Done, |
| 5236 | /* 12935 */ // Label 505: @12935 |
| 5237 | /* 12935 */ GIM_Try, /*On fail goto*//*Label 506*/ GIMT_Encode4(12969), // Rule ID 29 // |
| 5238 | /* 12940 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5239 | /* 12943 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 5240 | /* 12950 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5241 | /* 12954 */ // MIs[0] ptr |
| 5242 | /* 12954 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5243 | /* 12958 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5244 | /* 12962 */ // (atomic_load_min:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_min_i16>> => (ATOMIC_LOAD_MIN_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5245 | /* 12962 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MIN_I16), |
| 5246 | /* 12967 */ GIR_RootConstrainSelectedInstOperands, |
| 5247 | /* 12968 */ // GIR_Coverage, 29, |
| 5248 | /* 12968 */ GIR_Done, |
| 5249 | /* 12969 */ // Label 506: @12969 |
| 5250 | /* 12969 */ GIM_Try, /*On fail goto*//*Label 507*/ GIMT_Encode4(13003), // Rule ID 30 // |
| 5251 | /* 12974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5252 | /* 12977 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 5253 | /* 12984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5254 | /* 12988 */ // MIs[0] ptr |
| 5255 | /* 12988 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5256 | /* 12992 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5257 | /* 12996 */ // (atomic_load_min:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_min_i32>> => (ATOMIC_LOAD_MIN_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5258 | /* 12996 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MIN_I32), |
| 5259 | /* 13001 */ GIR_RootConstrainSelectedInstOperands, |
| 5260 | /* 13002 */ // GIR_Coverage, 30, |
| 5261 | /* 13002 */ GIR_Done, |
| 5262 | /* 13003 */ // Label 507: @13003 |
| 5263 | /* 13003 */ GIM_Reject, |
| 5264 | /* 13004 */ // Label 504: @13004 |
| 5265 | /* 13004 */ GIM_Reject, |
| 5266 | /* 13005 */ // Label 502: @13005 |
| 5267 | /* 13005 */ GIM_Try, /*On fail goto*//*Label 508*/ GIMT_Encode4(13042), // Rule ID 267 // |
| 5268 | /* 13010 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5269 | /* 13013 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5270 | /* 13016 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 5271 | /* 13023 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5272 | /* 13027 */ // MIs[0] ptr |
| 5273 | /* 13027 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5274 | /* 13031 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5275 | /* 13035 */ // (atomic_load_min:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_min_i64>> => (ATOMIC_LOAD_MIN_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 5276 | /* 13035 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_MIN_I64), |
| 5277 | /* 13040 */ GIR_RootConstrainSelectedInstOperands, |
| 5278 | /* 13041 */ // GIR_Coverage, 267, |
| 5279 | /* 13041 */ GIR_Done, |
| 5280 | /* 13042 */ // Label 508: @13042 |
| 5281 | /* 13042 */ GIM_Reject, |
| 5282 | /* 13043 */ // Label 503: @13043 |
| 5283 | /* 13043 */ GIM_Reject, |
| 5284 | /* 13044 */ // Label 26: @13044 |
| 5285 | /* 13044 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 511*/ GIMT_Encode4(13213), |
| 5286 | /* 13055 */ /*GILLT_s32*//*Label 509*/ GIMT_Encode4(13063), |
| 5287 | /* 13059 */ /*GILLT_s64*//*Label 510*/ GIMT_Encode4(13175), |
| 5288 | /* 13063 */ // Label 509: @13063 |
| 5289 | /* 13063 */ GIM_Try, /*On fail goto*//*Label 512*/ GIMT_Encode4(13174), |
| 5290 | /* 13068 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 5291 | /* 13071 */ GIM_Try, /*On fail goto*//*Label 513*/ GIMT_Encode4(13105), // Rule ID 37 // |
| 5292 | /* 13076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5293 | /* 13079 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 5294 | /* 13086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5295 | /* 13090 */ // MIs[0] ptr |
| 5296 | /* 13090 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5297 | /* 13094 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5298 | /* 13098 */ // (atomic_load_umax:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_umax_i8>> => (ATOMIC_LOAD_UMAX_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5299 | /* 13098 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMAX_I8), |
| 5300 | /* 13103 */ GIR_RootConstrainSelectedInstOperands, |
| 5301 | /* 13104 */ // GIR_Coverage, 37, |
| 5302 | /* 13104 */ GIR_Done, |
| 5303 | /* 13105 */ // Label 513: @13105 |
| 5304 | /* 13105 */ GIM_Try, /*On fail goto*//*Label 514*/ GIMT_Encode4(13139), // Rule ID 38 // |
| 5305 | /* 13110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5306 | /* 13113 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 5307 | /* 13120 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5308 | /* 13124 */ // MIs[0] ptr |
| 5309 | /* 13124 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5310 | /* 13128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5311 | /* 13132 */ // (atomic_load_umax:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_umax_i16>> => (ATOMIC_LOAD_UMAX_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5312 | /* 13132 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMAX_I16), |
| 5313 | /* 13137 */ GIR_RootConstrainSelectedInstOperands, |
| 5314 | /* 13138 */ // GIR_Coverage, 38, |
| 5315 | /* 13138 */ GIR_Done, |
| 5316 | /* 13139 */ // Label 514: @13139 |
| 5317 | /* 13139 */ GIM_Try, /*On fail goto*//*Label 515*/ GIMT_Encode4(13173), // Rule ID 39 // |
| 5318 | /* 13144 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5319 | /* 13147 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 5320 | /* 13154 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5321 | /* 13158 */ // MIs[0] ptr |
| 5322 | /* 13158 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5323 | /* 13162 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5324 | /* 13166 */ // (atomic_load_umax:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_umax_i32>> => (ATOMIC_LOAD_UMAX_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5325 | /* 13166 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMAX_I32), |
| 5326 | /* 13171 */ GIR_RootConstrainSelectedInstOperands, |
| 5327 | /* 13172 */ // GIR_Coverage, 39, |
| 5328 | /* 13172 */ GIR_Done, |
| 5329 | /* 13173 */ // Label 515: @13173 |
| 5330 | /* 13173 */ GIM_Reject, |
| 5331 | /* 13174 */ // Label 512: @13174 |
| 5332 | /* 13174 */ GIM_Reject, |
| 5333 | /* 13175 */ // Label 510: @13175 |
| 5334 | /* 13175 */ GIM_Try, /*On fail goto*//*Label 516*/ GIMT_Encode4(13212), // Rule ID 270 // |
| 5335 | /* 13180 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5336 | /* 13183 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5337 | /* 13186 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 5338 | /* 13193 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5339 | /* 13197 */ // MIs[0] ptr |
| 5340 | /* 13197 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5341 | /* 13201 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5342 | /* 13205 */ // (atomic_load_umax:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_umax_i64>> => (ATOMIC_LOAD_UMAX_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 5343 | /* 13205 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMAX_I64), |
| 5344 | /* 13210 */ GIR_RootConstrainSelectedInstOperands, |
| 5345 | /* 13211 */ // GIR_Coverage, 270, |
| 5346 | /* 13211 */ GIR_Done, |
| 5347 | /* 13212 */ // Label 516: @13212 |
| 5348 | /* 13212 */ GIM_Reject, |
| 5349 | /* 13213 */ // Label 511: @13213 |
| 5350 | /* 13213 */ GIM_Reject, |
| 5351 | /* 13214 */ // Label 27: @13214 |
| 5352 | /* 13214 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 519*/ GIMT_Encode4(13383), |
| 5353 | /* 13225 */ /*GILLT_s32*//*Label 517*/ GIMT_Encode4(13233), |
| 5354 | /* 13229 */ /*GILLT_s64*//*Label 518*/ GIMT_Encode4(13345), |
| 5355 | /* 13233 */ // Label 517: @13233 |
| 5356 | /* 13233 */ GIM_Try, /*On fail goto*//*Label 520*/ GIMT_Encode4(13344), |
| 5357 | /* 13238 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 5358 | /* 13241 */ GIM_Try, /*On fail goto*//*Label 521*/ GIMT_Encode4(13275), // Rule ID 34 // |
| 5359 | /* 13246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5360 | /* 13249 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(1), |
| 5361 | /* 13256 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5362 | /* 13260 */ // MIs[0] ptr |
| 5363 | /* 13260 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5364 | /* 13264 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5365 | /* 13268 */ // (atomic_load_umin:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_umin_i8>> => (ATOMIC_LOAD_UMIN_I8:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5366 | /* 13268 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMIN_I8), |
| 5367 | /* 13273 */ GIR_RootConstrainSelectedInstOperands, |
| 5368 | /* 13274 */ // GIR_Coverage, 34, |
| 5369 | /* 13274 */ GIR_Done, |
| 5370 | /* 13275 */ // Label 521: @13275 |
| 5371 | /* 13275 */ GIM_Try, /*On fail goto*//*Label 522*/ GIMT_Encode4(13309), // Rule ID 35 // |
| 5372 | /* 13280 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5373 | /* 13283 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(2), |
| 5374 | /* 13290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5375 | /* 13294 */ // MIs[0] ptr |
| 5376 | /* 13294 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5377 | /* 13298 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5378 | /* 13302 */ // (atomic_load_umin:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_umin_i16>> => (ATOMIC_LOAD_UMIN_I16:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5379 | /* 13302 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMIN_I16), |
| 5380 | /* 13307 */ GIR_RootConstrainSelectedInstOperands, |
| 5381 | /* 13308 */ // GIR_Coverage, 35, |
| 5382 | /* 13308 */ GIR_Done, |
| 5383 | /* 13309 */ // Label 522: @13309 |
| 5384 | /* 13309 */ GIM_Try, /*On fail goto*//*Label 523*/ GIMT_Encode4(13343), // Rule ID 36 // |
| 5385 | /* 13314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5386 | /* 13317 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(4), |
| 5387 | /* 13324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5388 | /* 13328 */ // MIs[0] ptr |
| 5389 | /* 13328 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5390 | /* 13332 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5391 | /* 13336 */ // (atomic_load_umin:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr)<<P:Predicate_atomic_load_umin_i32>> => (ATOMIC_LOAD_UMIN_I32:{ *:[i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$incr) |
| 5392 | /* 13336 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMIN_I32), |
| 5393 | /* 13341 */ GIR_RootConstrainSelectedInstOperands, |
| 5394 | /* 13342 */ // GIR_Coverage, 36, |
| 5395 | /* 13342 */ GIR_Done, |
| 5396 | /* 13343 */ // Label 523: @13343 |
| 5397 | /* 13343 */ GIM_Reject, |
| 5398 | /* 13344 */ // Label 520: @13344 |
| 5399 | /* 13344 */ GIM_Reject, |
| 5400 | /* 13345 */ // Label 518: @13345 |
| 5401 | /* 13345 */ GIM_Try, /*On fail goto*//*Label 524*/ GIMT_Encode4(13382), // Rule ID 269 // |
| 5402 | /* 13350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 5403 | /* 13353 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 5404 | /* 13356 */ GIM_CheckMemorySizeEqualTo, /*MI*/0, /*MMO*/0, /*Size*/GIMT_Encode4(8), |
| 5405 | /* 13363 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5406 | /* 13367 */ // MIs[0] ptr |
| 5407 | /* 13367 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/1, /*SizeInBits*/0, |
| 5408 | /* 13371 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5409 | /* 13375 */ // (atomic_load_umin:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr)<<P:Predicate_atomic_load_umin_i64>> => (ATOMIC_LOAD_UMIN_I64:{ *:[i64] } iPTR:{ *:[iPTR] }:$ptr, GPR64:{ *:[i64] }:$incr) |
| 5410 | /* 13375 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ATOMIC_LOAD_UMIN_I64), |
| 5411 | /* 13380 */ GIR_RootConstrainSelectedInstOperands, |
| 5412 | /* 13381 */ // GIR_Coverage, 269, |
| 5413 | /* 13381 */ GIR_Done, |
| 5414 | /* 13382 */ // Label 524: @13382 |
| 5415 | /* 13382 */ GIM_Reject, |
| 5416 | /* 13383 */ // Label 519: @13383 |
| 5417 | /* 13383 */ GIM_Reject, |
| 5418 | /* 13384 */ // Label 28: @13384 |
| 5419 | /* 13384 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 527*/ GIMT_Encode4(19928), |
| 5420 | /* 13395 */ /*GILLT_s32*//*Label 525*/ GIMT_Encode4(13403), |
| 5421 | /* 13399 */ /*GILLT_s64*//*Label 526*/ GIMT_Encode4(19894), |
| 5422 | /* 13403 */ // Label 525: @13403 |
| 5423 | /* 13403 */ GIM_Try, /*On fail goto*//*Label 528*/ GIMT_Encode4(13511), // Rule ID 2526 // |
| 5424 | /* 13408 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5425 | /* 13411 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5426 | /* 13415 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5427 | /* 13419 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5428 | /* 13423 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5429 | /* 13427 */ // MIs[1] Operand 1 |
| 5430 | /* 13427 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 5431 | /* 13432 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5432 | /* 13436 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5433 | /* 13440 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5434 | /* 13444 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5435 | /* 13448 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 5436 | /* 13452 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5437 | /* 13456 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5438 | /* 13460 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5439 | /* 13464 */ GIM_CheckConstantInt8, /*MI*/3, /*Op*/1, 1, |
| 5440 | /* 13468 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5441 | /* 13472 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5442 | /* 13476 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5443 | /* 13480 */ // MIs[4] Operand 1 |
| 5444 | /* 13480 */ // No operand predicates |
| 5445 | /* 13480 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5446 | /* 13485 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5447 | /* 13489 */ // MIs[0] offset |
| 5448 | /* 13489 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5449 | /* 13492 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5450 | /* 13494 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } (shl:{ *:[i64] } 1:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p), GPR64Opnd:{ *:[i64] }:$rs), 0:{ *:[i64] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT0 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5451 | /* 13494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT0), |
| 5452 | /* 13497 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // rs |
| 5453 | /* 13501 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5454 | /* 13504 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5455 | /* 13506 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5456 | /* 13509 */ GIR_RootConstrainSelectedInstOperands, |
| 5457 | /* 13510 */ // GIR_Coverage, 2526, |
| 5458 | /* 13510 */ GIR_EraseRootFromParent_Done, |
| 5459 | /* 13511 */ // Label 528: @13511 |
| 5460 | /* 13511 */ GIM_Try, /*On fail goto*//*Label 529*/ GIMT_Encode4(13626), // Rule ID 2527 // |
| 5461 | /* 13516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5462 | /* 13519 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5463 | /* 13523 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5464 | /* 13527 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5465 | /* 13531 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5466 | /* 13535 */ // MIs[1] Operand 1 |
| 5467 | /* 13535 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 5468 | /* 13540 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5469 | /* 13544 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5470 | /* 13548 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5471 | /* 13552 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5472 | /* 13556 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 5473 | /* 13560 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5474 | /* 13564 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5475 | /* 13568 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5476 | /* 13572 */ GIM_CheckConstantInt, /*MI*/3, /*Op*/1, GIMT_Encode8(4294967296), |
| 5477 | /* 13583 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5478 | /* 13587 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5479 | /* 13591 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5480 | /* 13595 */ // MIs[4] Operand 1 |
| 5481 | /* 13595 */ // No operand predicates |
| 5482 | /* 13595 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5483 | /* 13600 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5484 | /* 13604 */ // MIs[0] offset |
| 5485 | /* 13604 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5486 | /* 13607 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5487 | /* 13609 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } (shl:{ *:[i64] } 4294967296:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p), GPR64Opnd:{ *:[i64] }:$rs), 0:{ *:[i64] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT032 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5488 | /* 13609 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT032), |
| 5489 | /* 13612 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // rs |
| 5490 | /* 13616 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5491 | /* 13619 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5492 | /* 13621 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5493 | /* 13624 */ GIR_RootConstrainSelectedInstOperands, |
| 5494 | /* 13625 */ // GIR_Coverage, 2527, |
| 5495 | /* 13625 */ GIR_EraseRootFromParent_Done, |
| 5496 | /* 13626 */ // Label 529: @13626 |
| 5497 | /* 13626 */ GIM_Try, /*On fail goto*//*Label 530*/ GIMT_Encode4(13734), // Rule ID 2528 // |
| 5498 | /* 13631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5499 | /* 13634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5500 | /* 13638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5501 | /* 13642 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5502 | /* 13646 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5503 | /* 13650 */ // MIs[1] Operand 1 |
| 5504 | /* 13650 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 5505 | /* 13655 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5506 | /* 13659 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5507 | /* 13663 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5508 | /* 13667 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5509 | /* 13671 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 5510 | /* 13675 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5511 | /* 13679 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5512 | /* 13683 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5513 | /* 13687 */ GIM_CheckConstantInt8, /*MI*/3, /*Op*/1, 1, |
| 5514 | /* 13691 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5515 | /* 13695 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5516 | /* 13699 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5517 | /* 13703 */ // MIs[4] Operand 1 |
| 5518 | /* 13703 */ // No operand predicates |
| 5519 | /* 13703 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5520 | /* 13708 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5521 | /* 13712 */ // MIs[0] offset |
| 5522 | /* 13712 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5523 | /* 13715 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5524 | /* 13717 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } (shl:{ *:[i64] } 1:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p), GPR64Opnd:{ *:[i64] }:$rs), 0:{ *:[i64] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT1 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5525 | /* 13717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT1), |
| 5526 | /* 13720 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // rs |
| 5527 | /* 13724 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5528 | /* 13727 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5529 | /* 13729 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5530 | /* 13732 */ GIR_RootConstrainSelectedInstOperands, |
| 5531 | /* 13733 */ // GIR_Coverage, 2528, |
| 5532 | /* 13733 */ GIR_EraseRootFromParent_Done, |
| 5533 | /* 13734 */ // Label 530: @13734 |
| 5534 | /* 13734 */ GIM_Try, /*On fail goto*//*Label 531*/ GIMT_Encode4(13849), // Rule ID 2529 // |
| 5535 | /* 13739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5536 | /* 13742 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5537 | /* 13746 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5538 | /* 13750 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5539 | /* 13754 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5540 | /* 13758 */ // MIs[1] Operand 1 |
| 5541 | /* 13758 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 5542 | /* 13763 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5543 | /* 13767 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5544 | /* 13771 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5545 | /* 13775 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5546 | /* 13779 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 5547 | /* 13783 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5548 | /* 13787 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5549 | /* 13791 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5550 | /* 13795 */ GIM_CheckConstantInt, /*MI*/3, /*Op*/1, GIMT_Encode8(4294967296), |
| 5551 | /* 13806 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5552 | /* 13810 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5553 | /* 13814 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5554 | /* 13818 */ // MIs[4] Operand 1 |
| 5555 | /* 13818 */ // No operand predicates |
| 5556 | /* 13818 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5557 | /* 13823 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5558 | /* 13827 */ // MIs[0] offset |
| 5559 | /* 13827 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5560 | /* 13830 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5561 | /* 13832 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } (shl:{ *:[i64] } 4294967296:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p), GPR64Opnd:{ *:[i64] }:$rs), 0:{ *:[i64] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT132 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5562 | /* 13832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT132), |
| 5563 | /* 13835 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // rs |
| 5564 | /* 13839 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5565 | /* 13842 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5566 | /* 13844 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5567 | /* 13847 */ GIR_RootConstrainSelectedInstOperands, |
| 5568 | /* 13848 */ // GIR_Coverage, 2529, |
| 5569 | /* 13848 */ GIR_EraseRootFromParent_Done, |
| 5570 | /* 13849 */ // Label 531: @13849 |
| 5571 | /* 13849 */ GIM_Try, /*On fail goto*//*Label 532*/ GIMT_Encode4(13957), // Rule ID 345 // |
| 5572 | /* 13854 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5573 | /* 13857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5574 | /* 13861 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5575 | /* 13865 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5576 | /* 13869 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5577 | /* 13873 */ // MIs[1] Operand 1 |
| 5578 | /* 13873 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 5579 | /* 13878 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5580 | /* 13882 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5581 | /* 13886 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5582 | /* 13890 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5583 | /* 13894 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5584 | /* 13899 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/2, // MIs[3] |
| 5585 | /* 13903 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5586 | /* 13907 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5587 | /* 13911 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5588 | /* 13915 */ GIM_CheckConstantInt8, /*MI*/3, /*Op*/1, 1, |
| 5589 | /* 13919 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5590 | /* 13923 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5591 | /* 13927 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5592 | /* 13931 */ // MIs[4] Operand 1 |
| 5593 | /* 13931 */ // No operand predicates |
| 5594 | /* 13931 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5595 | /* 13935 */ // MIs[0] offset |
| 5596 | /* 13935 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5597 | /* 13938 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5598 | /* 13940 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, (shl:{ *:[i64] } 1:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p)), 0:{ *:[i64] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT0 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5599 | /* 13940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT0), |
| 5600 | /* 13943 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // rs |
| 5601 | /* 13947 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5602 | /* 13950 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5603 | /* 13952 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5604 | /* 13955 */ GIR_RootConstrainSelectedInstOperands, |
| 5605 | /* 13956 */ // GIR_Coverage, 345, |
| 5606 | /* 13956 */ GIR_EraseRootFromParent_Done, |
| 5607 | /* 13957 */ // Label 532: @13957 |
| 5608 | /* 13957 */ GIM_Try, /*On fail goto*//*Label 533*/ GIMT_Encode4(14072), // Rule ID 346 // |
| 5609 | /* 13962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5610 | /* 13965 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5611 | /* 13969 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5612 | /* 13973 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5613 | /* 13977 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5614 | /* 13981 */ // MIs[1] Operand 1 |
| 5615 | /* 13981 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 5616 | /* 13986 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5617 | /* 13990 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5618 | /* 13994 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5619 | /* 13998 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5620 | /* 14002 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5621 | /* 14007 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/2, // MIs[3] |
| 5622 | /* 14011 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5623 | /* 14015 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5624 | /* 14019 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5625 | /* 14023 */ GIM_CheckConstantInt, /*MI*/3, /*Op*/1, GIMT_Encode8(4294967296), |
| 5626 | /* 14034 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5627 | /* 14038 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5628 | /* 14042 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5629 | /* 14046 */ // MIs[4] Operand 1 |
| 5630 | /* 14046 */ // No operand predicates |
| 5631 | /* 14046 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5632 | /* 14050 */ // MIs[0] offset |
| 5633 | /* 14050 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5634 | /* 14053 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5635 | /* 14055 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, (shl:{ *:[i64] } 4294967296:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p)), 0:{ *:[i64] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT032 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5636 | /* 14055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT032), |
| 5637 | /* 14058 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // rs |
| 5638 | /* 14062 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5639 | /* 14065 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5640 | /* 14067 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5641 | /* 14070 */ GIR_RootConstrainSelectedInstOperands, |
| 5642 | /* 14071 */ // GIR_Coverage, 346, |
| 5643 | /* 14071 */ GIR_EraseRootFromParent_Done, |
| 5644 | /* 14072 */ // Label 533: @14072 |
| 5645 | /* 14072 */ GIM_Try, /*On fail goto*//*Label 534*/ GIMT_Encode4(14180), // Rule ID 347 // |
| 5646 | /* 14077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5647 | /* 14080 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5648 | /* 14084 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5649 | /* 14088 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5650 | /* 14092 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5651 | /* 14096 */ // MIs[1] Operand 1 |
| 5652 | /* 14096 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 5653 | /* 14101 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5654 | /* 14105 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5655 | /* 14109 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5656 | /* 14113 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5657 | /* 14117 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5658 | /* 14122 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/2, // MIs[3] |
| 5659 | /* 14126 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5660 | /* 14130 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5661 | /* 14134 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5662 | /* 14138 */ GIM_CheckConstantInt8, /*MI*/3, /*Op*/1, 1, |
| 5663 | /* 14142 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5664 | /* 14146 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5665 | /* 14150 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5666 | /* 14154 */ // MIs[4] Operand 1 |
| 5667 | /* 14154 */ // No operand predicates |
| 5668 | /* 14154 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5669 | /* 14158 */ // MIs[0] offset |
| 5670 | /* 14158 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5671 | /* 14161 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5672 | /* 14163 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, (shl:{ *:[i64] } 1:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p)), 0:{ *:[i64] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT1 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5673 | /* 14163 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT1), |
| 5674 | /* 14166 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // rs |
| 5675 | /* 14170 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5676 | /* 14173 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5677 | /* 14175 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5678 | /* 14178 */ GIR_RootConstrainSelectedInstOperands, |
| 5679 | /* 14179 */ // GIR_Coverage, 347, |
| 5680 | /* 14179 */ GIR_EraseRootFromParent_Done, |
| 5681 | /* 14180 */ // Label 534: @14180 |
| 5682 | /* 14180 */ GIM_Try, /*On fail goto*//*Label 535*/ GIMT_Encode4(14295), // Rule ID 348 // |
| 5683 | /* 14185 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 5684 | /* 14188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5685 | /* 14192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5686 | /* 14196 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5687 | /* 14200 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5688 | /* 14204 */ // MIs[1] Operand 1 |
| 5689 | /* 14204 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 5690 | /* 14209 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 5691 | /* 14213 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_AND), |
| 5692 | /* 14217 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 5693 | /* 14221 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 5694 | /* 14225 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5695 | /* 14230 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/2, // MIs[3] |
| 5696 | /* 14234 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_SHL), |
| 5697 | /* 14238 */ GIM_CheckType, /*MI*/3, /*Op*/1, /*Type*/GILLT_s64, |
| 5698 | /* 14242 */ GIM_CheckType, /*MI*/3, /*Op*/2, /*Type*/GILLT_s64, |
| 5699 | /* 14246 */ GIM_CheckConstantInt, /*MI*/3, /*Op*/1, GIMT_Encode8(4294967296), |
| 5700 | /* 14257 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/3, /*OpIdx*/2, // MIs[4] |
| 5701 | /* 14261 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 5702 | /* 14265 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5_64), |
| 5703 | /* 14269 */ // MIs[4] Operand 1 |
| 5704 | /* 14269 */ // No operand predicates |
| 5705 | /* 14269 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5706 | /* 14273 */ // MIs[0] offset |
| 5707 | /* 14273 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5708 | /* 14276 */ GIM_CheckIsSafeToFold, /*NumInsns*/4, |
| 5709 | /* 14278 */ // (brcond (setcc:{ *:[i32] } (and:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, (shl:{ *:[i64] } 4294967296:{ *:[i64] }, (imm:{ *:[i64] })<<P:Predicate_immZExt5_64>>:$p)), 0:{ *:[i64] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BBIT132 GPR64Opnd:{ *:[i64] }:$rs, (imm:{ *:[i64] }):$p, (bb:{ *:[Other] }):$offset) |
| 5710 | /* 14278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BBIT132), |
| 5711 | /* 14281 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // rs |
| 5712 | /* 14285 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/4, // p |
| 5713 | /* 14288 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5714 | /* 14290 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5715 | /* 14293 */ GIR_RootConstrainSelectedInstOperands, |
| 5716 | /* 14294 */ // GIR_Coverage, 348, |
| 5717 | /* 14294 */ GIR_EraseRootFromParent_Done, |
| 5718 | /* 14295 */ // Label 535: @14295 |
| 5719 | /* 14295 */ GIM_Try, /*On fail goto*//*Label 536*/ GIMT_Encode4(14352), // Rule ID 94 // |
| 5720 | /* 14300 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 5721 | /* 14303 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5722 | /* 14307 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5723 | /* 14311 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5724 | /* 14315 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5725 | /* 14319 */ // MIs[1] Operand 1 |
| 5726 | /* 14319 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 5727 | /* 14324 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5728 | /* 14329 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5729 | /* 14333 */ // MIs[0] offset |
| 5730 | /* 14333 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5731 | /* 14336 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5732 | /* 14338 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEZ GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5733 | /* 14338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZ), |
| 5734 | /* 14341 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5735 | /* 14345 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5736 | /* 14347 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5737 | /* 14350 */ GIR_RootConstrainSelectedInstOperands, |
| 5738 | /* 14351 */ // GIR_Coverage, 94, |
| 5739 | /* 14351 */ GIR_EraseRootFromParent_Done, |
| 5740 | /* 14352 */ // Label 536: @14352 |
| 5741 | /* 14352 */ GIM_Try, /*On fail goto*//*Label 537*/ GIMT_Encode4(14409), // Rule ID 95 // |
| 5742 | /* 14357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 5743 | /* 14360 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5744 | /* 14364 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5745 | /* 14368 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5746 | /* 14372 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5747 | /* 14376 */ // MIs[1] Operand 1 |
| 5748 | /* 14376 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 5749 | /* 14381 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5750 | /* 14386 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5751 | /* 14390 */ // MIs[0] offset |
| 5752 | /* 14390 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5753 | /* 14393 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5754 | /* 14395 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGTZ GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5755 | /* 14395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGTZ), |
| 5756 | /* 14398 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5757 | /* 14402 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5758 | /* 14404 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5759 | /* 14407 */ GIR_RootConstrainSelectedInstOperands, |
| 5760 | /* 14408 */ // GIR_Coverage, 95, |
| 5761 | /* 14408 */ GIR_EraseRootFromParent_Done, |
| 5762 | /* 14409 */ // Label 537: @14409 |
| 5763 | /* 14409 */ GIM_Try, /*On fail goto*//*Label 538*/ GIMT_Encode4(14466), // Rule ID 96 // |
| 5764 | /* 14414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 5765 | /* 14417 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5766 | /* 14421 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5767 | /* 14425 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5768 | /* 14429 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5769 | /* 14433 */ // MIs[1] Operand 1 |
| 5770 | /* 14433 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 5771 | /* 14438 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5772 | /* 14443 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5773 | /* 14447 */ // MIs[0] offset |
| 5774 | /* 14447 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5775 | /* 14450 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5776 | /* 14452 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLEZ GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5777 | /* 14452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZ), |
| 5778 | /* 14455 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5779 | /* 14459 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5780 | /* 14461 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5781 | /* 14464 */ GIR_RootConstrainSelectedInstOperands, |
| 5782 | /* 14465 */ // GIR_Coverage, 96, |
| 5783 | /* 14465 */ GIR_EraseRootFromParent_Done, |
| 5784 | /* 14466 */ // Label 538: @14466 |
| 5785 | /* 14466 */ GIM_Try, /*On fail goto*//*Label 539*/ GIMT_Encode4(14523), // Rule ID 97 // |
| 5786 | /* 14471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 5787 | /* 14474 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5788 | /* 14478 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5789 | /* 14482 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5790 | /* 14486 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5791 | /* 14490 */ // MIs[1] Operand 1 |
| 5792 | /* 14490 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 5793 | /* 14495 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5794 | /* 14500 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5795 | /* 14504 */ // MIs[0] offset |
| 5796 | /* 14504 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5797 | /* 14507 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5798 | /* 14509 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTZ GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5799 | /* 14509 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTZ), |
| 5800 | /* 14512 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5801 | /* 14516 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5802 | /* 14518 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5803 | /* 14521 */ GIR_RootConstrainSelectedInstOperands, |
| 5804 | /* 14522 */ // GIR_Coverage, 97, |
| 5805 | /* 14522 */ GIR_EraseRootFromParent_Done, |
| 5806 | /* 14523 */ // Label 539: @14523 |
| 5807 | /* 14523 */ GIM_Try, /*On fail goto*//*Label 540*/ GIMT_Encode4(14580), // Rule ID 320 // |
| 5808 | /* 14528 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 5809 | /* 14531 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5810 | /* 14535 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5811 | /* 14539 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5812 | /* 14543 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5813 | /* 14547 */ // MIs[1] Operand 1 |
| 5814 | /* 14547 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 5815 | /* 14552 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5816 | /* 14557 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5817 | /* 14561 */ // MIs[0] offset |
| 5818 | /* 14561 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5819 | /* 14564 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5820 | /* 14566 */ // (brcond (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEZ64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5821 | /* 14566 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZ64), |
| 5822 | /* 14569 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5823 | /* 14573 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5824 | /* 14575 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5825 | /* 14578 */ GIR_RootConstrainSelectedInstOperands, |
| 5826 | /* 14579 */ // GIR_Coverage, 320, |
| 5827 | /* 14579 */ GIR_EraseRootFromParent_Done, |
| 5828 | /* 14580 */ // Label 540: @14580 |
| 5829 | /* 14580 */ GIM_Try, /*On fail goto*//*Label 541*/ GIMT_Encode4(14637), // Rule ID 321 // |
| 5830 | /* 14585 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 5831 | /* 14588 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5832 | /* 14592 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5833 | /* 14596 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5834 | /* 14600 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5835 | /* 14604 */ // MIs[1] Operand 1 |
| 5836 | /* 14604 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 5837 | /* 14609 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5838 | /* 14614 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5839 | /* 14618 */ // MIs[0] offset |
| 5840 | /* 14618 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5841 | /* 14621 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5842 | /* 14623 */ // (brcond (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGTZ64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5843 | /* 14623 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGTZ64), |
| 5844 | /* 14626 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5845 | /* 14630 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5846 | /* 14632 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5847 | /* 14635 */ GIR_RootConstrainSelectedInstOperands, |
| 5848 | /* 14636 */ // GIR_Coverage, 321, |
| 5849 | /* 14636 */ GIR_EraseRootFromParent_Done, |
| 5850 | /* 14637 */ // Label 541: @14637 |
| 5851 | /* 14637 */ GIM_Try, /*On fail goto*//*Label 542*/ GIMT_Encode4(14694), // Rule ID 322 // |
| 5852 | /* 14642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 5853 | /* 14645 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5854 | /* 14649 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5855 | /* 14653 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5856 | /* 14657 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5857 | /* 14661 */ // MIs[1] Operand 1 |
| 5858 | /* 14661 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 5859 | /* 14666 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5860 | /* 14671 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5861 | /* 14675 */ // MIs[0] offset |
| 5862 | /* 14675 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5863 | /* 14678 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5864 | /* 14680 */ // (brcond (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLEZ64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5865 | /* 14680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZ64), |
| 5866 | /* 14683 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5867 | /* 14687 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5868 | /* 14689 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5869 | /* 14692 */ GIR_RootConstrainSelectedInstOperands, |
| 5870 | /* 14693 */ // GIR_Coverage, 322, |
| 5871 | /* 14693 */ GIR_EraseRootFromParent_Done, |
| 5872 | /* 14694 */ // Label 542: @14694 |
| 5873 | /* 14694 */ GIM_Try, /*On fail goto*//*Label 543*/ GIMT_Encode4(14751), // Rule ID 323 // |
| 5874 | /* 14699 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 5875 | /* 14702 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5876 | /* 14706 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5877 | /* 14710 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 5878 | /* 14714 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 5879 | /* 14718 */ // MIs[1] Operand 1 |
| 5880 | /* 14718 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 5881 | /* 14723 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 5882 | /* 14728 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5883 | /* 14732 */ // MIs[0] offset |
| 5884 | /* 14732 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5885 | /* 14735 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5886 | /* 14737 */ // (brcond (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTZ64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5887 | /* 14737 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTZ64), |
| 5888 | /* 14740 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5889 | /* 14744 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5890 | /* 14746 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5891 | /* 14749 */ GIR_RootConstrainSelectedInstOperands, |
| 5892 | /* 14750 */ // GIR_Coverage, 323, |
| 5893 | /* 14750 */ GIR_EraseRootFromParent_Done, |
| 5894 | /* 14751 */ // Label 543: @14751 |
| 5895 | /* 14751 */ GIM_Try, /*On fail goto*//*Label 544*/ GIMT_Encode4(14808), // Rule ID 1184 // |
| 5896 | /* 14756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 5897 | /* 14759 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5898 | /* 14763 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5899 | /* 14767 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5900 | /* 14771 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5901 | /* 14775 */ // MIs[1] Operand 1 |
| 5902 | /* 14775 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 5903 | /* 14780 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5904 | /* 14785 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5905 | /* 14789 */ // MIs[0] offset |
| 5906 | /* 14789 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5907 | /* 14792 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5908 | /* 14794 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEZ_MM GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5909 | /* 14794 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZ_MM), |
| 5910 | /* 14797 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5911 | /* 14801 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5912 | /* 14803 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5913 | /* 14806 */ GIR_RootConstrainSelectedInstOperands, |
| 5914 | /* 14807 */ // GIR_Coverage, 1184, |
| 5915 | /* 14807 */ GIR_EraseRootFromParent_Done, |
| 5916 | /* 14808 */ // Label 544: @14808 |
| 5917 | /* 14808 */ GIM_Try, /*On fail goto*//*Label 545*/ GIMT_Encode4(14865), // Rule ID 1185 // |
| 5918 | /* 14813 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 5919 | /* 14816 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5920 | /* 14820 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5921 | /* 14824 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5922 | /* 14828 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5923 | /* 14832 */ // MIs[1] Operand 1 |
| 5924 | /* 14832 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 5925 | /* 14837 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5926 | /* 14842 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5927 | /* 14846 */ // MIs[0] offset |
| 5928 | /* 14846 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5929 | /* 14849 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5930 | /* 14851 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGTZ_MM GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5931 | /* 14851 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGTZ_MM), |
| 5932 | /* 14854 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5933 | /* 14858 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5934 | /* 14860 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5935 | /* 14863 */ GIR_RootConstrainSelectedInstOperands, |
| 5936 | /* 14864 */ // GIR_Coverage, 1185, |
| 5937 | /* 14864 */ GIR_EraseRootFromParent_Done, |
| 5938 | /* 14865 */ // Label 545: @14865 |
| 5939 | /* 14865 */ GIM_Try, /*On fail goto*//*Label 546*/ GIMT_Encode4(14922), // Rule ID 1186 // |
| 5940 | /* 14870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 5941 | /* 14873 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5942 | /* 14877 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5943 | /* 14881 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5944 | /* 14885 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5945 | /* 14889 */ // MIs[1] Operand 1 |
| 5946 | /* 14889 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 5947 | /* 14894 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5948 | /* 14899 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5949 | /* 14903 */ // MIs[0] offset |
| 5950 | /* 14903 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5951 | /* 14906 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5952 | /* 14908 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLEZ_MM GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5953 | /* 14908 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZ_MM), |
| 5954 | /* 14911 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5955 | /* 14915 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5956 | /* 14917 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5957 | /* 14920 */ GIR_RootConstrainSelectedInstOperands, |
| 5958 | /* 14921 */ // GIR_Coverage, 1186, |
| 5959 | /* 14921 */ GIR_EraseRootFromParent_Done, |
| 5960 | /* 14922 */ // Label 546: @14922 |
| 5961 | /* 14922 */ GIM_Try, /*On fail goto*//*Label 547*/ GIMT_Encode4(14979), // Rule ID 1187 // |
| 5962 | /* 14927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 5963 | /* 14930 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5964 | /* 14934 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5965 | /* 14938 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5966 | /* 14942 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5967 | /* 14946 */ // MIs[1] Operand 1 |
| 5968 | /* 14946 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 5969 | /* 14951 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5970 | /* 14956 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5971 | /* 14960 */ // MIs[0] offset |
| 5972 | /* 14960 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5973 | /* 14963 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5974 | /* 14965 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTZ_MM GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 5975 | /* 14965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTZ_MM), |
| 5976 | /* 14968 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 5977 | /* 14972 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 5978 | /* 14974 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 5979 | /* 14977 */ GIR_RootConstrainSelectedInstOperands, |
| 5980 | /* 14978 */ // GIR_Coverage, 1187, |
| 5981 | /* 14978 */ GIR_EraseRootFromParent_Done, |
| 5982 | /* 14979 */ // Label 547: @14979 |
| 5983 | /* 14979 */ GIM_Try, /*On fail goto*//*Label 548*/ GIMT_Encode4(15042), // Rule ID 1477 // |
| 5984 | /* 14984 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 5985 | /* 14987 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 5986 | /* 14991 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 5987 | /* 14995 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 5988 | /* 14999 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 5989 | /* 15003 */ // MIs[1] Operand 1 |
| 5990 | /* 15003 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 5991 | /* 15008 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 5992 | /* 15013 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 5993 | /* 15017 */ // MIs[0] dst |
| 5994 | /* 15017 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 5995 | /* 15020 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 5996 | /* 15022 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BNE GPR32:{ *:[i32] }:$lhs, ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 5997 | /* 15022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE), |
| 5998 | /* 15025 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 5999 | /* 15029 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6000 | /* 15035 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6001 | /* 15037 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6002 | /* 15040 */ GIR_RootConstrainSelectedInstOperands, |
| 6003 | /* 15041 */ // GIR_Coverage, 1477, |
| 6004 | /* 15041 */ GIR_EraseRootFromParent_Done, |
| 6005 | /* 15042 */ // Label 548: @15042 |
| 6006 | /* 15042 */ GIM_Try, /*On fail goto*//*Label 549*/ GIMT_Encode4(15105), // Rule ID 1478 // |
| 6007 | /* 15047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6008 | /* 15050 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6009 | /* 15054 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6010 | /* 15058 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6011 | /* 15062 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6012 | /* 15066 */ // MIs[1] Operand 1 |
| 6013 | /* 15066 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6014 | /* 15071 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6015 | /* 15076 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6016 | /* 15080 */ // MIs[0] dst |
| 6017 | /* 15080 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6018 | /* 15083 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6019 | /* 15085 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ GPR32:{ *:[i32] }:$lhs, ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6020 | /* 15085 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6021 | /* 15088 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6022 | /* 15092 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6023 | /* 15098 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6024 | /* 15100 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6025 | /* 15103 */ GIR_RootConstrainSelectedInstOperands, |
| 6026 | /* 15104 */ // GIR_Coverage, 1478, |
| 6027 | /* 15104 */ GIR_EraseRootFromParent_Done, |
| 6028 | /* 15105 */ // Label 549: @15105 |
| 6029 | /* 15105 */ GIM_Try, /*On fail goto*//*Label 550*/ GIMT_Encode4(15168), // Rule ID 1651 // |
| 6030 | /* 15110 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 6031 | /* 15113 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6032 | /* 15117 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6033 | /* 15121 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6034 | /* 15125 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6035 | /* 15129 */ // MIs[1] Operand 1 |
| 6036 | /* 15129 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 6037 | /* 15134 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6038 | /* 15139 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6039 | /* 15143 */ // MIs[0] dst |
| 6040 | /* 15143 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6041 | /* 15146 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6042 | /* 15148 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BNE64 GPR64:{ *:[i64] }:$lhs, ZERO_64:{ *:[i64] }, (bb:{ *:[Other] }):$dst) |
| 6043 | /* 15148 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE64), |
| 6044 | /* 15151 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6045 | /* 15155 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO_64), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6046 | /* 15161 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6047 | /* 15163 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6048 | /* 15166 */ GIR_RootConstrainSelectedInstOperands, |
| 6049 | /* 15167 */ // GIR_Coverage, 1651, |
| 6050 | /* 15167 */ GIR_EraseRootFromParent_Done, |
| 6051 | /* 15168 */ // Label 550: @15168 |
| 6052 | /* 15168 */ GIM_Try, /*On fail goto*//*Label 551*/ GIMT_Encode4(15231), // Rule ID 1652 // |
| 6053 | /* 15173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 6054 | /* 15176 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6055 | /* 15180 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6056 | /* 15184 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6057 | /* 15188 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6058 | /* 15192 */ // MIs[1] Operand 1 |
| 6059 | /* 15192 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6060 | /* 15197 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6061 | /* 15202 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6062 | /* 15206 */ // MIs[0] dst |
| 6063 | /* 15206 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6064 | /* 15209 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6065 | /* 15211 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ64 GPR64:{ *:[i64] }:$lhs, ZERO_64:{ *:[i64] }, (bb:{ *:[Other] }):$dst) |
| 6066 | /* 15211 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ64), |
| 6067 | /* 15214 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6068 | /* 15218 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO_64), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6069 | /* 15224 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6070 | /* 15226 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6071 | /* 15229 */ GIR_RootConstrainSelectedInstOperands, |
| 6072 | /* 15230 */ // GIR_Coverage, 1652, |
| 6073 | /* 15230 */ GIR_EraseRootFromParent_Done, |
| 6074 | /* 15231 */ // Label 551: @15231 |
| 6075 | /* 15231 */ GIM_Try, /*On fail goto*//*Label 552*/ GIMT_Encode4(15285), // Rule ID 1983 // |
| 6076 | /* 15236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 6077 | /* 15239 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6078 | /* 15243 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6079 | /* 15247 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6080 | /* 15251 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6081 | /* 15255 */ // MIs[1] Operand 1 |
| 6082 | /* 15255 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6083 | /* 15260 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 6084 | /* 15265 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6085 | /* 15269 */ // MIs[0] targ16 |
| 6086 | /* 15269 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6087 | /* 15272 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6088 | /* 15274 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$targ16) => (BeqzRxImm16 CPU16Regs:{ *:[i32] }:$rx, (bb:{ *:[Other] }):$targ16) |
| 6089 | /* 15274 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BeqzRxImm16), |
| 6090 | /* 15277 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 6091 | /* 15281 */ GIR_RootToRootCopy, /*OpIdx*/1, // targ16 |
| 6092 | /* 15283 */ GIR_RootConstrainSelectedInstOperands, |
| 6093 | /* 15284 */ // GIR_Coverage, 1983, |
| 6094 | /* 15284 */ GIR_EraseRootFromParent_Done, |
| 6095 | /* 15285 */ // Label 552: @15285 |
| 6096 | /* 15285 */ GIM_Try, /*On fail goto*//*Label 553*/ GIMT_Encode4(15339), // Rule ID 1992 // |
| 6097 | /* 15290 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 6098 | /* 15293 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6099 | /* 15297 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6100 | /* 15301 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6101 | /* 15305 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6102 | /* 15309 */ // MIs[1] Operand 1 |
| 6103 | /* 15309 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 6104 | /* 15314 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 6105 | /* 15319 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6106 | /* 15323 */ // MIs[0] targ16 |
| 6107 | /* 15323 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6108 | /* 15326 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6109 | /* 15328 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, 0:{ *:[i32] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$targ16) => (BnezRxImm16 CPU16Regs:{ *:[i32] }:$rx, (bb:{ *:[Other] }):$targ16) |
| 6110 | /* 15328 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BnezRxImm16), |
| 6111 | /* 15331 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 6112 | /* 15335 */ GIR_RootToRootCopy, /*OpIdx*/1, // targ16 |
| 6113 | /* 15337 */ GIR_RootConstrainSelectedInstOperands, |
| 6114 | /* 15338 */ // GIR_Coverage, 1992, |
| 6115 | /* 15338 */ GIR_EraseRootFromParent_Done, |
| 6116 | /* 15339 */ // Label 553: @15339 |
| 6117 | /* 15339 */ GIM_Try, /*On fail goto*//*Label 554*/ GIMT_Encode4(15402), // Rule ID 2322 // |
| 6118 | /* 15344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 6119 | /* 15347 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6120 | /* 15351 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6121 | /* 15355 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6122 | /* 15359 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6123 | /* 15363 */ // MIs[1] Operand 1 |
| 6124 | /* 15363 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 6125 | /* 15368 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6126 | /* 15373 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6127 | /* 15377 */ // MIs[0] dst |
| 6128 | /* 15377 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6129 | /* 15380 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6130 | /* 15382 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BNE_MM GPR32:{ *:[i32] }:$lhs, ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6131 | /* 15382 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE_MM), |
| 6132 | /* 15385 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6133 | /* 15389 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6134 | /* 15395 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6135 | /* 15397 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6136 | /* 15400 */ GIR_RootConstrainSelectedInstOperands, |
| 6137 | /* 15401 */ // GIR_Coverage, 2322, |
| 6138 | /* 15401 */ GIR_EraseRootFromParent_Done, |
| 6139 | /* 15402 */ // Label 554: @15402 |
| 6140 | /* 15402 */ GIM_Try, /*On fail goto*//*Label 555*/ GIMT_Encode4(15465), // Rule ID 2323 // |
| 6141 | /* 15407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 6142 | /* 15410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6143 | /* 15414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6144 | /* 15418 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6145 | /* 15422 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6146 | /* 15426 */ // MIs[1] Operand 1 |
| 6147 | /* 15426 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6148 | /* 15431 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6149 | /* 15436 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6150 | /* 15440 */ // MIs[0] dst |
| 6151 | /* 15440 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6152 | /* 15443 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6153 | /* 15445 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ_MM GPR32:{ *:[i32] }:$lhs, ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6154 | /* 15445 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ_MM), |
| 6155 | /* 15448 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6156 | /* 15452 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6157 | /* 15458 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6158 | /* 15460 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6159 | /* 15463 */ GIR_RootConstrainSelectedInstOperands, |
| 6160 | /* 15464 */ // GIR_Coverage, 2323, |
| 6161 | /* 15464 */ GIR_EraseRootFromParent_Done, |
| 6162 | /* 15465 */ // Label 555: @15465 |
| 6163 | /* 15465 */ GIM_Try, /*On fail goto*//*Label 556*/ GIMT_Encode4(15522), // Rule ID 2473 // |
| 6164 | /* 15470 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 6165 | /* 15473 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6166 | /* 15477 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6167 | /* 15481 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6168 | /* 15485 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6169 | /* 15489 */ // MIs[1] Operand 1 |
| 6170 | /* 15489 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 6171 | /* 15494 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6172 | /* 15499 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6173 | /* 15503 */ // MIs[0] dst |
| 6174 | /* 15503 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6175 | /* 15506 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6176 | /* 15508 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BNEZC_MMR6 GPR32:{ *:[i32] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6177 | /* 15508 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNEZC_MMR6), |
| 6178 | /* 15511 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6179 | /* 15515 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6180 | /* 15517 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6181 | /* 15520 */ GIR_RootConstrainSelectedInstOperands, |
| 6182 | /* 15521 */ // GIR_Coverage, 2473, |
| 6183 | /* 15521 */ GIR_EraseRootFromParent_Done, |
| 6184 | /* 15522 */ // Label 556: @15522 |
| 6185 | /* 15522 */ GIM_Try, /*On fail goto*//*Label 557*/ GIMT_Encode4(15579), // Rule ID 2474 // |
| 6186 | /* 15527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 6187 | /* 15530 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6188 | /* 15534 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6189 | /* 15538 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6190 | /* 15542 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6191 | /* 15546 */ // MIs[1] Operand 1 |
| 6192 | /* 15546 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6193 | /* 15551 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6194 | /* 15556 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6195 | /* 15560 */ // MIs[0] dst |
| 6196 | /* 15560 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6197 | /* 15563 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6198 | /* 15565 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQZC_MMR6 GPR32:{ *:[i32] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6199 | /* 15565 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQZC_MMR6), |
| 6200 | /* 15568 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6201 | /* 15572 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6202 | /* 15574 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6203 | /* 15577 */ GIR_RootConstrainSelectedInstOperands, |
| 6204 | /* 15578 */ // GIR_Coverage, 2474, |
| 6205 | /* 15578 */ GIR_EraseRootFromParent_Done, |
| 6206 | /* 15579 */ // Label 557: @15579 |
| 6207 | /* 15579 */ GIM_Try, /*On fail goto*//*Label 558*/ GIMT_Encode4(15631), // Rule ID 1488 // |
| 6208 | /* 15584 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6209 | /* 15587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6210 | /* 15591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6211 | /* 15595 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6212 | /* 15599 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6213 | /* 15603 */ // MIs[1] Operand 1 |
| 6214 | /* 15603 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 6215 | /* 15608 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 1, |
| 6216 | /* 15612 */ // MIs[0] dst |
| 6217 | /* 15612 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6218 | /* 15615 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6219 | /* 15617 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$lhs, 1:{ *:[i32] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BLEZ i32:{ *:[i32] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6220 | /* 15617 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZ), |
| 6221 | /* 15620 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6222 | /* 15624 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6223 | /* 15626 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6224 | /* 15629 */ GIR_RootConstrainSelectedInstOperands, |
| 6225 | /* 15630 */ // GIR_Coverage, 1488, |
| 6226 | /* 15630 */ GIR_EraseRootFromParent_Done, |
| 6227 | /* 15631 */ // Label 558: @15631 |
| 6228 | /* 15631 */ GIM_Try, /*On fail goto*//*Label 559*/ GIMT_Encode4(15683), // Rule ID 1489 // |
| 6229 | /* 15636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6230 | /* 15639 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6231 | /* 15643 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6232 | /* 15647 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6233 | /* 15651 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6234 | /* 15655 */ // MIs[1] Operand 1 |
| 6235 | /* 15655 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 6236 | /* 15660 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 255, |
| 6237 | /* 15664 */ // MIs[0] dst |
| 6238 | /* 15664 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6239 | /* 15667 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6240 | /* 15669 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$lhs, -1:{ *:[i32] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BGEZ i32:{ *:[i32] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6241 | /* 15669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZ), |
| 6242 | /* 15672 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6243 | /* 15676 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6244 | /* 15678 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6245 | /* 15681 */ GIR_RootConstrainSelectedInstOperands, |
| 6246 | /* 15682 */ // GIR_Coverage, 1489, |
| 6247 | /* 15682 */ GIR_EraseRootFromParent_Done, |
| 6248 | /* 15683 */ // Label 559: @15683 |
| 6249 | /* 15683 */ GIM_Try, /*On fail goto*//*Label 560*/ GIMT_Encode4(15735), // Rule ID 1662 // |
| 6250 | /* 15688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 6251 | /* 15691 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6252 | /* 15695 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6253 | /* 15699 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6254 | /* 15703 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6255 | /* 15707 */ // MIs[1] Operand 1 |
| 6256 | /* 15707 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 6257 | /* 15712 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 1, |
| 6258 | /* 15716 */ // MIs[0] dst |
| 6259 | /* 15716 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6260 | /* 15719 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6261 | /* 15721 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$lhs, 1:{ *:[i64] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BLEZ64 i64:{ *:[i64] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6262 | /* 15721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZ64), |
| 6263 | /* 15724 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6264 | /* 15728 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6265 | /* 15730 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6266 | /* 15733 */ GIR_RootConstrainSelectedInstOperands, |
| 6267 | /* 15734 */ // GIR_Coverage, 1662, |
| 6268 | /* 15734 */ GIR_EraseRootFromParent_Done, |
| 6269 | /* 15735 */ // Label 560: @15735 |
| 6270 | /* 15735 */ GIM_Try, /*On fail goto*//*Label 561*/ GIMT_Encode4(15787), // Rule ID 1663 // |
| 6271 | /* 15740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 6272 | /* 15743 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6273 | /* 15747 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6274 | /* 15751 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6275 | /* 15755 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6276 | /* 15759 */ // MIs[1] Operand 1 |
| 6277 | /* 15759 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 6278 | /* 15764 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 255, |
| 6279 | /* 15768 */ // MIs[0] dst |
| 6280 | /* 15768 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6281 | /* 15771 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6282 | /* 15773 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$lhs, -1:{ *:[i64] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BGEZ64 i64:{ *:[i64] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6283 | /* 15773 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZ64), |
| 6284 | /* 15776 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6285 | /* 15780 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6286 | /* 15782 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6287 | /* 15785 */ GIR_RootConstrainSelectedInstOperands, |
| 6288 | /* 15786 */ // GIR_Coverage, 1663, |
| 6289 | /* 15786 */ GIR_EraseRootFromParent_Done, |
| 6290 | /* 15787 */ // Label 561: @15787 |
| 6291 | /* 15787 */ GIM_Try, /*On fail goto*//*Label 562*/ GIMT_Encode4(15839), // Rule ID 1893 // |
| 6292 | /* 15792 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6293 | /* 15795 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6294 | /* 15799 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6295 | /* 15803 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6296 | /* 15807 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6297 | /* 15811 */ // MIs[1] Operand 1 |
| 6298 | /* 15811 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 6299 | /* 15816 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6300 | /* 15820 */ // MIs[0] offset |
| 6301 | /* 15820 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6302 | /* 15823 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6303 | /* 15825 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6304 | /* 15825 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTZC), |
| 6305 | /* 15828 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6306 | /* 15832 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6307 | /* 15834 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6308 | /* 15837 */ GIR_RootConstrainSelectedInstOperands, |
| 6309 | /* 15838 */ // GIR_Coverage, 1893, |
| 6310 | /* 15838 */ GIR_EraseRootFromParent_Done, |
| 6311 | /* 15839 */ // Label 562: @15839 |
| 6312 | /* 15839 */ GIM_Try, /*On fail goto*//*Label 563*/ GIMT_Encode4(15891), // Rule ID 1894 // |
| 6313 | /* 15844 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6314 | /* 15847 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6315 | /* 15851 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6316 | /* 15855 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6317 | /* 15859 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6318 | /* 15863 */ // MIs[1] Operand 1 |
| 6319 | /* 15863 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 6320 | /* 15868 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 1, |
| 6321 | /* 15872 */ // MIs[0] offset |
| 6322 | /* 15872 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6323 | /* 15875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6324 | /* 15877 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, 1:{ *:[i32] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLEZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6325 | /* 15877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZC), |
| 6326 | /* 15880 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6327 | /* 15884 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6328 | /* 15886 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6329 | /* 15889 */ GIR_RootConstrainSelectedInstOperands, |
| 6330 | /* 15890 */ // GIR_Coverage, 1894, |
| 6331 | /* 15890 */ GIR_EraseRootFromParent_Done, |
| 6332 | /* 15891 */ // Label 563: @15891 |
| 6333 | /* 15891 */ GIM_Try, /*On fail goto*//*Label 564*/ GIMT_Encode4(15943), // Rule ID 1895 // |
| 6334 | /* 15896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6335 | /* 15899 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6336 | /* 15903 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6337 | /* 15907 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6338 | /* 15911 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6339 | /* 15915 */ // MIs[1] Operand 1 |
| 6340 | /* 15915 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 6341 | /* 15920 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6342 | /* 15924 */ // MIs[0] offset |
| 6343 | /* 15924 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6344 | /* 15927 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6345 | /* 15929 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6346 | /* 15929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZC), |
| 6347 | /* 15932 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6348 | /* 15936 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6349 | /* 15938 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6350 | /* 15941 */ GIR_RootConstrainSelectedInstOperands, |
| 6351 | /* 15942 */ // GIR_Coverage, 1895, |
| 6352 | /* 15942 */ GIR_EraseRootFromParent_Done, |
| 6353 | /* 15943 */ // Label 564: @15943 |
| 6354 | /* 15943 */ GIM_Try, /*On fail goto*//*Label 565*/ GIMT_Encode4(15995), // Rule ID 1896 // |
| 6355 | /* 15948 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6356 | /* 15951 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6357 | /* 15955 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6358 | /* 15959 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6359 | /* 15963 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6360 | /* 15967 */ // MIs[1] Operand 1 |
| 6361 | /* 15967 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 6362 | /* 15972 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 1, |
| 6363 | /* 15976 */ // MIs[0] offset |
| 6364 | /* 15976 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6365 | /* 15979 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6366 | /* 15981 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, 1:{ *:[i32] }, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGTZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6367 | /* 15981 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGTZC), |
| 6368 | /* 15984 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6369 | /* 15988 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6370 | /* 15990 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6371 | /* 15993 */ GIR_RootConstrainSelectedInstOperands, |
| 6372 | /* 15994 */ // GIR_Coverage, 1896, |
| 6373 | /* 15994 */ GIR_EraseRootFromParent_Done, |
| 6374 | /* 15995 */ // Label 565: @15995 |
| 6375 | /* 15995 */ GIM_Try, /*On fail goto*//*Label 566*/ GIMT_Encode4(16047), // Rule ID 1897 // |
| 6376 | /* 16000 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6377 | /* 16003 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6378 | /* 16007 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6379 | /* 16011 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6380 | /* 16015 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6381 | /* 16019 */ // MIs[1] Operand 1 |
| 6382 | /* 16019 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 6383 | /* 16024 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6384 | /* 16028 */ // MIs[0] offset |
| 6385 | /* 16028 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6386 | /* 16031 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6387 | /* 16033 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGTZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6388 | /* 16033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGTZC), |
| 6389 | /* 16036 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6390 | /* 16040 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6391 | /* 16042 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6392 | /* 16045 */ GIR_RootConstrainSelectedInstOperands, |
| 6393 | /* 16046 */ // GIR_Coverage, 1897, |
| 6394 | /* 16046 */ GIR_EraseRootFromParent_Done, |
| 6395 | /* 16047 */ // Label 566: @16047 |
| 6396 | /* 16047 */ GIM_Try, /*On fail goto*//*Label 567*/ GIMT_Encode4(16099), // Rule ID 1898 // |
| 6397 | /* 16052 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6398 | /* 16055 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6399 | /* 16059 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6400 | /* 16063 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6401 | /* 16067 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6402 | /* 16071 */ // MIs[1] Operand 1 |
| 6403 | /* 16071 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 6404 | /* 16076 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 255, |
| 6405 | /* 16080 */ // MIs[0] offset |
| 6406 | /* 16080 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6407 | /* 16083 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6408 | /* 16085 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, -1:{ *:[i32] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6409 | /* 16085 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZC), |
| 6410 | /* 16088 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6411 | /* 16092 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6412 | /* 16094 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6413 | /* 16097 */ GIR_RootConstrainSelectedInstOperands, |
| 6414 | /* 16098 */ // GIR_Coverage, 1898, |
| 6415 | /* 16098 */ GIR_EraseRootFromParent_Done, |
| 6416 | /* 16099 */ // Label 567: @16099 |
| 6417 | /* 16099 */ GIM_Try, /*On fail goto*//*Label 568*/ GIMT_Encode4(16151), // Rule ID 1899 // |
| 6418 | /* 16104 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6419 | /* 16107 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6420 | /* 16111 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6421 | /* 16115 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6422 | /* 16119 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6423 | /* 16123 */ // MIs[1] Operand 1 |
| 6424 | /* 16123 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 6425 | /* 16128 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6426 | /* 16132 */ // MIs[0] offset |
| 6427 | /* 16132 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6428 | /* 16135 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6429 | /* 16137 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, 0:{ *:[i32] }, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLEZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6430 | /* 16137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZC), |
| 6431 | /* 16140 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6432 | /* 16144 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6433 | /* 16146 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6434 | /* 16149 */ GIR_RootConstrainSelectedInstOperands, |
| 6435 | /* 16150 */ // GIR_Coverage, 1899, |
| 6436 | /* 16150 */ GIR_EraseRootFromParent_Done, |
| 6437 | /* 16151 */ // Label 568: @16151 |
| 6438 | /* 16151 */ GIM_Try, /*On fail goto*//*Label 569*/ GIMT_Encode4(16203), // Rule ID 1900 // |
| 6439 | /* 16156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6440 | /* 16159 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6441 | /* 16163 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6442 | /* 16167 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6443 | /* 16171 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6444 | /* 16175 */ // MIs[1] Operand 1 |
| 6445 | /* 16175 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 6446 | /* 16180 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 255, |
| 6447 | /* 16184 */ // MIs[0] offset |
| 6448 | /* 16184 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6449 | /* 16187 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6450 | /* 16189 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$rs, -1:{ *:[i32] }, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTZC GPR32Opnd:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6451 | /* 16189 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTZC), |
| 6452 | /* 16192 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6453 | /* 16196 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6454 | /* 16198 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6455 | /* 16201 */ GIR_RootConstrainSelectedInstOperands, |
| 6456 | /* 16202 */ // GIR_Coverage, 1900, |
| 6457 | /* 16202 */ GIR_EraseRootFromParent_Done, |
| 6458 | /* 16203 */ // Label 569: @16203 |
| 6459 | /* 16203 */ GIM_Try, /*On fail goto*//*Label 570*/ GIMT_Encode4(16255), // Rule ID 1936 // |
| 6460 | /* 16208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6461 | /* 16211 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6462 | /* 16215 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6463 | /* 16219 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6464 | /* 16223 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6465 | /* 16227 */ // MIs[1] Operand 1 |
| 6466 | /* 16227 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 6467 | /* 16232 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6468 | /* 16236 */ // MIs[0] offset |
| 6469 | /* 16236 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6470 | /* 16239 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6471 | /* 16241 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6472 | /* 16241 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTZC64), |
| 6473 | /* 16244 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6474 | /* 16248 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6475 | /* 16250 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6476 | /* 16253 */ GIR_RootConstrainSelectedInstOperands, |
| 6477 | /* 16254 */ // GIR_Coverage, 1936, |
| 6478 | /* 16254 */ GIR_EraseRootFromParent_Done, |
| 6479 | /* 16255 */ // Label 570: @16255 |
| 6480 | /* 16255 */ GIM_Try, /*On fail goto*//*Label 571*/ GIMT_Encode4(16307), // Rule ID 1937 // |
| 6481 | /* 16260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6482 | /* 16263 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6483 | /* 16267 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6484 | /* 16271 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6485 | /* 16275 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6486 | /* 16279 */ // MIs[1] Operand 1 |
| 6487 | /* 16279 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 6488 | /* 16284 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 1, |
| 6489 | /* 16288 */ // MIs[0] offset |
| 6490 | /* 16288 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6491 | /* 16291 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6492 | /* 16293 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, 1:{ *:[i64] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLEZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6493 | /* 16293 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZC64), |
| 6494 | /* 16296 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6495 | /* 16300 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6496 | /* 16302 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6497 | /* 16305 */ GIR_RootConstrainSelectedInstOperands, |
| 6498 | /* 16306 */ // GIR_Coverage, 1937, |
| 6499 | /* 16306 */ GIR_EraseRootFromParent_Done, |
| 6500 | /* 16307 */ // Label 571: @16307 |
| 6501 | /* 16307 */ GIM_Try, /*On fail goto*//*Label 572*/ GIMT_Encode4(16359), // Rule ID 1938 // |
| 6502 | /* 16312 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6503 | /* 16315 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6504 | /* 16319 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6505 | /* 16323 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6506 | /* 16327 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6507 | /* 16331 */ // MIs[1] Operand 1 |
| 6508 | /* 16331 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 6509 | /* 16336 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6510 | /* 16340 */ // MIs[0] offset |
| 6511 | /* 16340 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6512 | /* 16343 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6513 | /* 16345 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6514 | /* 16345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZC64), |
| 6515 | /* 16348 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6516 | /* 16352 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6517 | /* 16354 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6518 | /* 16357 */ GIR_RootConstrainSelectedInstOperands, |
| 6519 | /* 16358 */ // GIR_Coverage, 1938, |
| 6520 | /* 16358 */ GIR_EraseRootFromParent_Done, |
| 6521 | /* 16359 */ // Label 572: @16359 |
| 6522 | /* 16359 */ GIM_Try, /*On fail goto*//*Label 573*/ GIMT_Encode4(16411), // Rule ID 1939 // |
| 6523 | /* 16364 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6524 | /* 16367 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6525 | /* 16371 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6526 | /* 16375 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6527 | /* 16379 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6528 | /* 16383 */ // MIs[1] Operand 1 |
| 6529 | /* 16383 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 6530 | /* 16388 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 1, |
| 6531 | /* 16392 */ // MIs[0] offset |
| 6532 | /* 16392 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6533 | /* 16395 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6534 | /* 16397 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, 1:{ *:[i64] }, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGTZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6535 | /* 16397 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGTZC64), |
| 6536 | /* 16400 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6537 | /* 16404 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6538 | /* 16406 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6539 | /* 16409 */ GIR_RootConstrainSelectedInstOperands, |
| 6540 | /* 16410 */ // GIR_Coverage, 1939, |
| 6541 | /* 16410 */ GIR_EraseRootFromParent_Done, |
| 6542 | /* 16411 */ // Label 573: @16411 |
| 6543 | /* 16411 */ GIM_Try, /*On fail goto*//*Label 574*/ GIMT_Encode4(16463), // Rule ID 1940 // |
| 6544 | /* 16416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6545 | /* 16419 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6546 | /* 16423 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6547 | /* 16427 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6548 | /* 16431 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6549 | /* 16435 */ // MIs[1] Operand 1 |
| 6550 | /* 16435 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 6551 | /* 16440 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6552 | /* 16444 */ // MIs[0] offset |
| 6553 | /* 16444 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6554 | /* 16447 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6555 | /* 16449 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGTZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6556 | /* 16449 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGTZC64), |
| 6557 | /* 16452 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6558 | /* 16456 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6559 | /* 16458 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6560 | /* 16461 */ GIR_RootConstrainSelectedInstOperands, |
| 6561 | /* 16462 */ // GIR_Coverage, 1940, |
| 6562 | /* 16462 */ GIR_EraseRootFromParent_Done, |
| 6563 | /* 16463 */ // Label 574: @16463 |
| 6564 | /* 16463 */ GIM_Try, /*On fail goto*//*Label 575*/ GIMT_Encode4(16515), // Rule ID 1941 // |
| 6565 | /* 16468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6566 | /* 16471 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6567 | /* 16475 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6568 | /* 16479 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6569 | /* 16483 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6570 | /* 16487 */ // MIs[1] Operand 1 |
| 6571 | /* 16487 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 6572 | /* 16492 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 255, |
| 6573 | /* 16496 */ // MIs[0] offset |
| 6574 | /* 16496 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6575 | /* 16499 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6576 | /* 16501 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, -1:{ *:[i64] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6577 | /* 16501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZC64), |
| 6578 | /* 16504 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6579 | /* 16508 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6580 | /* 16510 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6581 | /* 16513 */ GIR_RootConstrainSelectedInstOperands, |
| 6582 | /* 16514 */ // GIR_Coverage, 1941, |
| 6583 | /* 16514 */ GIR_EraseRootFromParent_Done, |
| 6584 | /* 16515 */ // Label 575: @16515 |
| 6585 | /* 16515 */ GIM_Try, /*On fail goto*//*Label 576*/ GIMT_Encode4(16567), // Rule ID 1942 // |
| 6586 | /* 16520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6587 | /* 16523 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6588 | /* 16527 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6589 | /* 16531 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6590 | /* 16535 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6591 | /* 16539 */ // MIs[1] Operand 1 |
| 6592 | /* 16539 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 6593 | /* 16544 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 6594 | /* 16548 */ // MIs[0] offset |
| 6595 | /* 16548 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6596 | /* 16551 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6597 | /* 16553 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, 0:{ *:[i64] }, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLEZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6598 | /* 16553 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZC64), |
| 6599 | /* 16556 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6600 | /* 16560 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6601 | /* 16562 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6602 | /* 16565 */ GIR_RootConstrainSelectedInstOperands, |
| 6603 | /* 16566 */ // GIR_Coverage, 1942, |
| 6604 | /* 16566 */ GIR_EraseRootFromParent_Done, |
| 6605 | /* 16567 */ // Label 576: @16567 |
| 6606 | /* 16567 */ GIM_Try, /*On fail goto*//*Label 577*/ GIMT_Encode4(16619), // Rule ID 1943 // |
| 6607 | /* 16572 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 6608 | /* 16575 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6609 | /* 16579 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6610 | /* 16583 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6611 | /* 16587 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6612 | /* 16591 */ // MIs[1] Operand 1 |
| 6613 | /* 16591 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 6614 | /* 16596 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 255, |
| 6615 | /* 16600 */ // MIs[0] offset |
| 6616 | /* 16600 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6617 | /* 16603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6618 | /* 16605 */ // (brcond (setcc:{ *:[i32] } i64:{ *:[i64] }:$rs, -1:{ *:[i64] }, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTZC64 GPR64Opnd:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 6619 | /* 16605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTZC64), |
| 6620 | /* 16608 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6621 | /* 16612 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6622 | /* 16614 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6623 | /* 16617 */ GIR_RootConstrainSelectedInstOperands, |
| 6624 | /* 16618 */ // GIR_Coverage, 1943, |
| 6625 | /* 16618 */ GIR_EraseRootFromParent_Done, |
| 6626 | /* 16619 */ // Label 577: @16619 |
| 6627 | /* 16619 */ GIM_Try, /*On fail goto*//*Label 578*/ GIMT_Encode4(16671), // Rule ID 2333 // |
| 6628 | /* 16624 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 6629 | /* 16627 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6630 | /* 16631 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6631 | /* 16635 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6632 | /* 16639 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6633 | /* 16643 */ // MIs[1] Operand 1 |
| 6634 | /* 16643 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 6635 | /* 16648 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 1, |
| 6636 | /* 16652 */ // MIs[0] dst |
| 6637 | /* 16652 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6638 | /* 16655 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6639 | /* 16657 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$lhs, 1:{ *:[i32] }, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BLEZ_MM i32:{ *:[i32] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6640 | /* 16657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLEZ_MM), |
| 6641 | /* 16660 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6642 | /* 16664 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6643 | /* 16666 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6644 | /* 16669 */ GIR_RootConstrainSelectedInstOperands, |
| 6645 | /* 16670 */ // GIR_Coverage, 2333, |
| 6646 | /* 16670 */ GIR_EraseRootFromParent_Done, |
| 6647 | /* 16671 */ // Label 578: @16671 |
| 6648 | /* 16671 */ GIM_Try, /*On fail goto*//*Label 579*/ GIMT_Encode4(16723), // Rule ID 2334 // |
| 6649 | /* 16676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 6650 | /* 16679 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6651 | /* 16683 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6652 | /* 16687 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6653 | /* 16691 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6654 | /* 16695 */ // MIs[1] Operand 1 |
| 6655 | /* 16695 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 6656 | /* 16700 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 255, |
| 6657 | /* 16704 */ // MIs[0] dst |
| 6658 | /* 16704 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6659 | /* 16707 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6660 | /* 16709 */ // (brcond (setcc:{ *:[i32] } i32:{ *:[i32] }:$lhs, -1:{ *:[i32] }, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BGEZ_MM i32:{ *:[i32] }:$lhs, (bb:{ *:[Other] }):$dst) |
| 6661 | /* 16709 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEZ_MM), |
| 6662 | /* 16712 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6663 | /* 16716 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6664 | /* 16718 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6665 | /* 16721 */ GIR_RootConstrainSelectedInstOperands, |
| 6666 | /* 16722 */ // GIR_Coverage, 2334, |
| 6667 | /* 16722 */ GIR_EraseRootFromParent_Done, |
| 6668 | /* 16723 */ // Label 579: @16723 |
| 6669 | /* 16723 */ GIM_Try, /*On fail goto*//*Label 580*/ GIMT_Encode4(16785), // Rule ID 92 // |
| 6670 | /* 16728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6671 | /* 16731 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6672 | /* 16735 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6673 | /* 16739 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6674 | /* 16743 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6675 | /* 16747 */ // MIs[1] Operand 1 |
| 6676 | /* 16747 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6677 | /* 16752 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6678 | /* 16757 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6679 | /* 16762 */ // MIs[0] offset |
| 6680 | /* 16762 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6681 | /* 16765 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6682 | /* 16767 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BEQ GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 6683 | /* 16767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6684 | /* 16770 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6685 | /* 16774 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 6686 | /* 16778 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6687 | /* 16780 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6688 | /* 16783 */ GIR_RootConstrainSelectedInstOperands, |
| 6689 | /* 16784 */ // GIR_Coverage, 92, |
| 6690 | /* 16784 */ GIR_EraseRootFromParent_Done, |
| 6691 | /* 16785 */ // Label 580: @16785 |
| 6692 | /* 16785 */ GIM_Try, /*On fail goto*//*Label 581*/ GIMT_Encode4(16847), // Rule ID 93 // |
| 6693 | /* 16790 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6694 | /* 16793 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6695 | /* 16797 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6696 | /* 16801 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6697 | /* 16805 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6698 | /* 16809 */ // MIs[1] Operand 1 |
| 6699 | /* 16809 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 6700 | /* 16814 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6701 | /* 16819 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6702 | /* 16824 */ // MIs[0] offset |
| 6703 | /* 16824 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6704 | /* 16827 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6705 | /* 16829 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BNE GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 6706 | /* 16829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE), |
| 6707 | /* 16832 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6708 | /* 16836 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 6709 | /* 16840 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6710 | /* 16842 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6711 | /* 16845 */ GIR_RootConstrainSelectedInstOperands, |
| 6712 | /* 16846 */ // GIR_Coverage, 93, |
| 6713 | /* 16846 */ GIR_EraseRootFromParent_Done, |
| 6714 | /* 16847 */ // Label 581: @16847 |
| 6715 | /* 16847 */ GIM_Try, /*On fail goto*//*Label 582*/ GIMT_Encode4(16909), // Rule ID 318 // |
| 6716 | /* 16852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 6717 | /* 16855 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6718 | /* 16859 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6719 | /* 16863 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6720 | /* 16867 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6721 | /* 16871 */ // MIs[1] Operand 1 |
| 6722 | /* 16871 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6723 | /* 16876 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6724 | /* 16881 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6725 | /* 16886 */ // MIs[0] offset |
| 6726 | /* 16886 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6727 | /* 16889 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6728 | /* 16891 */ // (brcond (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BEQ64 GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, (bb:{ *:[Other] }):$offset) |
| 6729 | /* 16891 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ64), |
| 6730 | /* 16894 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6731 | /* 16898 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 6732 | /* 16902 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6733 | /* 16904 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6734 | /* 16907 */ GIR_RootConstrainSelectedInstOperands, |
| 6735 | /* 16908 */ // GIR_Coverage, 318, |
| 6736 | /* 16908 */ GIR_EraseRootFromParent_Done, |
| 6737 | /* 16909 */ // Label 582: @16909 |
| 6738 | /* 16909 */ GIM_Try, /*On fail goto*//*Label 583*/ GIMT_Encode4(16971), // Rule ID 319 // |
| 6739 | /* 16914 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 6740 | /* 16917 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6741 | /* 16921 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6742 | /* 16925 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6743 | /* 16929 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6744 | /* 16933 */ // MIs[1] Operand 1 |
| 6745 | /* 16933 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 6746 | /* 16938 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6747 | /* 16943 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6748 | /* 16948 */ // MIs[0] offset |
| 6749 | /* 16948 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6750 | /* 16951 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6751 | /* 16953 */ // (brcond (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BNE64 GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, (bb:{ *:[Other] }):$offset) |
| 6752 | /* 16953 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE64), |
| 6753 | /* 16956 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6754 | /* 16960 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 6755 | /* 16964 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6756 | /* 16966 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6757 | /* 16969 */ GIR_RootConstrainSelectedInstOperands, |
| 6758 | /* 16970 */ // GIR_Coverage, 319, |
| 6759 | /* 16970 */ GIR_EraseRootFromParent_Done, |
| 6760 | /* 16971 */ // Label 583: @16971 |
| 6761 | /* 16971 */ GIM_Try, /*On fail goto*//*Label 584*/ GIMT_Encode4(17033), // Rule ID 1182 // |
| 6762 | /* 16976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 6763 | /* 16979 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6764 | /* 16983 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6765 | /* 16987 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6766 | /* 16991 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6767 | /* 16995 */ // MIs[1] Operand 1 |
| 6768 | /* 16995 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 6769 | /* 17000 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6770 | /* 17005 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6771 | /* 17010 */ // MIs[0] offset |
| 6772 | /* 17010 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6773 | /* 17013 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6774 | /* 17015 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BEQ_MM GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 6775 | /* 17015 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ_MM), |
| 6776 | /* 17018 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6777 | /* 17022 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 6778 | /* 17026 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6779 | /* 17028 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6780 | /* 17031 */ GIR_RootConstrainSelectedInstOperands, |
| 6781 | /* 17032 */ // GIR_Coverage, 1182, |
| 6782 | /* 17032 */ GIR_EraseRootFromParent_Done, |
| 6783 | /* 17033 */ // Label 584: @17033 |
| 6784 | /* 17033 */ GIM_Try, /*On fail goto*//*Label 585*/ GIMT_Encode4(17095), // Rule ID 1183 // |
| 6785 | /* 17038 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 6786 | /* 17041 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6787 | /* 17045 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6788 | /* 17049 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6789 | /* 17053 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6790 | /* 17057 */ // MIs[1] Operand 1 |
| 6791 | /* 17057 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 6792 | /* 17062 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6793 | /* 17067 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6794 | /* 17072 */ // MIs[0] offset |
| 6795 | /* 17072 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6796 | /* 17075 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6797 | /* 17077 */ // (brcond (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BNE_MM GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 6798 | /* 17077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE_MM), |
| 6799 | /* 17080 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 6800 | /* 17084 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 6801 | /* 17088 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 6802 | /* 17090 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6803 | /* 17093 */ GIR_RootConstrainSelectedInstOperands, |
| 6804 | /* 17094 */ // GIR_Coverage, 1183, |
| 6805 | /* 17094 */ GIR_EraseRootFromParent_Done, |
| 6806 | /* 17095 */ // Label 585: @17095 |
| 6807 | /* 17095 */ GIM_Try, /*On fail goto*//*Label 586*/ GIMT_Encode4(17180), // Rule ID 1479 // |
| 6808 | /* 17100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6809 | /* 17103 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6810 | /* 17107 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6811 | /* 17111 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6812 | /* 17115 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6813 | /* 17119 */ // MIs[1] Operand 1 |
| 6814 | /* 17119 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 6815 | /* 17124 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6816 | /* 17129 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6817 | /* 17134 */ // MIs[0] dst |
| 6818 | /* 17134 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6819 | /* 17137 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6820 | /* 17139 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6821 | /* 17139 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6822 | /* 17142 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 6823 | /* 17146 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6824 | /* 17151 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6825 | /* 17155 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 6826 | /* 17159 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6827 | /* 17161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6828 | /* 17164 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6829 | /* 17167 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6830 | /* 17173 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6831 | /* 17175 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6832 | /* 17178 */ GIR_RootConstrainSelectedInstOperands, |
| 6833 | /* 17179 */ // GIR_Coverage, 1479, |
| 6834 | /* 17179 */ GIR_EraseRootFromParent_Done, |
| 6835 | /* 17180 */ // Label 586: @17180 |
| 6836 | /* 17180 */ GIM_Try, /*On fail goto*//*Label 587*/ GIMT_Encode4(17265), // Rule ID 1480 // |
| 6837 | /* 17185 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6838 | /* 17188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6839 | /* 17192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6840 | /* 17196 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6841 | /* 17200 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6842 | /* 17204 */ // MIs[1] Operand 1 |
| 6843 | /* 17204 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 6844 | /* 17209 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6845 | /* 17214 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6846 | /* 17219 */ // MIs[0] dst |
| 6847 | /* 17219 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6848 | /* 17222 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6849 | /* 17224 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6850 | /* 17224 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6851 | /* 17227 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 6852 | /* 17231 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6853 | /* 17236 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6854 | /* 17240 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 6855 | /* 17244 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6856 | /* 17246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6857 | /* 17249 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6858 | /* 17252 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6859 | /* 17258 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6860 | /* 17260 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6861 | /* 17263 */ GIR_RootConstrainSelectedInstOperands, |
| 6862 | /* 17264 */ // GIR_Coverage, 1480, |
| 6863 | /* 17264 */ GIR_EraseRootFromParent_Done, |
| 6864 | /* 17265 */ // Label 587: @17265 |
| 6865 | /* 17265 */ GIM_Try, /*On fail goto*//*Label 588*/ GIMT_Encode4(17350), // Rule ID 1485 // |
| 6866 | /* 17270 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6867 | /* 17273 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6868 | /* 17277 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6869 | /* 17281 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6870 | /* 17285 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6871 | /* 17289 */ // MIs[1] Operand 1 |
| 6872 | /* 17289 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 6873 | /* 17294 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6874 | /* 17299 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6875 | /* 17304 */ // MIs[0] dst |
| 6876 | /* 17304 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6877 | /* 17307 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6878 | /* 17309 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6879 | /* 17309 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6880 | /* 17312 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 6881 | /* 17316 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6882 | /* 17321 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 6883 | /* 17325 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6884 | /* 17329 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6885 | /* 17331 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6886 | /* 17334 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6887 | /* 17337 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6888 | /* 17343 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6889 | /* 17345 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6890 | /* 17348 */ GIR_RootConstrainSelectedInstOperands, |
| 6891 | /* 17349 */ // GIR_Coverage, 1485, |
| 6892 | /* 17349 */ GIR_EraseRootFromParent_Done, |
| 6893 | /* 17350 */ // Label 588: @17350 |
| 6894 | /* 17350 */ GIM_Try, /*On fail goto*//*Label 589*/ GIMT_Encode4(17435), // Rule ID 1486 // |
| 6895 | /* 17355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 6896 | /* 17358 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6897 | /* 17362 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6898 | /* 17366 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 6899 | /* 17370 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 6900 | /* 17374 */ // MIs[1] Operand 1 |
| 6901 | /* 17374 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 6902 | /* 17379 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6903 | /* 17384 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 6904 | /* 17389 */ // MIs[0] dst |
| 6905 | /* 17389 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6906 | /* 17392 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6907 | /* 17394 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6908 | /* 17394 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6909 | /* 17397 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 6910 | /* 17401 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6911 | /* 17406 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 6912 | /* 17410 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6913 | /* 17414 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6914 | /* 17416 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6915 | /* 17419 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6916 | /* 17422 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6917 | /* 17428 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6918 | /* 17430 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6919 | /* 17433 */ GIR_RootConstrainSelectedInstOperands, |
| 6920 | /* 17434 */ // GIR_Coverage, 1486, |
| 6921 | /* 17434 */ GIR_EraseRootFromParent_Done, |
| 6922 | /* 17435 */ // Label 589: @17435 |
| 6923 | /* 17435 */ GIM_Try, /*On fail goto*//*Label 590*/ GIMT_Encode4(17520), // Rule ID 1653 // |
| 6924 | /* 17440 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 6925 | /* 17443 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6926 | /* 17447 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6927 | /* 17451 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6928 | /* 17455 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6929 | /* 17459 */ // MIs[1] Operand 1 |
| 6930 | /* 17459 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 6931 | /* 17464 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6932 | /* 17469 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6933 | /* 17474 */ // MIs[0] dst |
| 6934 | /* 17474 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6935 | /* 17477 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6936 | /* 17479 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6937 | /* 17479 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6938 | /* 17482 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 6939 | /* 17486 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6940 | /* 17491 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6941 | /* 17495 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 6942 | /* 17499 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6943 | /* 17501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6944 | /* 17504 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6945 | /* 17507 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6946 | /* 17513 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6947 | /* 17515 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6948 | /* 17518 */ GIR_RootConstrainSelectedInstOperands, |
| 6949 | /* 17519 */ // GIR_Coverage, 1653, |
| 6950 | /* 17519 */ GIR_EraseRootFromParent_Done, |
| 6951 | /* 17520 */ // Label 590: @17520 |
| 6952 | /* 17520 */ GIM_Try, /*On fail goto*//*Label 591*/ GIMT_Encode4(17605), // Rule ID 1654 // |
| 6953 | /* 17525 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 6954 | /* 17528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6955 | /* 17532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6956 | /* 17536 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6957 | /* 17540 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6958 | /* 17544 */ // MIs[1] Operand 1 |
| 6959 | /* 17544 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 6960 | /* 17549 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6961 | /* 17554 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6962 | /* 17559 */ // MIs[0] dst |
| 6963 | /* 17559 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6964 | /* 17562 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6965 | /* 17564 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETUGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6966 | /* 17564 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6967 | /* 17567 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 6968 | /* 17571 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6969 | /* 17576 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 6970 | /* 17580 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 6971 | /* 17584 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 6972 | /* 17586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 6973 | /* 17589 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 6974 | /* 17592 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 6975 | /* 17598 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 6976 | /* 17600 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 6977 | /* 17603 */ GIR_RootConstrainSelectedInstOperands, |
| 6978 | /* 17604 */ // GIR_Coverage, 1654, |
| 6979 | /* 17604 */ GIR_EraseRootFromParent_Done, |
| 6980 | /* 17605 */ // Label 591: @17605 |
| 6981 | /* 17605 */ GIM_Try, /*On fail goto*//*Label 592*/ GIMT_Encode4(17690), // Rule ID 1659 // |
| 6982 | /* 17610 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 6983 | /* 17613 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 6984 | /* 17617 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 6985 | /* 17621 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 6986 | /* 17625 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 6987 | /* 17629 */ // MIs[1] Operand 1 |
| 6988 | /* 17629 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 6989 | /* 17634 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6990 | /* 17639 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 6991 | /* 17644 */ // MIs[0] dst |
| 6992 | /* 17644 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 6993 | /* 17647 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 6994 | /* 17649 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 6995 | /* 17649 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 6996 | /* 17652 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 6997 | /* 17656 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 6998 | /* 17661 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 6999 | /* 17665 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7000 | /* 17669 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7001 | /* 17671 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 7002 | /* 17674 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7003 | /* 17677 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7004 | /* 17683 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7005 | /* 17685 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7006 | /* 17688 */ GIR_RootConstrainSelectedInstOperands, |
| 7007 | /* 17689 */ // GIR_Coverage, 1659, |
| 7008 | /* 17689 */ GIR_EraseRootFromParent_Done, |
| 7009 | /* 17690 */ // Label 592: @17690 |
| 7010 | /* 17690 */ GIM_Try, /*On fail goto*//*Label 593*/ GIMT_Encode4(17775), // Rule ID 1660 // |
| 7011 | /* 17695 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 7012 | /* 17698 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7013 | /* 17702 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7014 | /* 17706 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7015 | /* 17710 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7016 | /* 17714 */ // MIs[1] Operand 1 |
| 7017 | /* 17714 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 7018 | /* 17719 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7019 | /* 17724 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7020 | /* 17729 */ // MIs[0] dst |
| 7021 | /* 17729 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7022 | /* 17732 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7023 | /* 17734 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETULE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 7024 | /* 17734 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7025 | /* 17737 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 7026 | /* 17741 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7027 | /* 17746 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7028 | /* 17750 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7029 | /* 17754 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7030 | /* 17756 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ), |
| 7031 | /* 17759 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7032 | /* 17762 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7033 | /* 17768 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7034 | /* 17770 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7035 | /* 17773 */ GIR_RootConstrainSelectedInstOperands, |
| 7036 | /* 17774 */ // GIR_Coverage, 1660, |
| 7037 | /* 17774 */ GIR_EraseRootFromParent_Done, |
| 7038 | /* 17775 */ // Label 593: @17775 |
| 7039 | /* 17775 */ GIM_Try, /*On fail goto*//*Label 594*/ GIMT_Encode4(17837), // Rule ID 1901 // |
| 7040 | /* 17780 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7041 | /* 17783 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7042 | /* 17787 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7043 | /* 17791 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7044 | /* 17795 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7045 | /* 17799 */ // MIs[1] Operand 1 |
| 7046 | /* 17799 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 7047 | /* 17804 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7048 | /* 17809 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7049 | /* 17814 */ // MIs[0] offset |
| 7050 | /* 17814 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7051 | /* 17817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7052 | /* 17819 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTC GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7053 | /* 17819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTC), |
| 7054 | /* 17822 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7055 | /* 17826 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7056 | /* 17830 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7057 | /* 17832 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7058 | /* 17835 */ GIR_RootConstrainSelectedInstOperands, |
| 7059 | /* 17836 */ // GIR_Coverage, 1901, |
| 7060 | /* 17836 */ GIR_EraseRootFromParent_Done, |
| 7061 | /* 17837 */ // Label 594: @17837 |
| 7062 | /* 17837 */ GIM_Try, /*On fail goto*//*Label 595*/ GIMT_Encode4(17899), // Rule ID 1902 // |
| 7063 | /* 17842 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7064 | /* 17845 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7065 | /* 17849 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7066 | /* 17853 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7067 | /* 17857 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7068 | /* 17861 */ // MIs[1] Operand 1 |
| 7069 | /* 17861 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 7070 | /* 17866 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7071 | /* 17871 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7072 | /* 17876 */ // MIs[0] offset |
| 7073 | /* 17876 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7074 | /* 17879 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7075 | /* 17881 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEC GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7076 | /* 17881 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEC), |
| 7077 | /* 17884 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7078 | /* 17888 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7079 | /* 17892 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7080 | /* 17894 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7081 | /* 17897 */ GIR_RootConstrainSelectedInstOperands, |
| 7082 | /* 17898 */ // GIR_Coverage, 1902, |
| 7083 | /* 17898 */ GIR_EraseRootFromParent_Done, |
| 7084 | /* 17899 */ // Label 595: @17899 |
| 7085 | /* 17899 */ GIM_Try, /*On fail goto*//*Label 596*/ GIMT_Encode4(17961), // Rule ID 1903 // |
| 7086 | /* 17904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7087 | /* 17907 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7088 | /* 17911 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7089 | /* 17915 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7090 | /* 17919 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7091 | /* 17923 */ // MIs[1] Operand 1 |
| 7092 | /* 17923 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 7093 | /* 17928 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7094 | /* 17933 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7095 | /* 17938 */ // MIs[0] offset |
| 7096 | /* 17938 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7097 | /* 17941 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7098 | /* 17943 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTC GPR32:{ *:[i32] }:$rt, GPR32:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7099 | /* 17943 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTC), |
| 7100 | /* 17946 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7101 | /* 17950 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7102 | /* 17954 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7103 | /* 17956 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7104 | /* 17959 */ GIR_RootConstrainSelectedInstOperands, |
| 7105 | /* 17960 */ // GIR_Coverage, 1903, |
| 7106 | /* 17960 */ GIR_EraseRootFromParent_Done, |
| 7107 | /* 17961 */ // Label 596: @17961 |
| 7108 | /* 17961 */ GIM_Try, /*On fail goto*//*Label 597*/ GIMT_Encode4(18023), // Rule ID 1904 // |
| 7109 | /* 17966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7110 | /* 17969 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7111 | /* 17973 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7112 | /* 17977 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7113 | /* 17981 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7114 | /* 17985 */ // MIs[1] Operand 1 |
| 7115 | /* 17985 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 7116 | /* 17990 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7117 | /* 17995 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7118 | /* 18000 */ // MIs[0] offset |
| 7119 | /* 18000 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7120 | /* 18003 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7121 | /* 18005 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEC GPR32:{ *:[i32] }:$rt, GPR32:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7122 | /* 18005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEC), |
| 7123 | /* 18008 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7124 | /* 18012 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7125 | /* 18016 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7126 | /* 18018 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7127 | /* 18021 */ GIR_RootConstrainSelectedInstOperands, |
| 7128 | /* 18022 */ // GIR_Coverage, 1904, |
| 7129 | /* 18022 */ GIR_EraseRootFromParent_Done, |
| 7130 | /* 18023 */ // Label 597: @18023 |
| 7131 | /* 18023 */ GIM_Try, /*On fail goto*//*Label 598*/ GIMT_Encode4(18085), // Rule ID 1905 // |
| 7132 | /* 18028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7133 | /* 18031 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7134 | /* 18035 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7135 | /* 18039 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7136 | /* 18043 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7137 | /* 18047 */ // MIs[1] Operand 1 |
| 7138 | /* 18047 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULT), |
| 7139 | /* 18052 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7140 | /* 18057 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7141 | /* 18062 */ // MIs[0] offset |
| 7142 | /* 18062 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7143 | /* 18065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7144 | /* 18067 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETULT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTUC GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7145 | /* 18067 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTUC), |
| 7146 | /* 18070 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7147 | /* 18074 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7148 | /* 18078 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7149 | /* 18080 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7150 | /* 18083 */ GIR_RootConstrainSelectedInstOperands, |
| 7151 | /* 18084 */ // GIR_Coverage, 1905, |
| 7152 | /* 18084 */ GIR_EraseRootFromParent_Done, |
| 7153 | /* 18085 */ // Label 598: @18085 |
| 7154 | /* 18085 */ GIM_Try, /*On fail goto*//*Label 599*/ GIMT_Encode4(18147), // Rule ID 1906 // |
| 7155 | /* 18090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7156 | /* 18093 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7157 | /* 18097 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7158 | /* 18101 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7159 | /* 18105 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7160 | /* 18109 */ // MIs[1] Operand 1 |
| 7161 | /* 18109 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 7162 | /* 18114 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7163 | /* 18119 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7164 | /* 18124 */ // MIs[0] offset |
| 7165 | /* 18124 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7166 | /* 18127 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7167 | /* 18129 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETUGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEUC GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7168 | /* 18129 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEUC), |
| 7169 | /* 18132 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7170 | /* 18136 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7171 | /* 18140 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7172 | /* 18142 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7173 | /* 18145 */ GIR_RootConstrainSelectedInstOperands, |
| 7174 | /* 18146 */ // GIR_Coverage, 1906, |
| 7175 | /* 18146 */ GIR_EraseRootFromParent_Done, |
| 7176 | /* 18147 */ // Label 599: @18147 |
| 7177 | /* 18147 */ GIM_Try, /*On fail goto*//*Label 600*/ GIMT_Encode4(18209), // Rule ID 1907 // |
| 7178 | /* 18152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7179 | /* 18155 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7180 | /* 18159 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7181 | /* 18163 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7182 | /* 18167 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7183 | /* 18171 */ // MIs[1] Operand 1 |
| 7184 | /* 18171 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGT), |
| 7185 | /* 18176 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7186 | /* 18181 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7187 | /* 18186 */ // MIs[0] offset |
| 7188 | /* 18186 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7189 | /* 18189 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7190 | /* 18191 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETUGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTUC GPR32:{ *:[i32] }:$rt, GPR32:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7191 | /* 18191 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTUC), |
| 7192 | /* 18194 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7193 | /* 18198 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7194 | /* 18202 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7195 | /* 18204 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7196 | /* 18207 */ GIR_RootConstrainSelectedInstOperands, |
| 7197 | /* 18208 */ // GIR_Coverage, 1907, |
| 7198 | /* 18208 */ GIR_EraseRootFromParent_Done, |
| 7199 | /* 18209 */ // Label 600: @18209 |
| 7200 | /* 18209 */ GIM_Try, /*On fail goto*//*Label 601*/ GIMT_Encode4(18271), // Rule ID 1908 // |
| 7201 | /* 18214 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7202 | /* 18217 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7203 | /* 18221 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7204 | /* 18225 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7205 | /* 18229 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7206 | /* 18233 */ // MIs[1] Operand 1 |
| 7207 | /* 18233 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 7208 | /* 18238 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7209 | /* 18243 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7210 | /* 18248 */ // MIs[0] offset |
| 7211 | /* 18248 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7212 | /* 18251 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7213 | /* 18253 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$rs, GPR32:{ *:[i32] }:$rt, SETULE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEUC GPR32:{ *:[i32] }:$rt, GPR32:{ *:[i32] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7214 | /* 18253 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEUC), |
| 7215 | /* 18256 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7216 | /* 18260 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7217 | /* 18264 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7218 | /* 18266 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7219 | /* 18269 */ GIR_RootConstrainSelectedInstOperands, |
| 7220 | /* 18270 */ // GIR_Coverage, 1908, |
| 7221 | /* 18270 */ GIR_EraseRootFromParent_Done, |
| 7222 | /* 18271 */ // Label 601: @18271 |
| 7223 | /* 18271 */ GIM_Try, /*On fail goto*//*Label 602*/ GIMT_Encode4(18333), // Rule ID 1944 // |
| 7224 | /* 18276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7225 | /* 18279 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7226 | /* 18283 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7227 | /* 18287 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7228 | /* 18291 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7229 | /* 18295 */ // MIs[1] Operand 1 |
| 7230 | /* 18295 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 7231 | /* 18300 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7232 | /* 18305 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7233 | /* 18310 */ // MIs[0] offset |
| 7234 | /* 18310 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7235 | /* 18313 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7236 | /* 18315 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTC64 GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7237 | /* 18315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTC64), |
| 7238 | /* 18318 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7239 | /* 18322 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7240 | /* 18326 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7241 | /* 18328 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7242 | /* 18331 */ GIR_RootConstrainSelectedInstOperands, |
| 7243 | /* 18332 */ // GIR_Coverage, 1944, |
| 7244 | /* 18332 */ GIR_EraseRootFromParent_Done, |
| 7245 | /* 18333 */ // Label 602: @18333 |
| 7246 | /* 18333 */ GIM_Try, /*On fail goto*//*Label 603*/ GIMT_Encode4(18395), // Rule ID 1945 // |
| 7247 | /* 18338 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7248 | /* 18341 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7249 | /* 18345 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7250 | /* 18349 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7251 | /* 18353 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7252 | /* 18357 */ // MIs[1] Operand 1 |
| 7253 | /* 18357 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 7254 | /* 18362 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7255 | /* 18367 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7256 | /* 18372 */ // MIs[0] offset |
| 7257 | /* 18372 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7258 | /* 18375 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7259 | /* 18377 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEC64 GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7260 | /* 18377 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEC64), |
| 7261 | /* 18380 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7262 | /* 18384 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7263 | /* 18388 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7264 | /* 18390 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7265 | /* 18393 */ GIR_RootConstrainSelectedInstOperands, |
| 7266 | /* 18394 */ // GIR_Coverage, 1945, |
| 7267 | /* 18394 */ GIR_EraseRootFromParent_Done, |
| 7268 | /* 18395 */ // Label 603: @18395 |
| 7269 | /* 18395 */ GIM_Try, /*On fail goto*//*Label 604*/ GIMT_Encode4(18457), // Rule ID 1946 // |
| 7270 | /* 18400 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7271 | /* 18403 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7272 | /* 18407 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7273 | /* 18411 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7274 | /* 18415 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7275 | /* 18419 */ // MIs[1] Operand 1 |
| 7276 | /* 18419 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 7277 | /* 18424 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7278 | /* 18429 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7279 | /* 18434 */ // MIs[0] offset |
| 7280 | /* 18434 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7281 | /* 18437 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7282 | /* 18439 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTC64 GPR64:{ *:[i64] }:$rt, GPR64:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7283 | /* 18439 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTC64), |
| 7284 | /* 18442 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7285 | /* 18446 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7286 | /* 18450 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7287 | /* 18452 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7288 | /* 18455 */ GIR_RootConstrainSelectedInstOperands, |
| 7289 | /* 18456 */ // GIR_Coverage, 1946, |
| 7290 | /* 18456 */ GIR_EraseRootFromParent_Done, |
| 7291 | /* 18457 */ // Label 604: @18457 |
| 7292 | /* 18457 */ GIM_Try, /*On fail goto*//*Label 605*/ GIMT_Encode4(18519), // Rule ID 1947 // |
| 7293 | /* 18462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7294 | /* 18465 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7295 | /* 18469 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7296 | /* 18473 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7297 | /* 18477 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7298 | /* 18481 */ // MIs[1] Operand 1 |
| 7299 | /* 18481 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 7300 | /* 18486 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7301 | /* 18491 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7302 | /* 18496 */ // MIs[0] offset |
| 7303 | /* 18496 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7304 | /* 18499 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7305 | /* 18501 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEC64 GPR64:{ *:[i64] }:$rt, GPR64:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7306 | /* 18501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEC64), |
| 7307 | /* 18504 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7308 | /* 18508 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7309 | /* 18512 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7310 | /* 18514 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7311 | /* 18517 */ GIR_RootConstrainSelectedInstOperands, |
| 7312 | /* 18518 */ // GIR_Coverage, 1947, |
| 7313 | /* 18518 */ GIR_EraseRootFromParent_Done, |
| 7314 | /* 18519 */ // Label 605: @18519 |
| 7315 | /* 18519 */ GIM_Try, /*On fail goto*//*Label 606*/ GIMT_Encode4(18581), // Rule ID 1948 // |
| 7316 | /* 18524 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7317 | /* 18527 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7318 | /* 18531 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7319 | /* 18535 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7320 | /* 18539 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7321 | /* 18543 */ // MIs[1] Operand 1 |
| 7322 | /* 18543 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULT), |
| 7323 | /* 18548 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7324 | /* 18553 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7325 | /* 18558 */ // MIs[0] offset |
| 7326 | /* 18558 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7327 | /* 18561 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7328 | /* 18563 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETULT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTUC64 GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7329 | /* 18563 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTUC64), |
| 7330 | /* 18566 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7331 | /* 18570 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7332 | /* 18574 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7333 | /* 18576 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7334 | /* 18579 */ GIR_RootConstrainSelectedInstOperands, |
| 7335 | /* 18580 */ // GIR_Coverage, 1948, |
| 7336 | /* 18580 */ GIR_EraseRootFromParent_Done, |
| 7337 | /* 18581 */ // Label 606: @18581 |
| 7338 | /* 18581 */ GIM_Try, /*On fail goto*//*Label 607*/ GIMT_Encode4(18643), // Rule ID 1949 // |
| 7339 | /* 18586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7340 | /* 18589 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7341 | /* 18593 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7342 | /* 18597 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7343 | /* 18601 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7344 | /* 18605 */ // MIs[1] Operand 1 |
| 7345 | /* 18605 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 7346 | /* 18610 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7347 | /* 18615 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7348 | /* 18620 */ // MIs[0] offset |
| 7349 | /* 18620 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7350 | /* 18623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7351 | /* 18625 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETUGE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEUC64 GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, (bb:{ *:[Other] }):$offset) |
| 7352 | /* 18625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEUC64), |
| 7353 | /* 18628 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7354 | /* 18632 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7355 | /* 18636 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7356 | /* 18638 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7357 | /* 18641 */ GIR_RootConstrainSelectedInstOperands, |
| 7358 | /* 18642 */ // GIR_Coverage, 1949, |
| 7359 | /* 18642 */ GIR_EraseRootFromParent_Done, |
| 7360 | /* 18643 */ // Label 607: @18643 |
| 7361 | /* 18643 */ GIM_Try, /*On fail goto*//*Label 608*/ GIMT_Encode4(18705), // Rule ID 1950 // |
| 7362 | /* 18648 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7363 | /* 18651 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7364 | /* 18655 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7365 | /* 18659 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7366 | /* 18663 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7367 | /* 18667 */ // MIs[1] Operand 1 |
| 7368 | /* 18667 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGT), |
| 7369 | /* 18672 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7370 | /* 18677 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7371 | /* 18682 */ // MIs[0] offset |
| 7372 | /* 18682 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7373 | /* 18685 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7374 | /* 18687 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETUGT:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BLTUC64 GPR64:{ *:[i64] }:$rt, GPR64:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7375 | /* 18687 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BLTUC64), |
| 7376 | /* 18690 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7377 | /* 18694 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7378 | /* 18698 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7379 | /* 18700 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7380 | /* 18703 */ GIR_RootConstrainSelectedInstOperands, |
| 7381 | /* 18704 */ // GIR_Coverage, 1950, |
| 7382 | /* 18704 */ GIR_EraseRootFromParent_Done, |
| 7383 | /* 18705 */ // Label 608: @18705 |
| 7384 | /* 18705 */ GIM_Try, /*On fail goto*//*Label 609*/ GIMT_Encode4(18767), // Rule ID 1951 // |
| 7385 | /* 18710 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips_UseCompactBranches), |
| 7386 | /* 18713 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7387 | /* 18717 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7388 | /* 18721 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 7389 | /* 18725 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 7390 | /* 18729 */ // MIs[1] Operand 1 |
| 7391 | /* 18729 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 7392 | /* 18734 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7393 | /* 18739 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7394 | /* 18744 */ // MIs[0] offset |
| 7395 | /* 18744 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7396 | /* 18747 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7397 | /* 18749 */ // (brcond (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$rs, GPR64:{ *:[i64] }:$rt, SETULE:{ *:[Other] }), (bb:{ *:[Other] }):$offset) => (BGEUC64 GPR64:{ *:[i64] }:$rt, GPR64:{ *:[i64] }:$rs, (bb:{ *:[Other] }):$offset) |
| 7398 | /* 18749 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BGEUC64), |
| 7399 | /* 18752 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 7400 | /* 18756 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 7401 | /* 18760 */ GIR_RootToRootCopy, /*OpIdx*/1, // offset |
| 7402 | /* 18762 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7403 | /* 18765 */ GIR_RootConstrainSelectedInstOperands, |
| 7404 | /* 18766 */ // GIR_Coverage, 1951, |
| 7405 | /* 18766 */ GIR_EraseRootFromParent_Done, |
| 7406 | /* 18767 */ // Label 609: @18767 |
| 7407 | /* 18767 */ GIM_Try, /*On fail goto*//*Label 610*/ GIMT_Encode4(18826), // Rule ID 1981 // |
| 7408 | /* 18772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 7409 | /* 18775 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7410 | /* 18779 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7411 | /* 18783 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7412 | /* 18787 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7413 | /* 18791 */ // MIs[1] Operand 1 |
| 7414 | /* 18791 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 7415 | /* 18796 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7416 | /* 18801 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7417 | /* 18806 */ // MIs[0] imm16 |
| 7418 | /* 18806 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7419 | /* 18809 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7420 | /* 18811 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETEQ:{ *:[Other] }), (bb:{ *:[Other] }):$imm16) => (BteqzT8CmpX16 CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, (bb:{ *:[Other] }):$imm16) |
| 7421 | /* 18811 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BteqzT8CmpX16), |
| 7422 | /* 18814 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 7423 | /* 18818 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // ry |
| 7424 | /* 18822 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm16 |
| 7425 | /* 18824 */ GIR_RootConstrainSelectedInstOperands, |
| 7426 | /* 18825 */ // GIR_Coverage, 1981, |
| 7427 | /* 18825 */ GIR_EraseRootFromParent_Done, |
| 7428 | /* 18826 */ // Label 610: @18826 |
| 7429 | /* 18826 */ GIM_Try, /*On fail goto*//*Label 611*/ GIMT_Encode4(18885), // Rule ID 1984 // |
| 7430 | /* 18831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 7431 | /* 18834 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7432 | /* 18838 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7433 | /* 18842 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7434 | /* 18846 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7435 | /* 18850 */ // MIs[1] Operand 1 |
| 7436 | /* 18850 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 7437 | /* 18855 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7438 | /* 18860 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7439 | /* 18865 */ // MIs[0] imm16 |
| 7440 | /* 18865 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7441 | /* 18868 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7442 | /* 18870 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETGT:{ *:[Other] }), (bb:{ *:[Other] }):$imm16) => (BtnezT8SltX16 CPU16Regs:{ *:[i32] }:$ry, CPU16Regs:{ *:[i32] }:$rx, (bb:{ *:[Other] }):$imm16) |
| 7443 | /* 18870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BtnezT8SltX16), |
| 7444 | /* 18873 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // ry |
| 7445 | /* 18877 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 7446 | /* 18881 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm16 |
| 7447 | /* 18883 */ GIR_RootConstrainSelectedInstOperands, |
| 7448 | /* 18884 */ // GIR_Coverage, 1984, |
| 7449 | /* 18884 */ GIR_EraseRootFromParent_Done, |
| 7450 | /* 18885 */ // Label 611: @18885 |
| 7451 | /* 18885 */ GIM_Try, /*On fail goto*//*Label 612*/ GIMT_Encode4(18944), // Rule ID 1985 // |
| 7452 | /* 18890 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 7453 | /* 18893 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7454 | /* 18897 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7455 | /* 18901 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7456 | /* 18905 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7457 | /* 18909 */ // MIs[1] Operand 1 |
| 7458 | /* 18909 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 7459 | /* 18914 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7460 | /* 18919 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7461 | /* 18924 */ // MIs[0] imm16 |
| 7462 | /* 18924 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7463 | /* 18927 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7464 | /* 18929 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$imm16) => (BteqzT8SltX16 CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, (bb:{ *:[Other] }):$imm16) |
| 7465 | /* 18929 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BteqzT8SltX16), |
| 7466 | /* 18932 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 7467 | /* 18936 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // ry |
| 7468 | /* 18940 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm16 |
| 7469 | /* 18942 */ GIR_RootConstrainSelectedInstOperands, |
| 7470 | /* 18943 */ // GIR_Coverage, 1985, |
| 7471 | /* 18943 */ GIR_EraseRootFromParent_Done, |
| 7472 | /* 18944 */ // Label 612: @18944 |
| 7473 | /* 18944 */ GIM_Try, /*On fail goto*//*Label 613*/ GIMT_Encode4(19003), // Rule ID 1987 // |
| 7474 | /* 18949 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 7475 | /* 18952 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7476 | /* 18956 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7477 | /* 18960 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7478 | /* 18964 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7479 | /* 18968 */ // MIs[1] Operand 1 |
| 7480 | /* 18968 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 7481 | /* 18973 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7482 | /* 18978 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7483 | /* 18983 */ // MIs[0] imm16 |
| 7484 | /* 18983 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7485 | /* 18986 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7486 | /* 18988 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETLT:{ *:[Other] }), (bb:{ *:[Other] }):$imm16) => (BtnezT8SltX16 CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, (bb:{ *:[Other] }):$imm16) |
| 7487 | /* 18988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BtnezT8SltX16), |
| 7488 | /* 18991 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 7489 | /* 18995 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // ry |
| 7490 | /* 18999 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm16 |
| 7491 | /* 19001 */ GIR_RootConstrainSelectedInstOperands, |
| 7492 | /* 19002 */ // GIR_Coverage, 1987, |
| 7493 | /* 19002 */ GIR_EraseRootFromParent_Done, |
| 7494 | /* 19003 */ // Label 613: @19003 |
| 7495 | /* 19003 */ GIM_Try, /*On fail goto*//*Label 614*/ GIMT_Encode4(19062), // Rule ID 1989 // |
| 7496 | /* 19008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 7497 | /* 19011 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7498 | /* 19015 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7499 | /* 19019 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7500 | /* 19023 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7501 | /* 19027 */ // MIs[1] Operand 1 |
| 7502 | /* 19027 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 7503 | /* 19032 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7504 | /* 19037 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7505 | /* 19042 */ // MIs[0] imm16 |
| 7506 | /* 19042 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7507 | /* 19045 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7508 | /* 19047 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$imm16) => (BteqzT8SltX16 CPU16Regs:{ *:[i32] }:$ry, CPU16Regs:{ *:[i32] }:$rx, (bb:{ *:[Other] }):$imm16) |
| 7509 | /* 19047 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BteqzT8SltX16), |
| 7510 | /* 19050 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // ry |
| 7511 | /* 19054 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 7512 | /* 19058 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm16 |
| 7513 | /* 19060 */ GIR_RootConstrainSelectedInstOperands, |
| 7514 | /* 19061 */ // GIR_Coverage, 1989, |
| 7515 | /* 19061 */ GIR_EraseRootFromParent_Done, |
| 7516 | /* 19062 */ // Label 614: @19062 |
| 7517 | /* 19062 */ GIM_Try, /*On fail goto*//*Label 615*/ GIMT_Encode4(19121), // Rule ID 1990 // |
| 7518 | /* 19067 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 7519 | /* 19070 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7520 | /* 19074 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7521 | /* 19078 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7522 | /* 19082 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7523 | /* 19086 */ // MIs[1] Operand 1 |
| 7524 | /* 19086 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 7525 | /* 19091 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7526 | /* 19096 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7527 | /* 19101 */ // MIs[0] imm16 |
| 7528 | /* 19101 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7529 | /* 19104 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7530 | /* 19106 */ // (brcond (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETNE:{ *:[Other] }), (bb:{ *:[Other] }):$imm16) => (BtnezT8CmpX16 CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, (bb:{ *:[Other] }):$imm16) |
| 7531 | /* 19106 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BtnezT8CmpX16), |
| 7532 | /* 19109 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rx |
| 7533 | /* 19113 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // ry |
| 7534 | /* 19117 */ GIR_RootToRootCopy, /*OpIdx*/1, // imm16 |
| 7535 | /* 19119 */ GIR_RootConstrainSelectedInstOperands, |
| 7536 | /* 19120 */ // GIR_Coverage, 1990, |
| 7537 | /* 19120 */ GIR_EraseRootFromParent_Done, |
| 7538 | /* 19121 */ // Label 615: @19121 |
| 7539 | /* 19121 */ GIM_Try, /*On fail goto*//*Label 616*/ GIMT_Encode4(19206), // Rule ID 2324 // |
| 7540 | /* 19126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 7541 | /* 19129 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7542 | /* 19133 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7543 | /* 19137 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7544 | /* 19141 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7545 | /* 19145 */ // MIs[1] Operand 1 |
| 7546 | /* 19145 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 7547 | /* 19150 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7548 | /* 19155 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7549 | /* 19160 */ // MIs[0] dst |
| 7550 | /* 19160 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7551 | /* 19163 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7552 | /* 19165 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ_MM (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 7553 | /* 19165 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7554 | /* 19168 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 7555 | /* 19172 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7556 | /* 19177 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7557 | /* 19181 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7558 | /* 19185 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7559 | /* 19187 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ_MM), |
| 7560 | /* 19190 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7561 | /* 19193 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7562 | /* 19199 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7563 | /* 19201 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7564 | /* 19204 */ GIR_RootConstrainSelectedInstOperands, |
| 7565 | /* 19205 */ // GIR_Coverage, 2324, |
| 7566 | /* 19205 */ GIR_EraseRootFromParent_Done, |
| 7567 | /* 19206 */ // Label 616: @19206 |
| 7568 | /* 19206 */ GIM_Try, /*On fail goto*//*Label 617*/ GIMT_Encode4(19291), // Rule ID 2325 // |
| 7569 | /* 19211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 7570 | /* 19214 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7571 | /* 19218 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7572 | /* 19222 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7573 | /* 19226 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7574 | /* 19230 */ // MIs[1] Operand 1 |
| 7575 | /* 19230 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 7576 | /* 19235 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7577 | /* 19240 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7578 | /* 19245 */ // MIs[0] dst |
| 7579 | /* 19245 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7580 | /* 19248 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7581 | /* 19250 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ_MM (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 7582 | /* 19250 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7583 | /* 19253 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 7584 | /* 19257 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7585 | /* 19262 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7586 | /* 19266 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7587 | /* 19270 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7588 | /* 19272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ_MM), |
| 7589 | /* 19275 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7590 | /* 19278 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7591 | /* 19284 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7592 | /* 19286 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7593 | /* 19289 */ GIR_RootConstrainSelectedInstOperands, |
| 7594 | /* 19290 */ // GIR_Coverage, 2325, |
| 7595 | /* 19290 */ GIR_EraseRootFromParent_Done, |
| 7596 | /* 19291 */ // Label 617: @19291 |
| 7597 | /* 19291 */ GIM_Try, /*On fail goto*//*Label 618*/ GIMT_Encode4(19376), // Rule ID 2330 // |
| 7598 | /* 19296 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 7599 | /* 19299 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7600 | /* 19303 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7601 | /* 19307 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7602 | /* 19311 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7603 | /* 19315 */ // MIs[1] Operand 1 |
| 7604 | /* 19315 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 7605 | /* 19320 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7606 | /* 19325 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7607 | /* 19330 */ // MIs[0] dst |
| 7608 | /* 19330 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7609 | /* 19333 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7610 | /* 19335 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ_MM (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 7611 | /* 19335 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7612 | /* 19338 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 7613 | /* 19342 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7614 | /* 19347 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7615 | /* 19351 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7616 | /* 19355 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7617 | /* 19357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ_MM), |
| 7618 | /* 19360 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7619 | /* 19363 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7620 | /* 19369 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7621 | /* 19371 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7622 | /* 19374 */ GIR_RootConstrainSelectedInstOperands, |
| 7623 | /* 19375 */ // GIR_Coverage, 2330, |
| 7624 | /* 19375 */ GIR_EraseRootFromParent_Done, |
| 7625 | /* 19376 */ // Label 618: @19376 |
| 7626 | /* 19376 */ GIM_Try, /*On fail goto*//*Label 619*/ GIMT_Encode4(19461), // Rule ID 2331 // |
| 7627 | /* 19381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 7628 | /* 19384 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7629 | /* 19388 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7630 | /* 19392 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7631 | /* 19396 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7632 | /* 19400 */ // MIs[1] Operand 1 |
| 7633 | /* 19400 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 7634 | /* 19405 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7635 | /* 19410 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7636 | /* 19415 */ // MIs[0] dst |
| 7637 | /* 19415 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7638 | /* 19418 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7639 | /* 19420 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQ_MM (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 7640 | /* 19420 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7641 | /* 19423 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 7642 | /* 19427 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7643 | /* 19432 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7644 | /* 19436 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7645 | /* 19440 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7646 | /* 19442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQ_MM), |
| 7647 | /* 19445 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7648 | /* 19448 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7649 | /* 19454 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7650 | /* 19456 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7651 | /* 19459 */ GIR_RootConstrainSelectedInstOperands, |
| 7652 | /* 19460 */ // GIR_Coverage, 2331, |
| 7653 | /* 19460 */ GIR_EraseRootFromParent_Done, |
| 7654 | /* 19461 */ // Label 619: @19461 |
| 7655 | /* 19461 */ GIM_Try, /*On fail goto*//*Label 620*/ GIMT_Encode4(19540), // Rule ID 2475 // |
| 7656 | /* 19466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 7657 | /* 19469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7658 | /* 19473 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7659 | /* 19477 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7660 | /* 19481 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7661 | /* 19485 */ // MIs[1] Operand 1 |
| 7662 | /* 19485 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 7663 | /* 19490 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7664 | /* 19495 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7665 | /* 19500 */ // MIs[0] dst |
| 7666 | /* 19500 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7667 | /* 19503 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7668 | /* 19505 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQZC_MMR6 (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), (bb:{ *:[Other] }):$dst) |
| 7669 | /* 19505 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7670 | /* 19508 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 7671 | /* 19512 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7672 | /* 19517 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7673 | /* 19521 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7674 | /* 19525 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7675 | /* 19527 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQZC_MMR6), |
| 7676 | /* 19530 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7677 | /* 19533 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7678 | /* 19535 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7679 | /* 19538 */ GIR_RootConstrainSelectedInstOperands, |
| 7680 | /* 19539 */ // GIR_Coverage, 2475, |
| 7681 | /* 19539 */ GIR_EraseRootFromParent_Done, |
| 7682 | /* 19540 */ // Label 620: @19540 |
| 7683 | /* 19540 */ GIM_Try, /*On fail goto*//*Label 621*/ GIMT_Encode4(19619), // Rule ID 2476 // |
| 7684 | /* 19545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 7685 | /* 19548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7686 | /* 19552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7687 | /* 19556 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7688 | /* 19560 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7689 | /* 19564 */ // MIs[1] Operand 1 |
| 7690 | /* 19564 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 7691 | /* 19569 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7692 | /* 19574 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7693 | /* 19579 */ // MIs[0] dst |
| 7694 | /* 19579 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7695 | /* 19582 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7696 | /* 19584 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQZC_MMR6 (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), (bb:{ *:[Other] }):$dst) |
| 7697 | /* 19584 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7698 | /* 19587 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 7699 | /* 19591 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7700 | /* 19596 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7701 | /* 19600 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7702 | /* 19604 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7703 | /* 19606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQZC_MMR6), |
| 7704 | /* 19609 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7705 | /* 19612 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7706 | /* 19614 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7707 | /* 19617 */ GIR_RootConstrainSelectedInstOperands, |
| 7708 | /* 19618 */ // GIR_Coverage, 2476, |
| 7709 | /* 19618 */ GIR_EraseRootFromParent_Done, |
| 7710 | /* 19619 */ // Label 621: @19619 |
| 7711 | /* 19619 */ GIM_Try, /*On fail goto*//*Label 622*/ GIMT_Encode4(19698), // Rule ID 2481 // |
| 7712 | /* 19624 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 7713 | /* 19627 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7714 | /* 19631 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7715 | /* 19635 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7716 | /* 19639 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7717 | /* 19643 */ // MIs[1] Operand 1 |
| 7718 | /* 19643 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 7719 | /* 19648 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7720 | /* 19653 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7721 | /* 19658 */ // MIs[0] dst |
| 7722 | /* 19658 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7723 | /* 19661 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7724 | /* 19663 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQZC_MMR6 (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), (bb:{ *:[Other] }):$dst) |
| 7725 | /* 19663 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7726 | /* 19666 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 7727 | /* 19670 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7728 | /* 19675 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7729 | /* 19679 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7730 | /* 19683 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7731 | /* 19685 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQZC_MMR6), |
| 7732 | /* 19688 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7733 | /* 19691 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7734 | /* 19693 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7735 | /* 19696 */ GIR_RootConstrainSelectedInstOperands, |
| 7736 | /* 19697 */ // GIR_Coverage, 2481, |
| 7737 | /* 19697 */ GIR_EraseRootFromParent_Done, |
| 7738 | /* 19698 */ // Label 622: @19698 |
| 7739 | /* 19698 */ GIM_Try, /*On fail goto*//*Label 623*/ GIMT_Encode4(19777), // Rule ID 2482 // |
| 7740 | /* 19703 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 7741 | /* 19706 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/0, // MIs[1] |
| 7742 | /* 19710 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 7743 | /* 19714 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 7744 | /* 19718 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 7745 | /* 19722 */ // MIs[1] Operand 1 |
| 7746 | /* 19722 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 7747 | /* 19727 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7748 | /* 19732 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7749 | /* 19737 */ // MIs[0] dst |
| 7750 | /* 19737 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7751 | /* 19740 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7752 | /* 19742 */ // (brcond (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), (bb:{ *:[Other] }):$dst) => (BEQZC_MMR6 (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), (bb:{ *:[Other] }):$dst) |
| 7753 | /* 19742 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 7754 | /* 19745 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 7755 | /* 19749 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 7756 | /* 19754 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 7757 | /* 19758 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 7758 | /* 19762 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 7759 | /* 19764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BEQZC_MMR6), |
| 7760 | /* 19767 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 7761 | /* 19770 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7762 | /* 19772 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7763 | /* 19775 */ GIR_RootConstrainSelectedInstOperands, |
| 7764 | /* 19776 */ // GIR_Coverage, 2482, |
| 7765 | /* 19776 */ GIR_EraseRootFromParent_Done, |
| 7766 | /* 19777 */ // Label 623: @19777 |
| 7767 | /* 19777 */ GIM_Try, /*On fail goto*//*Label 624*/ GIMT_Encode4(19810), // Rule ID 1487 // |
| 7768 | /* 19782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 7769 | /* 19785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7770 | /* 19789 */ // MIs[0] dst |
| 7771 | /* 19789 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7772 | /* 19792 */ // (brcond GPR32:{ *:[i32] }:$cond, (bb:{ *:[Other] }):$dst) => (BNE GPR32:{ *:[i32] }:$cond, ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 7773 | /* 19792 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE), |
| 7774 | /* 19795 */ GIR_RootToRootCopy, /*OpIdx*/0, // cond |
| 7775 | /* 19797 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7776 | /* 19803 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7777 | /* 19805 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7778 | /* 19808 */ GIR_RootConstrainSelectedInstOperands, |
| 7779 | /* 19809 */ // GIR_Coverage, 1487, |
| 7780 | /* 19809 */ GIR_EraseRootFromParent_Done, |
| 7781 | /* 19810 */ // Label 624: @19810 |
| 7782 | /* 19810 */ GIM_Try, /*On fail goto*//*Label 625*/ GIMT_Encode4(19832), // Rule ID 1993 // |
| 7783 | /* 19815 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 7784 | /* 19818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 7785 | /* 19822 */ // MIs[0] targ16 |
| 7786 | /* 19822 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7787 | /* 19825 */ // (brcond CPU16Regs:{ *:[i32] }:$rx, (bb:{ *:[Other] }):$targ16) => (BnezRxImm16 CPU16Regs:{ *:[i32] }:$rx, (bb:{ *:[Other] }):$targ16) |
| 7788 | /* 19825 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::BnezRxImm16), |
| 7789 | /* 19830 */ GIR_RootConstrainSelectedInstOperands, |
| 7790 | /* 19831 */ // GIR_Coverage, 1993, |
| 7791 | /* 19831 */ GIR_Done, |
| 7792 | /* 19832 */ // Label 625: @19832 |
| 7793 | /* 19832 */ GIM_Try, /*On fail goto*//*Label 626*/ GIMT_Encode4(19865), // Rule ID 2332 // |
| 7794 | /* 19837 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 7795 | /* 19840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7796 | /* 19844 */ // MIs[0] dst |
| 7797 | /* 19844 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7798 | /* 19847 */ // (brcond GPR32:{ *:[i32] }:$cond, (bb:{ *:[Other] }):$dst) => (BNE_MM GPR32:{ *:[i32] }:$cond, ZERO:{ *:[i32] }, (bb:{ *:[Other] }):$dst) |
| 7799 | /* 19847 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE_MM), |
| 7800 | /* 19850 */ GIR_RootToRootCopy, /*OpIdx*/0, // cond |
| 7801 | /* 19852 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7802 | /* 19858 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7803 | /* 19860 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7804 | /* 19863 */ GIR_RootConstrainSelectedInstOperands, |
| 7805 | /* 19864 */ // GIR_Coverage, 2332, |
| 7806 | /* 19864 */ GIR_EraseRootFromParent_Done, |
| 7807 | /* 19865 */ // Label 626: @19865 |
| 7808 | /* 19865 */ GIM_Try, /*On fail goto*//*Label 627*/ GIMT_Encode4(19893), // Rule ID 2483 // |
| 7809 | /* 19870 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 7810 | /* 19873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7811 | /* 19877 */ // MIs[0] dst |
| 7812 | /* 19877 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7813 | /* 19880 */ // (brcond GPR32:{ *:[i32] }:$cond, (bb:{ *:[Other] }):$dst) => (BNEZC_MMR6 GPR32:{ *:[i32] }:$cond, (bb:{ *:[Other] }):$dst) |
| 7814 | /* 19880 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::BNEZC_MMR6), |
| 7815 | /* 19885 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::AT), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 7816 | /* 19891 */ GIR_RootConstrainSelectedInstOperands, |
| 7817 | /* 19892 */ // GIR_Coverage, 2483, |
| 7818 | /* 19892 */ GIR_Done, |
| 7819 | /* 19893 */ // Label 627: @19893 |
| 7820 | /* 19893 */ GIM_Reject, |
| 7821 | /* 19894 */ // Label 526: @19894 |
| 7822 | /* 19894 */ GIM_Try, /*On fail goto*//*Label 628*/ GIMT_Encode4(19927), // Rule ID 1661 // |
| 7823 | /* 19899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 7824 | /* 19902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 7825 | /* 19906 */ // MIs[0] dst |
| 7826 | /* 19906 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/1, |
| 7827 | /* 19909 */ // (brcond GPR64:{ *:[i64] }:$cond, (bb:{ *:[Other] }):$dst) => (BNE64 GPR64:{ *:[i64] }:$cond, ZERO_64:{ *:[i64] }, (bb:{ *:[Other] }):$dst) |
| 7828 | /* 19909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BNE64), |
| 7829 | /* 19912 */ GIR_RootToRootCopy, /*OpIdx*/0, // cond |
| 7830 | /* 19914 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO_64), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 7831 | /* 19920 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 7832 | /* 19922 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::AT*/0, |
| 7833 | /* 19925 */ GIR_RootConstrainSelectedInstOperands, |
| 7834 | /* 19926 */ // GIR_Coverage, 1661, |
| 7835 | /* 19926 */ GIR_EraseRootFromParent_Done, |
| 7836 | /* 19927 */ // Label 628: @19927 |
| 7837 | /* 19927 */ GIM_Reject, |
| 7838 | /* 19928 */ // Label 527: @19928 |
| 7839 | /* 19928 */ GIM_Reject, |
| 7840 | /* 19929 */ // Label 29: @19929 |
| 7841 | /* 19929 */ GIM_Try, /*On fail goto*//*Label 629*/ GIMT_Encode4(21926), |
| 7842 | /* 19934 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 7843 | /* 19937 */ GIM_Try, /*On fail goto*//*Label 630*/ GIMT_Encode4(19984), // Rule ID 503 // |
| 7844 | /* 19942 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 7845 | /* 19945 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_qb), |
| 7846 | /* 19950 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 7847 | /* 19953 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7848 | /* 19956 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7849 | /* 19960 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7850 | /* 19964 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7851 | /* 19968 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt8), |
| 7852 | /* 19972 */ // MIs[1] Operand 1 |
| 7853 | /* 19972 */ // No operand predicates |
| 7854 | /* 19972 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7855 | /* 19974 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8472:{ *:[iPTR] }, (imm:{ *:[i32] })<<P:Predicate_immZExt8>>:$imm) => (REPL_QB:{ *:[v4i8] } (imm:{ *:[i32] }):$imm) |
| 7856 | /* 19974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPL_QB), |
| 7857 | /* 19977 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7858 | /* 19979 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 7859 | /* 19982 */ GIR_RootConstrainSelectedInstOperands, |
| 7860 | /* 19983 */ // GIR_Coverage, 503, |
| 7861 | /* 19983 */ GIR_EraseRootFromParent_Done, |
| 7862 | /* 19984 */ // Label 630: @19984 |
| 7863 | /* 19984 */ GIM_Try, /*On fail goto*//*Label 631*/ GIMT_Encode4(20031), // Rule ID 504 // |
| 7864 | /* 19989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 7865 | /* 19992 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_ph), |
| 7866 | /* 19997 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 7867 | /* 20000 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7868 | /* 20003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7869 | /* 20007 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7870 | /* 20011 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7871 | /* 20015 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immSExt10), |
| 7872 | /* 20019 */ // MIs[1] Operand 1 |
| 7873 | /* 20019 */ // No operand predicates |
| 7874 | /* 20019 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7875 | /* 20021 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8471:{ *:[iPTR] }, (imm:{ *:[i32] })<<P:Predicate_immSExt10>>:$imm) => (REPL_PH:{ *:[v2i16] } (imm:{ *:[i32] }):$imm) |
| 7876 | /* 20021 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPL_PH), |
| 7877 | /* 20024 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7878 | /* 20026 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 7879 | /* 20029 */ GIR_RootConstrainSelectedInstOperands, |
| 7880 | /* 20030 */ // GIR_Coverage, 504, |
| 7881 | /* 20030 */ GIR_EraseRootFromParent_Done, |
| 7882 | /* 20031 */ // Label 631: @20031 |
| 7883 | /* 20031 */ GIM_Try, /*On fail goto*//*Label 632*/ GIMT_Encode4(20078), // Rule ID 1363 // |
| 7884 | /* 20036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 7885 | /* 20039 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_ph), |
| 7886 | /* 20044 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 7887 | /* 20047 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7888 | /* 20050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7889 | /* 20054 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7890 | /* 20058 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7891 | /* 20062 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immSExt10), |
| 7892 | /* 20066 */ // MIs[1] Operand 1 |
| 7893 | /* 20066 */ // No operand predicates |
| 7894 | /* 20066 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7895 | /* 20068 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8471:{ *:[iPTR] }, (imm:{ *:[i32] })<<P:Predicate_immSExt10>>:$imm) => (REPL_PH_MM:{ *:[v2i16] } (imm:{ *:[i32] }):$imm) |
| 7896 | /* 20068 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPL_PH_MM), |
| 7897 | /* 20071 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7898 | /* 20073 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 7899 | /* 20076 */ GIR_RootConstrainSelectedInstOperands, |
| 7900 | /* 20077 */ // GIR_Coverage, 1363, |
| 7901 | /* 20077 */ GIR_EraseRootFromParent_Done, |
| 7902 | /* 20078 */ // Label 632: @20078 |
| 7903 | /* 20078 */ GIM_Try, /*On fail goto*//*Label 633*/ GIMT_Encode4(20125), // Rule ID 1364 // |
| 7904 | /* 20083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 7905 | /* 20086 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_qb), |
| 7906 | /* 20091 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 7907 | /* 20094 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 7908 | /* 20097 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7909 | /* 20101 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 7910 | /* 20105 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 7911 | /* 20109 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt8), |
| 7912 | /* 20113 */ // MIs[1] Operand 1 |
| 7913 | /* 20113 */ // No operand predicates |
| 7914 | /* 20113 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 7915 | /* 20115 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8472:{ *:[iPTR] }, (imm:{ *:[i32] })<<P:Predicate_immZExt8>>:$imm) => (REPL_QB_MM:{ *:[v4i8] } (imm:{ *:[i32] }):$imm) |
| 7916 | /* 20115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPL_QB_MM), |
| 7917 | /* 20118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 7918 | /* 20120 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 7919 | /* 20123 */ GIR_RootConstrainSelectedInstOperands, |
| 7920 | /* 20124 */ // GIR_Coverage, 1364, |
| 7921 | /* 20124 */ GIR_EraseRootFromParent_Done, |
| 7922 | /* 20125 */ // Label 633: @20125 |
| 7923 | /* 20125 */ GIM_Try, /*On fail goto*//*Label 634*/ GIMT_Encode4(20161), // Rule ID 437 // |
| 7924 | /* 20130 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 7925 | /* 20133 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_raddu_w_qb), |
| 7926 | /* 20138 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 7927 | /* 20141 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 7928 | /* 20144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7929 | /* 20148 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7930 | /* 20152 */ // (intrinsic_wo_chain:{ *:[i32] } 8469:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (RADDU_W_QB:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 7931 | /* 20152 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::RADDU_W_QB), |
| 7932 | /* 20155 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7933 | /* 20157 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 7934 | /* 20159 */ GIR_RootConstrainSelectedInstOperands, |
| 7935 | /* 20160 */ // GIR_Coverage, 437, |
| 7936 | /* 20160 */ GIR_EraseRootFromParent_Done, |
| 7937 | /* 20161 */ // Label 634: @20161 |
| 7938 | /* 20161 */ GIM_Try, /*On fail goto*//*Label 635*/ GIMT_Encode4(20197), // Rule ID 444 // |
| 7939 | /* 20166 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 7940 | /* 20169 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceq_w_phl), |
| 7941 | /* 20174 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 7942 | /* 20177 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 7943 | /* 20180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7944 | /* 20184 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7945 | /* 20188 */ // (intrinsic_wo_chain:{ *:[i32] } 8451:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECEQ_W_PHL:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rt) |
| 7946 | /* 20188 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQ_W_PHL), |
| 7947 | /* 20191 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7948 | /* 20193 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 7949 | /* 20195 */ GIR_RootConstrainSelectedInstOperands, |
| 7950 | /* 20196 */ // GIR_Coverage, 444, |
| 7951 | /* 20196 */ GIR_EraseRootFromParent_Done, |
| 7952 | /* 20197 */ // Label 635: @20197 |
| 7953 | /* 20197 */ GIM_Try, /*On fail goto*//*Label 636*/ GIMT_Encode4(20233), // Rule ID 445 // |
| 7954 | /* 20202 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 7955 | /* 20205 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceq_w_phr), |
| 7956 | /* 20210 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 7957 | /* 20213 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 7958 | /* 20216 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 7959 | /* 20220 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7960 | /* 20224 */ // (intrinsic_wo_chain:{ *:[i32] } 8452:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECEQ_W_PHR:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rt) |
| 7961 | /* 20224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQ_W_PHR), |
| 7962 | /* 20227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7963 | /* 20229 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 7964 | /* 20231 */ GIR_RootConstrainSelectedInstOperands, |
| 7965 | /* 20232 */ // GIR_Coverage, 445, |
| 7966 | /* 20232 */ GIR_EraseRootFromParent_Done, |
| 7967 | /* 20233 */ // Label 636: @20233 |
| 7968 | /* 20233 */ GIM_Try, /*On fail goto*//*Label 637*/ GIMT_Encode4(20269), // Rule ID 446 // |
| 7969 | /* 20238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 7970 | /* 20241 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbl), |
| 7971 | /* 20246 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 7972 | /* 20249 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 7973 | /* 20252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7974 | /* 20256 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7975 | /* 20260 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8453:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEQU_PH_QBL:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 7976 | /* 20260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBL), |
| 7977 | /* 20263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7978 | /* 20265 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 7979 | /* 20267 */ GIR_RootConstrainSelectedInstOperands, |
| 7980 | /* 20268 */ // GIR_Coverage, 446, |
| 7981 | /* 20268 */ GIR_EraseRootFromParent_Done, |
| 7982 | /* 20269 */ // Label 637: @20269 |
| 7983 | /* 20269 */ GIM_Try, /*On fail goto*//*Label 638*/ GIMT_Encode4(20305), // Rule ID 447 // |
| 7984 | /* 20274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 7985 | /* 20277 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbr), |
| 7986 | /* 20282 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 7987 | /* 20285 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 7988 | /* 20288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7989 | /* 20292 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 7990 | /* 20296 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8455:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEQU_PH_QBR:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 7991 | /* 20296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBR), |
| 7992 | /* 20299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 7993 | /* 20301 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 7994 | /* 20303 */ GIR_RootConstrainSelectedInstOperands, |
| 7995 | /* 20304 */ // GIR_Coverage, 447, |
| 7996 | /* 20304 */ GIR_EraseRootFromParent_Done, |
| 7997 | /* 20305 */ // Label 638: @20305 |
| 7998 | /* 20305 */ GIM_Try, /*On fail goto*//*Label 639*/ GIMT_Encode4(20341), // Rule ID 448 // |
| 7999 | /* 20310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8000 | /* 20313 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbla), |
| 8001 | /* 20318 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8002 | /* 20321 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8003 | /* 20324 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8004 | /* 20328 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8005 | /* 20332 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8454:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEQU_PH_QBLA:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 8006 | /* 20332 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBLA), |
| 8007 | /* 20335 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8008 | /* 20337 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8009 | /* 20339 */ GIR_RootConstrainSelectedInstOperands, |
| 8010 | /* 20340 */ // GIR_Coverage, 448, |
| 8011 | /* 20340 */ GIR_EraseRootFromParent_Done, |
| 8012 | /* 20341 */ // Label 639: @20341 |
| 8013 | /* 20341 */ GIM_Try, /*On fail goto*//*Label 640*/ GIMT_Encode4(20377), // Rule ID 449 // |
| 8014 | /* 20346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8015 | /* 20349 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbra), |
| 8016 | /* 20354 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8017 | /* 20357 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8018 | /* 20360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8019 | /* 20364 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8020 | /* 20368 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8456:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEQU_PH_QBRA:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 8021 | /* 20368 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBRA), |
| 8022 | /* 20371 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8023 | /* 20373 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8024 | /* 20375 */ GIR_RootConstrainSelectedInstOperands, |
| 8025 | /* 20376 */ // GIR_Coverage, 449, |
| 8026 | /* 20376 */ GIR_EraseRootFromParent_Done, |
| 8027 | /* 20377 */ // Label 640: @20377 |
| 8028 | /* 20377 */ GIM_Try, /*On fail goto*//*Label 641*/ GIMT_Encode4(20413), // Rule ID 450 // |
| 8029 | /* 20382 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8030 | /* 20385 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbl), |
| 8031 | /* 20390 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8032 | /* 20393 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8033 | /* 20396 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8034 | /* 20400 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8035 | /* 20404 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8457:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEU_PH_QBL:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 8036 | /* 20404 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBL), |
| 8037 | /* 20407 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8038 | /* 20409 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8039 | /* 20411 */ GIR_RootConstrainSelectedInstOperands, |
| 8040 | /* 20412 */ // GIR_Coverage, 450, |
| 8041 | /* 20412 */ GIR_EraseRootFromParent_Done, |
| 8042 | /* 20413 */ // Label 641: @20413 |
| 8043 | /* 20413 */ GIM_Try, /*On fail goto*//*Label 642*/ GIMT_Encode4(20449), // Rule ID 451 // |
| 8044 | /* 20418 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8045 | /* 20421 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbr), |
| 8046 | /* 20426 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8047 | /* 20429 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8048 | /* 20432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8049 | /* 20436 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8050 | /* 20440 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8459:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEU_PH_QBR:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 8051 | /* 20440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBR), |
| 8052 | /* 20443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8053 | /* 20445 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8054 | /* 20447 */ GIR_RootConstrainSelectedInstOperands, |
| 8055 | /* 20448 */ // GIR_Coverage, 451, |
| 8056 | /* 20448 */ GIR_EraseRootFromParent_Done, |
| 8057 | /* 20449 */ // Label 642: @20449 |
| 8058 | /* 20449 */ GIM_Try, /*On fail goto*//*Label 643*/ GIMT_Encode4(20485), // Rule ID 452 // |
| 8059 | /* 20454 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8060 | /* 20457 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbla), |
| 8061 | /* 20462 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8062 | /* 20465 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8063 | /* 20468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8064 | /* 20472 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8065 | /* 20476 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8458:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEU_PH_QBLA:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 8066 | /* 20476 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBLA), |
| 8067 | /* 20479 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8068 | /* 20481 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8069 | /* 20483 */ GIR_RootConstrainSelectedInstOperands, |
| 8070 | /* 20484 */ // GIR_Coverage, 452, |
| 8071 | /* 20484 */ GIR_EraseRootFromParent_Done, |
| 8072 | /* 20485 */ // Label 643: @20485 |
| 8073 | /* 20485 */ GIM_Try, /*On fail goto*//*Label 644*/ GIMT_Encode4(20521), // Rule ID 453 // |
| 8074 | /* 20490 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8075 | /* 20493 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbra), |
| 8076 | /* 20498 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8077 | /* 20501 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8078 | /* 20504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8079 | /* 20508 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8080 | /* 20512 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8460:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (PRECEU_PH_QBRA:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 8081 | /* 20512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBRA), |
| 8082 | /* 20515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8083 | /* 20517 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8084 | /* 20519 */ GIR_RootConstrainSelectedInstOperands, |
| 8085 | /* 20520 */ // GIR_Coverage, 453, |
| 8086 | /* 20520 */ GIR_EraseRootFromParent_Done, |
| 8087 | /* 20521 */ // Label 644: @20521 |
| 8088 | /* 20521 */ GIM_Try, /*On fail goto*//*Label 645*/ GIMT_Encode4(20557), // Rule ID 501 // |
| 8089 | /* 20526 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8090 | /* 20529 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_bitrev), |
| 8091 | /* 20534 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 8092 | /* 20537 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 8093 | /* 20540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8094 | /* 20544 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8095 | /* 20548 */ // (intrinsic_wo_chain:{ *:[i32] } 8025:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt) => (BITREV:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 8096 | /* 20548 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BITREV), |
| 8097 | /* 20551 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8098 | /* 20553 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8099 | /* 20555 */ GIR_RootConstrainSelectedInstOperands, |
| 8100 | /* 20556 */ // GIR_Coverage, 501, |
| 8101 | /* 20556 */ GIR_EraseRootFromParent_Done, |
| 8102 | /* 20557 */ // Label 645: @20557 |
| 8103 | /* 20557 */ GIM_Try, /*On fail goto*//*Label 646*/ GIMT_Encode4(20593), // Rule ID 505 // |
| 8104 | /* 20562 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8105 | /* 20565 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_qb), |
| 8106 | /* 20570 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 8107 | /* 20573 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 8108 | /* 20576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8109 | /* 20580 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8110 | /* 20584 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8472:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt) => (REPLV_QB:{ *:[v4i8] } GPR32Opnd:{ *:[i32] }:$rt) |
| 8111 | /* 20584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPLV_QB), |
| 8112 | /* 20587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8113 | /* 20589 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8114 | /* 20591 */ GIR_RootConstrainSelectedInstOperands, |
| 8115 | /* 20592 */ // GIR_Coverage, 505, |
| 8116 | /* 20592 */ GIR_EraseRootFromParent_Done, |
| 8117 | /* 20593 */ // Label 646: @20593 |
| 8118 | /* 20593 */ GIM_Try, /*On fail goto*//*Label 647*/ GIMT_Encode4(20629), // Rule ID 506 // |
| 8119 | /* 20598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8120 | /* 20601 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_ph), |
| 8121 | /* 20606 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8122 | /* 20609 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 8123 | /* 20612 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8124 | /* 20616 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8125 | /* 20620 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8471:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt) => (REPLV_PH:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rt) |
| 8126 | /* 20620 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPLV_PH), |
| 8127 | /* 20623 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8128 | /* 20625 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8129 | /* 20627 */ GIR_RootConstrainSelectedInstOperands, |
| 8130 | /* 20628 */ // GIR_Coverage, 506, |
| 8131 | /* 20628 */ GIR_EraseRootFromParent_Done, |
| 8132 | /* 20629 */ // Label 647: @20629 |
| 8133 | /* 20629 */ GIM_Try, /*On fail goto*//*Label 648*/ GIMT_Encode4(20665), // Rule ID 755 // |
| 8134 | /* 20634 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8135 | /* 20637 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fclass_w), |
| 8136 | /* 20642 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8137 | /* 20645 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8138 | /* 20648 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8139 | /* 20652 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8140 | /* 20656 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8177:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws) => (FCLASS_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 8141 | /* 20656 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FCLASS_W), |
| 8142 | /* 20659 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8143 | /* 20661 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8144 | /* 20663 */ GIR_RootConstrainSelectedInstOperands, |
| 8145 | /* 20664 */ // GIR_Coverage, 755, |
| 8146 | /* 20664 */ GIR_EraseRootFromParent_Done, |
| 8147 | /* 20665 */ // Label 648: @20665 |
| 8148 | /* 20665 */ GIM_Try, /*On fail goto*//*Label 649*/ GIMT_Encode4(20701), // Rule ID 756 // |
| 8149 | /* 20670 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8150 | /* 20673 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fclass_d), |
| 8151 | /* 20678 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8152 | /* 20681 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8153 | /* 20684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8154 | /* 20688 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8155 | /* 20692 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8176:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws) => (FCLASS_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 8156 | /* 20692 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FCLASS_D), |
| 8157 | /* 20695 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8158 | /* 20697 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8159 | /* 20699 */ GIR_RootConstrainSelectedInstOperands, |
| 8160 | /* 20700 */ // GIR_Coverage, 756, |
| 8161 | /* 20700 */ GIR_EraseRootFromParent_Done, |
| 8162 | /* 20701 */ // Label 649: @20701 |
| 8163 | /* 20701 */ GIM_Try, /*On fail goto*//*Label 650*/ GIMT_Encode4(20737), // Rule ID 779 // |
| 8164 | /* 20706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8165 | /* 20709 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fexupl_w), |
| 8166 | /* 20714 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8167 | /* 20717 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8168 | /* 20720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8169 | /* 20724 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8170 | /* 20728 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8203:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8f16] }:$ws) => (FEXUPL_W:{ *:[v4f32] } MSA128HOpnd:{ *:[v8f16] }:$ws) |
| 8171 | /* 20728 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXUPL_W), |
| 8172 | /* 20731 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8173 | /* 20733 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8174 | /* 20735 */ GIR_RootConstrainSelectedInstOperands, |
| 8175 | /* 20736 */ // GIR_Coverage, 779, |
| 8176 | /* 20736 */ GIR_EraseRootFromParent_Done, |
| 8177 | /* 20737 */ // Label 650: @20737 |
| 8178 | /* 20737 */ GIM_Try, /*On fail goto*//*Label 651*/ GIMT_Encode4(20773), // Rule ID 780 // |
| 8179 | /* 20742 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8180 | /* 20745 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fexupl_d), |
| 8181 | /* 20750 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8182 | /* 20753 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8183 | /* 20756 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8184 | /* 20760 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8185 | /* 20764 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8202:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws) => (FEXUPL_D:{ *:[v2f64] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 8186 | /* 20764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXUPL_D), |
| 8187 | /* 20767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8188 | /* 20769 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8189 | /* 20771 */ GIR_RootConstrainSelectedInstOperands, |
| 8190 | /* 20772 */ // GIR_Coverage, 780, |
| 8191 | /* 20772 */ GIR_EraseRootFromParent_Done, |
| 8192 | /* 20773 */ // Label 651: @20773 |
| 8193 | /* 20773 */ GIM_Try, /*On fail goto*//*Label 652*/ GIMT_Encode4(20809), // Rule ID 781 // |
| 8194 | /* 20778 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8195 | /* 20781 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fexupr_w), |
| 8196 | /* 20786 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8197 | /* 20789 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8198 | /* 20792 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8199 | /* 20796 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8200 | /* 20800 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8205:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8f16] }:$ws) => (FEXUPR_W:{ *:[v4f32] } MSA128HOpnd:{ *:[v8f16] }:$ws) |
| 8201 | /* 20800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXUPR_W), |
| 8202 | /* 20803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8203 | /* 20805 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8204 | /* 20807 */ GIR_RootConstrainSelectedInstOperands, |
| 8205 | /* 20808 */ // GIR_Coverage, 781, |
| 8206 | /* 20808 */ GIR_EraseRootFromParent_Done, |
| 8207 | /* 20809 */ // Label 652: @20809 |
| 8208 | /* 20809 */ GIM_Try, /*On fail goto*//*Label 653*/ GIMT_Encode4(20845), // Rule ID 782 // |
| 8209 | /* 20814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8210 | /* 20817 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fexupr_d), |
| 8211 | /* 20822 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8212 | /* 20825 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8213 | /* 20828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8214 | /* 20832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8215 | /* 20836 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8204:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws) => (FEXUPR_D:{ *:[v2f64] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 8216 | /* 20836 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXUPR_D), |
| 8217 | /* 20839 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8218 | /* 20841 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8219 | /* 20843 */ GIR_RootConstrainSelectedInstOperands, |
| 8220 | /* 20844 */ // GIR_Coverage, 782, |
| 8221 | /* 20844 */ GIR_EraseRootFromParent_Done, |
| 8222 | /* 20845 */ // Label 653: @20845 |
| 8223 | /* 20845 */ GIM_Try, /*On fail goto*//*Label 654*/ GIMT_Encode4(20881), // Rule ID 787 // |
| 8224 | /* 20850 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8225 | /* 20853 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ffql_w), |
| 8226 | /* 20858 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8227 | /* 20861 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8228 | /* 20864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8229 | /* 20868 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8230 | /* 20872 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8211:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws) => (FFQL_W:{ *:[v4f32] } MSA128HOpnd:{ *:[v8i16] }:$ws) |
| 8231 | /* 20872 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FFQL_W), |
| 8232 | /* 20875 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8233 | /* 20877 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8234 | /* 20879 */ GIR_RootConstrainSelectedInstOperands, |
| 8235 | /* 20880 */ // GIR_Coverage, 787, |
| 8236 | /* 20880 */ GIR_EraseRootFromParent_Done, |
| 8237 | /* 20881 */ // Label 654: @20881 |
| 8238 | /* 20881 */ GIM_Try, /*On fail goto*//*Label 655*/ GIMT_Encode4(20917), // Rule ID 788 // |
| 8239 | /* 20886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8240 | /* 20889 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ffql_d), |
| 8241 | /* 20894 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8242 | /* 20897 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8243 | /* 20900 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8244 | /* 20904 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8245 | /* 20908 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8210:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws) => (FFQL_D:{ *:[v2f64] } MSA128WOpnd:{ *:[v4i32] }:$ws) |
| 8246 | /* 20908 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FFQL_D), |
| 8247 | /* 20911 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8248 | /* 20913 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8249 | /* 20915 */ GIR_RootConstrainSelectedInstOperands, |
| 8250 | /* 20916 */ // GIR_Coverage, 788, |
| 8251 | /* 20916 */ GIR_EraseRootFromParent_Done, |
| 8252 | /* 20917 */ // Label 655: @20917 |
| 8253 | /* 20917 */ GIM_Try, /*On fail goto*//*Label 656*/ GIMT_Encode4(20953), // Rule ID 789 // |
| 8254 | /* 20922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8255 | /* 20925 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ffqr_w), |
| 8256 | /* 20930 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8257 | /* 20933 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8258 | /* 20936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8259 | /* 20940 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8260 | /* 20944 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8213:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws) => (FFQR_W:{ *:[v4f32] } MSA128HOpnd:{ *:[v8i16] }:$ws) |
| 8261 | /* 20944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FFQR_W), |
| 8262 | /* 20947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8263 | /* 20949 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8264 | /* 20951 */ GIR_RootConstrainSelectedInstOperands, |
| 8265 | /* 20952 */ // GIR_Coverage, 789, |
| 8266 | /* 20952 */ GIR_EraseRootFromParent_Done, |
| 8267 | /* 20953 */ // Label 656: @20953 |
| 8268 | /* 20953 */ GIM_Try, /*On fail goto*//*Label 657*/ GIMT_Encode4(20989), // Rule ID 790 // |
| 8269 | /* 20958 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8270 | /* 20961 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ffqr_d), |
| 8271 | /* 20966 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8272 | /* 20969 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8273 | /* 20972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8274 | /* 20976 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8275 | /* 20980 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8212:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws) => (FFQR_D:{ *:[v2f64] } MSA128WOpnd:{ *:[v4i32] }:$ws) |
| 8276 | /* 20980 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FFQR_D), |
| 8277 | /* 20983 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8278 | /* 20985 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8279 | /* 20987 */ GIR_RootConstrainSelectedInstOperands, |
| 8280 | /* 20988 */ // GIR_Coverage, 790, |
| 8281 | /* 20988 */ GIR_EraseRootFromParent_Done, |
| 8282 | /* 20989 */ // Label 657: @20989 |
| 8283 | /* 20989 */ GIM_Try, /*On fail goto*//*Label 658*/ GIMT_Encode4(21025), // Rule ID 815 // |
| 8284 | /* 20994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8285 | /* 20997 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_frcp_w), |
| 8286 | /* 21002 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8287 | /* 21005 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8288 | /* 21008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8289 | /* 21012 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8290 | /* 21016 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8235:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws) => (FRCP_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 8291 | /* 21016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FRCP_W), |
| 8292 | /* 21019 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8293 | /* 21021 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8294 | /* 21023 */ GIR_RootConstrainSelectedInstOperands, |
| 8295 | /* 21024 */ // GIR_Coverage, 815, |
| 8296 | /* 21024 */ GIR_EraseRootFromParent_Done, |
| 8297 | /* 21025 */ // Label 658: @21025 |
| 8298 | /* 21025 */ GIM_Try, /*On fail goto*//*Label 659*/ GIMT_Encode4(21061), // Rule ID 816 // |
| 8299 | /* 21030 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8300 | /* 21033 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_frcp_d), |
| 8301 | /* 21038 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8302 | /* 21041 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8303 | /* 21044 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8304 | /* 21048 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8305 | /* 21052 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8234:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws) => (FRCP_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 8306 | /* 21052 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FRCP_D), |
| 8307 | /* 21055 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8308 | /* 21057 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8309 | /* 21059 */ GIR_RootConstrainSelectedInstOperands, |
| 8310 | /* 21060 */ // GIR_Coverage, 816, |
| 8311 | /* 21060 */ GIR_EraseRootFromParent_Done, |
| 8312 | /* 21061 */ // Label 659: @21061 |
| 8313 | /* 21061 */ GIM_Try, /*On fail goto*//*Label 660*/ GIMT_Encode4(21097), // Rule ID 817 // |
| 8314 | /* 21066 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8315 | /* 21069 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_frsqrt_w), |
| 8316 | /* 21074 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8317 | /* 21077 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8318 | /* 21080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8319 | /* 21084 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8320 | /* 21088 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8239:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws) => (FRSQRT_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 8321 | /* 21088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FRSQRT_W), |
| 8322 | /* 21091 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8323 | /* 21093 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8324 | /* 21095 */ GIR_RootConstrainSelectedInstOperands, |
| 8325 | /* 21096 */ // GIR_Coverage, 817, |
| 8326 | /* 21096 */ GIR_EraseRootFromParent_Done, |
| 8327 | /* 21097 */ // Label 660: @21097 |
| 8328 | /* 21097 */ GIM_Try, /*On fail goto*//*Label 661*/ GIMT_Encode4(21133), // Rule ID 818 // |
| 8329 | /* 21102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8330 | /* 21105 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_frsqrt_d), |
| 8331 | /* 21110 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8332 | /* 21113 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8333 | /* 21116 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8334 | /* 21120 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8335 | /* 21124 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8238:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws) => (FRSQRT_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 8336 | /* 21124 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FRSQRT_D), |
| 8337 | /* 21127 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8338 | /* 21129 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8339 | /* 21131 */ GIR_RootConstrainSelectedInstOperands, |
| 8340 | /* 21132 */ // GIR_Coverage, 818, |
| 8341 | /* 21132 */ GIR_EraseRootFromParent_Done, |
| 8342 | /* 21133 */ // Label 661: @21133 |
| 8343 | /* 21133 */ GIM_Try, /*On fail goto*//*Label 662*/ GIMT_Encode4(21169), // Rule ID 845 // |
| 8344 | /* 21138 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8345 | /* 21141 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ftint_s_w), |
| 8346 | /* 21146 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8347 | /* 21149 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8348 | /* 21152 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8349 | /* 21156 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8350 | /* 21160 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8267:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws) => (FTINT_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 8351 | /* 21160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FTINT_S_W), |
| 8352 | /* 21163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8353 | /* 21165 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8354 | /* 21167 */ GIR_RootConstrainSelectedInstOperands, |
| 8355 | /* 21168 */ // GIR_Coverage, 845, |
| 8356 | /* 21168 */ GIR_EraseRootFromParent_Done, |
| 8357 | /* 21169 */ // Label 662: @21169 |
| 8358 | /* 21169 */ GIM_Try, /*On fail goto*//*Label 663*/ GIMT_Encode4(21205), // Rule ID 846 // |
| 8359 | /* 21174 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8360 | /* 21177 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ftint_s_d), |
| 8361 | /* 21182 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8362 | /* 21185 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8363 | /* 21188 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8364 | /* 21192 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8365 | /* 21196 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8266:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws) => (FTINT_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 8366 | /* 21196 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FTINT_S_D), |
| 8367 | /* 21199 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8368 | /* 21201 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8369 | /* 21203 */ GIR_RootConstrainSelectedInstOperands, |
| 8370 | /* 21204 */ // GIR_Coverage, 846, |
| 8371 | /* 21204 */ GIR_EraseRootFromParent_Done, |
| 8372 | /* 21205 */ // Label 663: @21205 |
| 8373 | /* 21205 */ GIM_Try, /*On fail goto*//*Label 664*/ GIMT_Encode4(21241), // Rule ID 847 // |
| 8374 | /* 21210 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8375 | /* 21213 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ftint_u_w), |
| 8376 | /* 21218 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8377 | /* 21221 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8378 | /* 21224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8379 | /* 21228 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8380 | /* 21232 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8269:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws) => (FTINT_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 8381 | /* 21232 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FTINT_U_W), |
| 8382 | /* 21235 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8383 | /* 21237 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8384 | /* 21239 */ GIR_RootConstrainSelectedInstOperands, |
| 8385 | /* 21240 */ // GIR_Coverage, 847, |
| 8386 | /* 21240 */ GIR_EraseRootFromParent_Done, |
| 8387 | /* 21241 */ // Label 664: @21241 |
| 8388 | /* 21241 */ GIM_Try, /*On fail goto*//*Label 665*/ GIMT_Encode4(21277), // Rule ID 848 // |
| 8389 | /* 21246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8390 | /* 21249 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ftint_u_d), |
| 8391 | /* 21254 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8392 | /* 21257 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8393 | /* 21260 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8394 | /* 21264 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8395 | /* 21268 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8268:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws) => (FTINT_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 8396 | /* 21268 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FTINT_U_D), |
| 8397 | /* 21271 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8398 | /* 21273 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8399 | /* 21275 */ GIR_RootConstrainSelectedInstOperands, |
| 8400 | /* 21276 */ // GIR_Coverage, 848, |
| 8401 | /* 21276 */ GIR_EraseRootFromParent_Done, |
| 8402 | /* 21277 */ // Label 665: @21277 |
| 8403 | /* 21277 */ GIM_Try, /*On fail goto*//*Label 666*/ GIMT_Encode4(21313), // Rule ID 983 // |
| 8404 | /* 21282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8405 | /* 21285 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_nloc_b), |
| 8406 | /* 21290 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 8407 | /* 21293 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 8408 | /* 21296 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8409 | /* 21300 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8410 | /* 21304 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8424:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws) => (NLOC_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws) |
| 8411 | /* 21304 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NLOC_B), |
| 8412 | /* 21307 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8413 | /* 21309 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8414 | /* 21311 */ GIR_RootConstrainSelectedInstOperands, |
| 8415 | /* 21312 */ // GIR_Coverage, 983, |
| 8416 | /* 21312 */ GIR_EraseRootFromParent_Done, |
| 8417 | /* 21313 */ // Label 666: @21313 |
| 8418 | /* 21313 */ GIM_Try, /*On fail goto*//*Label 667*/ GIMT_Encode4(21349), // Rule ID 984 // |
| 8419 | /* 21318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8420 | /* 21321 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_nloc_h), |
| 8421 | /* 21326 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 8422 | /* 21329 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8423 | /* 21332 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8424 | /* 21336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8425 | /* 21340 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8426:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws) => (NLOC_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws) |
| 8426 | /* 21340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NLOC_H), |
| 8427 | /* 21343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8428 | /* 21345 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8429 | /* 21347 */ GIR_RootConstrainSelectedInstOperands, |
| 8430 | /* 21348 */ // GIR_Coverage, 984, |
| 8431 | /* 21348 */ GIR_EraseRootFromParent_Done, |
| 8432 | /* 21349 */ // Label 667: @21349 |
| 8433 | /* 21349 */ GIM_Try, /*On fail goto*//*Label 668*/ GIMT_Encode4(21385), // Rule ID 985 // |
| 8434 | /* 21354 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8435 | /* 21357 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_nloc_w), |
| 8436 | /* 21362 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8437 | /* 21365 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8438 | /* 21368 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8439 | /* 21372 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8440 | /* 21376 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8427:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws) => (NLOC_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws) |
| 8441 | /* 21376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NLOC_W), |
| 8442 | /* 21379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8443 | /* 21381 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8444 | /* 21383 */ GIR_RootConstrainSelectedInstOperands, |
| 8445 | /* 21384 */ // GIR_Coverage, 985, |
| 8446 | /* 21384 */ GIR_EraseRootFromParent_Done, |
| 8447 | /* 21385 */ // Label 668: @21385 |
| 8448 | /* 21385 */ GIM_Try, /*On fail goto*//*Label 669*/ GIMT_Encode4(21421), // Rule ID 986 // |
| 8449 | /* 21390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8450 | /* 21393 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_nloc_d), |
| 8451 | /* 21398 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8452 | /* 21401 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8453 | /* 21404 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8454 | /* 21408 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8455 | /* 21412 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8425:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws) => (NLOC_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws) |
| 8456 | /* 21412 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NLOC_D), |
| 8457 | /* 21415 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8458 | /* 21417 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8459 | /* 21419 */ GIR_RootConstrainSelectedInstOperands, |
| 8460 | /* 21420 */ // GIR_Coverage, 986, |
| 8461 | /* 21420 */ GIR_EraseRootFromParent_Done, |
| 8462 | /* 21421 */ // Label 669: @21421 |
| 8463 | /* 21421 */ GIM_Try, /*On fail goto*//*Label 670*/ GIMT_Encode4(21457), // Rule ID 1326 // |
| 8464 | /* 21426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8465 | /* 21429 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceq_w_phl), |
| 8466 | /* 21434 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 8467 | /* 21437 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 8468 | /* 21440 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8469 | /* 21444 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8470 | /* 21448 */ // (intrinsic_wo_chain:{ *:[i32] } 8451:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs) => (PRECEQ_W_PHL_MM:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rs) |
| 8471 | /* 21448 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQ_W_PHL_MM), |
| 8472 | /* 21451 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8473 | /* 21453 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8474 | /* 21455 */ GIR_RootConstrainSelectedInstOperands, |
| 8475 | /* 21456 */ // GIR_Coverage, 1326, |
| 8476 | /* 21456 */ GIR_EraseRootFromParent_Done, |
| 8477 | /* 21457 */ // Label 670: @21457 |
| 8478 | /* 21457 */ GIM_Try, /*On fail goto*//*Label 671*/ GIMT_Encode4(21493), // Rule ID 1327 // |
| 8479 | /* 21462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8480 | /* 21465 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceq_w_phr), |
| 8481 | /* 21470 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 8482 | /* 21473 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 8483 | /* 21476 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8484 | /* 21480 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8485 | /* 21484 */ // (intrinsic_wo_chain:{ *:[i32] } 8452:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs) => (PRECEQ_W_PHR_MM:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rs) |
| 8486 | /* 21484 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQ_W_PHR_MM), |
| 8487 | /* 21487 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8488 | /* 21489 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8489 | /* 21491 */ GIR_RootConstrainSelectedInstOperands, |
| 8490 | /* 21492 */ // GIR_Coverage, 1327, |
| 8491 | /* 21492 */ GIR_EraseRootFromParent_Done, |
| 8492 | /* 21493 */ // Label 671: @21493 |
| 8493 | /* 21493 */ GIM_Try, /*On fail goto*//*Label 672*/ GIMT_Encode4(21529), // Rule ID 1328 // |
| 8494 | /* 21498 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8495 | /* 21501 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbl), |
| 8496 | /* 21506 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8497 | /* 21509 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8498 | /* 21512 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8499 | /* 21516 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8500 | /* 21520 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8453:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEQU_PH_QBL_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8501 | /* 21520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBL_MM), |
| 8502 | /* 21523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8503 | /* 21525 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8504 | /* 21527 */ GIR_RootConstrainSelectedInstOperands, |
| 8505 | /* 21528 */ // GIR_Coverage, 1328, |
| 8506 | /* 21528 */ GIR_EraseRootFromParent_Done, |
| 8507 | /* 21529 */ // Label 672: @21529 |
| 8508 | /* 21529 */ GIM_Try, /*On fail goto*//*Label 673*/ GIMT_Encode4(21565), // Rule ID 1329 // |
| 8509 | /* 21534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8510 | /* 21537 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbla), |
| 8511 | /* 21542 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8512 | /* 21545 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8513 | /* 21548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8514 | /* 21552 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8515 | /* 21556 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8454:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEQU_PH_QBLA_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8516 | /* 21556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBLA_MM), |
| 8517 | /* 21559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8518 | /* 21561 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8519 | /* 21563 */ GIR_RootConstrainSelectedInstOperands, |
| 8520 | /* 21564 */ // GIR_Coverage, 1329, |
| 8521 | /* 21564 */ GIR_EraseRootFromParent_Done, |
| 8522 | /* 21565 */ // Label 673: @21565 |
| 8523 | /* 21565 */ GIM_Try, /*On fail goto*//*Label 674*/ GIMT_Encode4(21601), // Rule ID 1330 // |
| 8524 | /* 21570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8525 | /* 21573 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbr), |
| 8526 | /* 21578 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8527 | /* 21581 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8528 | /* 21584 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8529 | /* 21588 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8530 | /* 21592 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8455:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEQU_PH_QBR_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8531 | /* 21592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBR_MM), |
| 8532 | /* 21595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8533 | /* 21597 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8534 | /* 21599 */ GIR_RootConstrainSelectedInstOperands, |
| 8535 | /* 21600 */ // GIR_Coverage, 1330, |
| 8536 | /* 21600 */ GIR_EraseRootFromParent_Done, |
| 8537 | /* 21601 */ // Label 674: @21601 |
| 8538 | /* 21601 */ GIM_Try, /*On fail goto*//*Label 675*/ GIMT_Encode4(21637), // Rule ID 1331 // |
| 8539 | /* 21606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8540 | /* 21609 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precequ_ph_qbra), |
| 8541 | /* 21614 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8542 | /* 21617 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8543 | /* 21620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8544 | /* 21624 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8545 | /* 21628 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8456:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEQU_PH_QBRA_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8546 | /* 21628 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEQU_PH_QBRA_MM), |
| 8547 | /* 21631 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8548 | /* 21633 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8549 | /* 21635 */ GIR_RootConstrainSelectedInstOperands, |
| 8550 | /* 21636 */ // GIR_Coverage, 1331, |
| 8551 | /* 21636 */ GIR_EraseRootFromParent_Done, |
| 8552 | /* 21637 */ // Label 675: @21637 |
| 8553 | /* 21637 */ GIM_Try, /*On fail goto*//*Label 676*/ GIMT_Encode4(21673), // Rule ID 1332 // |
| 8554 | /* 21642 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8555 | /* 21645 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbl), |
| 8556 | /* 21650 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8557 | /* 21653 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8558 | /* 21656 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8559 | /* 21660 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8560 | /* 21664 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8457:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEU_PH_QBL_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8561 | /* 21664 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBL_MM), |
| 8562 | /* 21667 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8563 | /* 21669 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8564 | /* 21671 */ GIR_RootConstrainSelectedInstOperands, |
| 8565 | /* 21672 */ // GIR_Coverage, 1332, |
| 8566 | /* 21672 */ GIR_EraseRootFromParent_Done, |
| 8567 | /* 21673 */ // Label 676: @21673 |
| 8568 | /* 21673 */ GIM_Try, /*On fail goto*//*Label 677*/ GIMT_Encode4(21709), // Rule ID 1333 // |
| 8569 | /* 21678 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8570 | /* 21681 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbla), |
| 8571 | /* 21686 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8572 | /* 21689 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8573 | /* 21692 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8574 | /* 21696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8575 | /* 21700 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8458:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEU_PH_QBLA_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8576 | /* 21700 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBLA_MM), |
| 8577 | /* 21703 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8578 | /* 21705 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8579 | /* 21707 */ GIR_RootConstrainSelectedInstOperands, |
| 8580 | /* 21708 */ // GIR_Coverage, 1333, |
| 8581 | /* 21708 */ GIR_EraseRootFromParent_Done, |
| 8582 | /* 21709 */ // Label 677: @21709 |
| 8583 | /* 21709 */ GIM_Try, /*On fail goto*//*Label 678*/ GIMT_Encode4(21745), // Rule ID 1334 // |
| 8584 | /* 21714 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8585 | /* 21717 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbr), |
| 8586 | /* 21722 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8587 | /* 21725 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8588 | /* 21728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8589 | /* 21732 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8590 | /* 21736 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8459:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEU_PH_QBR_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8591 | /* 21736 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBR_MM), |
| 8592 | /* 21739 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8593 | /* 21741 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8594 | /* 21743 */ GIR_RootConstrainSelectedInstOperands, |
| 8595 | /* 21744 */ // GIR_Coverage, 1334, |
| 8596 | /* 21744 */ GIR_EraseRootFromParent_Done, |
| 8597 | /* 21745 */ // Label 678: @21745 |
| 8598 | /* 21745 */ GIM_Try, /*On fail goto*//*Label 679*/ GIMT_Encode4(21781), // Rule ID 1335 // |
| 8599 | /* 21750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8600 | /* 21753 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_preceu_ph_qbra), |
| 8601 | /* 21758 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8602 | /* 21761 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8603 | /* 21764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8604 | /* 21768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8605 | /* 21772 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8460:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (PRECEU_PH_QBRA_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8606 | /* 21772 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECEU_PH_QBRA_MM), |
| 8607 | /* 21775 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8608 | /* 21777 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8609 | /* 21779 */ GIR_RootConstrainSelectedInstOperands, |
| 8610 | /* 21780 */ // GIR_Coverage, 1335, |
| 8611 | /* 21780 */ GIR_EraseRootFromParent_Done, |
| 8612 | /* 21781 */ // Label 679: @21781 |
| 8613 | /* 21781 */ GIM_Try, /*On fail goto*//*Label 680*/ GIMT_Encode4(21817), // Rule ID 1361 // |
| 8614 | /* 21786 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8615 | /* 21789 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_raddu_w_qb), |
| 8616 | /* 21794 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 8617 | /* 21797 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 8618 | /* 21800 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8619 | /* 21804 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8620 | /* 21808 */ // (intrinsic_wo_chain:{ *:[i32] } 8469:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (RADDU_W_QB_MM:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 8621 | /* 21808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::RADDU_W_QB_MM), |
| 8622 | /* 21811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8623 | /* 21813 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8624 | /* 21815 */ GIR_RootConstrainSelectedInstOperands, |
| 8625 | /* 21816 */ // GIR_Coverage, 1361, |
| 8626 | /* 21816 */ GIR_EraseRootFromParent_Done, |
| 8627 | /* 21817 */ // Label 680: @21817 |
| 8628 | /* 21817 */ GIM_Try, /*On fail goto*//*Label 681*/ GIMT_Encode4(21853), // Rule ID 1365 // |
| 8629 | /* 21822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8630 | /* 21825 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_ph), |
| 8631 | /* 21830 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8632 | /* 21833 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 8633 | /* 21836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8634 | /* 21840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8635 | /* 21844 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8471:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs) => (REPLV_PH_MM:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs) |
| 8636 | /* 21844 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPLV_PH_MM), |
| 8637 | /* 21847 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8638 | /* 21849 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8639 | /* 21851 */ GIR_RootConstrainSelectedInstOperands, |
| 8640 | /* 21852 */ // GIR_Coverage, 1365, |
| 8641 | /* 21852 */ GIR_EraseRootFromParent_Done, |
| 8642 | /* 21853 */ // Label 681: @21853 |
| 8643 | /* 21853 */ GIM_Try, /*On fail goto*//*Label 682*/ GIMT_Encode4(21889), // Rule ID 1366 // |
| 8644 | /* 21858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8645 | /* 21861 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_repl_qb), |
| 8646 | /* 21866 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 8647 | /* 21869 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 8648 | /* 21872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8649 | /* 21876 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8650 | /* 21880 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8472:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs) => (REPLV_QB_MM:{ *:[v4i8] } GPR32Opnd:{ *:[i32] }:$rs) |
| 8651 | /* 21880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::REPLV_QB_MM), |
| 8652 | /* 21883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8653 | /* 21885 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8654 | /* 21887 */ GIR_RootConstrainSelectedInstOperands, |
| 8655 | /* 21888 */ // GIR_Coverage, 1366, |
| 8656 | /* 21888 */ GIR_EraseRootFromParent_Done, |
| 8657 | /* 21889 */ // Label 682: @21889 |
| 8658 | /* 21889 */ GIM_Try, /*On fail goto*//*Label 683*/ GIMT_Encode4(21925), // Rule ID 1376 // |
| 8659 | /* 21894 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 8660 | /* 21897 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_bitrev), |
| 8661 | /* 21902 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 8662 | /* 21905 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 8663 | /* 21908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8664 | /* 21912 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 8665 | /* 21916 */ // (intrinsic_wo_chain:{ *:[i32] } 8025:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs) => (BITREV_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 8666 | /* 21916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BITREV_MM), |
| 8667 | /* 21919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 8668 | /* 21921 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 8669 | /* 21923 */ GIR_RootConstrainSelectedInstOperands, |
| 8670 | /* 21924 */ // GIR_Coverage, 1376, |
| 8671 | /* 21924 */ GIR_EraseRootFromParent_Done, |
| 8672 | /* 21925 */ // Label 683: @21925 |
| 8673 | /* 21925 */ GIM_Reject, |
| 8674 | /* 21926 */ // Label 629: @21926 |
| 8675 | /* 21926 */ GIM_Try, /*On fail goto*//*Label 684*/ GIMT_Encode4(31679), |
| 8676 | /* 21931 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/4, |
| 8677 | /* 21934 */ GIM_Try, /*On fail goto*//*Label 685*/ GIMT_Encode4(21980), // Rule ID 1013 // |
| 8678 | /* 21939 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8679 | /* 21942 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_s_b), |
| 8680 | /* 21947 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 8681 | /* 21950 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 8682 | /* 21953 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8683 | /* 21957 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8684 | /* 21961 */ // MIs[0] m |
| 8685 | /* 21961 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8686 | /* 21964 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt3), |
| 8687 | /* 21969 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8473:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt3>>:$m) => (SAT_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] }):$m) |
| 8688 | /* 21969 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_S_B), |
| 8689 | /* 21972 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8690 | /* 21974 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8691 | /* 21976 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8692 | /* 21978 */ GIR_RootConstrainSelectedInstOperands, |
| 8693 | /* 21979 */ // GIR_Coverage, 1013, |
| 8694 | /* 21979 */ GIR_EraseRootFromParent_Done, |
| 8695 | /* 21980 */ // Label 685: @21980 |
| 8696 | /* 21980 */ GIM_Try, /*On fail goto*//*Label 686*/ GIMT_Encode4(22026), // Rule ID 1014 // |
| 8697 | /* 21985 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8698 | /* 21988 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_s_h), |
| 8699 | /* 21993 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 8700 | /* 21996 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8701 | /* 21999 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8702 | /* 22003 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8703 | /* 22007 */ // MIs[0] m |
| 8704 | /* 22007 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8705 | /* 22010 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt4), |
| 8706 | /* 22015 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8475:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt4>>:$m) => (SAT_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] }):$m) |
| 8707 | /* 22015 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_S_H), |
| 8708 | /* 22018 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8709 | /* 22020 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8710 | /* 22022 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8711 | /* 22024 */ GIR_RootConstrainSelectedInstOperands, |
| 8712 | /* 22025 */ // GIR_Coverage, 1014, |
| 8713 | /* 22025 */ GIR_EraseRootFromParent_Done, |
| 8714 | /* 22026 */ // Label 686: @22026 |
| 8715 | /* 22026 */ GIM_Try, /*On fail goto*//*Label 687*/ GIMT_Encode4(22072), // Rule ID 1015 // |
| 8716 | /* 22031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8717 | /* 22034 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_s_w), |
| 8718 | /* 22039 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8719 | /* 22042 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8720 | /* 22045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8721 | /* 22049 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8722 | /* 22053 */ // MIs[0] m |
| 8723 | /* 22053 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8724 | /* 22056 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 8725 | /* 22061 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8476:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$m) => (SAT_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] }):$m) |
| 8726 | /* 22061 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_S_W), |
| 8727 | /* 22064 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8728 | /* 22066 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8729 | /* 22068 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8730 | /* 22070 */ GIR_RootConstrainSelectedInstOperands, |
| 8731 | /* 22071 */ // GIR_Coverage, 1015, |
| 8732 | /* 22071 */ GIR_EraseRootFromParent_Done, |
| 8733 | /* 22072 */ // Label 687: @22072 |
| 8734 | /* 22072 */ GIM_Try, /*On fail goto*//*Label 688*/ GIMT_Encode4(22118), // Rule ID 1016 // |
| 8735 | /* 22077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8736 | /* 22080 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_s_d), |
| 8737 | /* 22085 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8738 | /* 22088 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8739 | /* 22091 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8740 | /* 22095 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8741 | /* 22099 */ // MIs[0] m |
| 8742 | /* 22099 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8743 | /* 22102 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt6), |
| 8744 | /* 22107 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8474:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt6>>:$m) => (SAT_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] }):$m) |
| 8745 | /* 22107 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_S_D), |
| 8746 | /* 22110 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8747 | /* 22112 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8748 | /* 22114 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8749 | /* 22116 */ GIR_RootConstrainSelectedInstOperands, |
| 8750 | /* 22117 */ // GIR_Coverage, 1016, |
| 8751 | /* 22117 */ GIR_EraseRootFromParent_Done, |
| 8752 | /* 22118 */ // Label 688: @22118 |
| 8753 | /* 22118 */ GIM_Try, /*On fail goto*//*Label 689*/ GIMT_Encode4(22164), // Rule ID 1017 // |
| 8754 | /* 22123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8755 | /* 22126 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_u_b), |
| 8756 | /* 22131 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 8757 | /* 22134 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 8758 | /* 22137 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8759 | /* 22141 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8760 | /* 22145 */ // MIs[0] m |
| 8761 | /* 22145 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8762 | /* 22148 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt3), |
| 8763 | /* 22153 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8477:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt3>>:$m) => (SAT_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] }):$m) |
| 8764 | /* 22153 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_U_B), |
| 8765 | /* 22156 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8766 | /* 22158 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8767 | /* 22160 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8768 | /* 22162 */ GIR_RootConstrainSelectedInstOperands, |
| 8769 | /* 22163 */ // GIR_Coverage, 1017, |
| 8770 | /* 22163 */ GIR_EraseRootFromParent_Done, |
| 8771 | /* 22164 */ // Label 689: @22164 |
| 8772 | /* 22164 */ GIM_Try, /*On fail goto*//*Label 690*/ GIMT_Encode4(22210), // Rule ID 1018 // |
| 8773 | /* 22169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8774 | /* 22172 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_u_h), |
| 8775 | /* 22177 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 8776 | /* 22180 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8777 | /* 22183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8778 | /* 22187 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8779 | /* 22191 */ // MIs[0] m |
| 8780 | /* 22191 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8781 | /* 22194 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt4), |
| 8782 | /* 22199 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8479:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt4>>:$m) => (SAT_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] }):$m) |
| 8783 | /* 22199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_U_H), |
| 8784 | /* 22202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8785 | /* 22204 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8786 | /* 22206 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8787 | /* 22208 */ GIR_RootConstrainSelectedInstOperands, |
| 8788 | /* 22209 */ // GIR_Coverage, 1018, |
| 8789 | /* 22209 */ GIR_EraseRootFromParent_Done, |
| 8790 | /* 22210 */ // Label 690: @22210 |
| 8791 | /* 22210 */ GIM_Try, /*On fail goto*//*Label 691*/ GIMT_Encode4(22256), // Rule ID 1019 // |
| 8792 | /* 22215 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8793 | /* 22218 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_u_w), |
| 8794 | /* 22223 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8795 | /* 22226 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8796 | /* 22229 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8797 | /* 22233 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8798 | /* 22237 */ // MIs[0] m |
| 8799 | /* 22237 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8800 | /* 22240 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 8801 | /* 22245 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8480:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$m) => (SAT_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] }):$m) |
| 8802 | /* 22245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_U_W), |
| 8803 | /* 22248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8804 | /* 22250 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8805 | /* 22252 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8806 | /* 22254 */ GIR_RootConstrainSelectedInstOperands, |
| 8807 | /* 22255 */ // GIR_Coverage, 1019, |
| 8808 | /* 22255 */ GIR_EraseRootFromParent_Done, |
| 8809 | /* 22256 */ // Label 691: @22256 |
| 8810 | /* 22256 */ GIM_Try, /*On fail goto*//*Label 692*/ GIMT_Encode4(22302), // Rule ID 1020 // |
| 8811 | /* 22261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8812 | /* 22264 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sat_u_d), |
| 8813 | /* 22269 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8814 | /* 22272 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8815 | /* 22275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8816 | /* 22279 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8817 | /* 22283 */ // MIs[0] m |
| 8818 | /* 22283 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8819 | /* 22286 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt6), |
| 8820 | /* 22291 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8478:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt6>>:$m) => (SAT_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] }):$m) |
| 8821 | /* 22291 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SAT_U_D), |
| 8822 | /* 22294 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8823 | /* 22296 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8824 | /* 22298 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8825 | /* 22300 */ GIR_RootConstrainSelectedInstOperands, |
| 8826 | /* 22301 */ // GIR_Coverage, 1020, |
| 8827 | /* 22301 */ GIR_EraseRootFromParent_Done, |
| 8828 | /* 22302 */ // Label 692: @22302 |
| 8829 | /* 22302 */ GIM_Try, /*On fail goto*//*Label 693*/ GIMT_Encode4(22348), // Rule ID 1060 // |
| 8830 | /* 22307 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8831 | /* 22310 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srari_b), |
| 8832 | /* 22315 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 8833 | /* 22318 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 8834 | /* 22321 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8835 | /* 22325 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8836 | /* 22329 */ // MIs[0] m |
| 8837 | /* 22329 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8838 | /* 22332 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt3), |
| 8839 | /* 22337 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8532:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt3>>:$m) => (SRARI_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] }):$m) |
| 8840 | /* 22337 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRARI_B), |
| 8841 | /* 22340 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8842 | /* 22342 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8843 | /* 22344 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8844 | /* 22346 */ GIR_RootConstrainSelectedInstOperands, |
| 8845 | /* 22347 */ // GIR_Coverage, 1060, |
| 8846 | /* 22347 */ GIR_EraseRootFromParent_Done, |
| 8847 | /* 22348 */ // Label 693: @22348 |
| 8848 | /* 22348 */ GIM_Try, /*On fail goto*//*Label 694*/ GIMT_Encode4(22394), // Rule ID 1061 // |
| 8849 | /* 22353 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8850 | /* 22356 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srari_h), |
| 8851 | /* 22361 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 8852 | /* 22364 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8853 | /* 22367 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8854 | /* 22371 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8855 | /* 22375 */ // MIs[0] m |
| 8856 | /* 22375 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8857 | /* 22378 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt4), |
| 8858 | /* 22383 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8534:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt4>>:$m) => (SRARI_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] }):$m) |
| 8859 | /* 22383 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRARI_H), |
| 8860 | /* 22386 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8861 | /* 22388 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8862 | /* 22390 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8863 | /* 22392 */ GIR_RootConstrainSelectedInstOperands, |
| 8864 | /* 22393 */ // GIR_Coverage, 1061, |
| 8865 | /* 22393 */ GIR_EraseRootFromParent_Done, |
| 8866 | /* 22394 */ // Label 694: @22394 |
| 8867 | /* 22394 */ GIM_Try, /*On fail goto*//*Label 695*/ GIMT_Encode4(22440), // Rule ID 1062 // |
| 8868 | /* 22399 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8869 | /* 22402 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srari_w), |
| 8870 | /* 22407 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8871 | /* 22410 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8872 | /* 22413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8873 | /* 22417 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8874 | /* 22421 */ // MIs[0] m |
| 8875 | /* 22421 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8876 | /* 22424 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 8877 | /* 22429 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8535:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$m) => (SRARI_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] }):$m) |
| 8878 | /* 22429 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRARI_W), |
| 8879 | /* 22432 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8880 | /* 22434 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8881 | /* 22436 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8882 | /* 22438 */ GIR_RootConstrainSelectedInstOperands, |
| 8883 | /* 22439 */ // GIR_Coverage, 1062, |
| 8884 | /* 22439 */ GIR_EraseRootFromParent_Done, |
| 8885 | /* 22440 */ // Label 695: @22440 |
| 8886 | /* 22440 */ GIM_Try, /*On fail goto*//*Label 696*/ GIMT_Encode4(22486), // Rule ID 1063 // |
| 8887 | /* 22445 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8888 | /* 22448 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srari_d), |
| 8889 | /* 22453 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8890 | /* 22456 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8891 | /* 22459 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8892 | /* 22463 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8893 | /* 22467 */ // MIs[0] m |
| 8894 | /* 22467 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8895 | /* 22470 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt6), |
| 8896 | /* 22475 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8533:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt6>>:$m) => (SRARI_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] }):$m) |
| 8897 | /* 22475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRARI_D), |
| 8898 | /* 22478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8899 | /* 22480 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8900 | /* 22482 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8901 | /* 22484 */ GIR_RootConstrainSelectedInstOperands, |
| 8902 | /* 22485 */ // GIR_Coverage, 1063, |
| 8903 | /* 22485 */ GIR_EraseRootFromParent_Done, |
| 8904 | /* 22486 */ // Label 696: @22486 |
| 8905 | /* 22486 */ GIM_Try, /*On fail goto*//*Label 697*/ GIMT_Encode4(22532), // Rule ID 1076 // |
| 8906 | /* 22491 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8907 | /* 22494 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlri_b), |
| 8908 | /* 22499 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 8909 | /* 22502 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 8910 | /* 22505 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8911 | /* 22509 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 8912 | /* 22513 */ // MIs[0] m |
| 8913 | /* 22513 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8914 | /* 22516 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt3), |
| 8915 | /* 22521 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8548:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt3>>:$m) => (SRLRI_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] }):$m) |
| 8916 | /* 22521 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLRI_B), |
| 8917 | /* 22524 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8918 | /* 22526 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8919 | /* 22528 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8920 | /* 22530 */ GIR_RootConstrainSelectedInstOperands, |
| 8921 | /* 22531 */ // GIR_Coverage, 1076, |
| 8922 | /* 22531 */ GIR_EraseRootFromParent_Done, |
| 8923 | /* 22532 */ // Label 697: @22532 |
| 8924 | /* 22532 */ GIM_Try, /*On fail goto*//*Label 698*/ GIMT_Encode4(22578), // Rule ID 1077 // |
| 8925 | /* 22537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8926 | /* 22540 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlri_h), |
| 8927 | /* 22545 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 8928 | /* 22548 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 8929 | /* 22551 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8930 | /* 22555 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 8931 | /* 22559 */ // MIs[0] m |
| 8932 | /* 22559 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8933 | /* 22562 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt4), |
| 8934 | /* 22567 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8550:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt4>>:$m) => (SRLRI_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] }):$m) |
| 8935 | /* 22567 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLRI_H), |
| 8936 | /* 22570 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8937 | /* 22572 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8938 | /* 22574 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8939 | /* 22576 */ GIR_RootConstrainSelectedInstOperands, |
| 8940 | /* 22577 */ // GIR_Coverage, 1077, |
| 8941 | /* 22577 */ GIR_EraseRootFromParent_Done, |
| 8942 | /* 22578 */ // Label 698: @22578 |
| 8943 | /* 22578 */ GIM_Try, /*On fail goto*//*Label 699*/ GIMT_Encode4(22624), // Rule ID 1078 // |
| 8944 | /* 22583 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8945 | /* 22586 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlri_w), |
| 8946 | /* 22591 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 8947 | /* 22594 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 8948 | /* 22597 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8949 | /* 22601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 8950 | /* 22605 */ // MIs[0] m |
| 8951 | /* 22605 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8952 | /* 22608 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 8953 | /* 22613 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8551:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$m) => (SRLRI_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] }):$m) |
| 8954 | /* 22613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLRI_W), |
| 8955 | /* 22616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8956 | /* 22618 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8957 | /* 22620 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8958 | /* 22622 */ GIR_RootConstrainSelectedInstOperands, |
| 8959 | /* 22623 */ // GIR_Coverage, 1078, |
| 8960 | /* 22623 */ GIR_EraseRootFromParent_Done, |
| 8961 | /* 22624 */ // Label 699: @22624 |
| 8962 | /* 22624 */ GIM_Try, /*On fail goto*//*Label 700*/ GIMT_Encode4(22670), // Rule ID 1079 // |
| 8963 | /* 22629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 8964 | /* 22632 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlri_d), |
| 8965 | /* 22637 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 8966 | /* 22640 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 8967 | /* 22643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8968 | /* 22647 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 8969 | /* 22651 */ // MIs[0] m |
| 8970 | /* 22651 */ GIM_CheckIsImm, /*MI*/0, /*Op*/3, |
| 8971 | /* 22654 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt6), |
| 8972 | /* 22659 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8549:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt6>>:$m) => (SRLRI_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] }):$m) |
| 8973 | /* 22659 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLRI_D), |
| 8974 | /* 22662 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 8975 | /* 22664 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 8976 | /* 22666 */ GIR_RootToRootCopy, /*OpIdx*/3, // m |
| 8977 | /* 22668 */ GIR_RootConstrainSelectedInstOperands, |
| 8978 | /* 22669 */ // GIR_Coverage, 1079, |
| 8979 | /* 22669 */ GIR_EraseRootFromParent_Done, |
| 8980 | /* 22670 */ // Label 700: @22670 |
| 8981 | /* 22670 */ GIM_Try, /*On fail goto*//*Label 701*/ GIMT_Encode4(22726), // Rule ID 460 // |
| 8982 | /* 22675 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 8983 | /* 22678 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_ph), |
| 8984 | /* 22683 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 8985 | /* 22686 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 8986 | /* 22689 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 8987 | /* 22692 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8988 | /* 22696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 8989 | /* 22700 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 8990 | /* 22704 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 8991 | /* 22708 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 8992 | /* 22712 */ // MIs[1] Operand 1 |
| 8993 | /* 22712 */ // No operand predicates |
| 8994 | /* 22712 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 8995 | /* 22714 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8491:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$rs_sa) => (SHRA_R_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, (imm:{ *:[i32] }):$rs_sa) |
| 8996 | /* 22714 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_R_PH), |
| 8997 | /* 22717 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 8998 | /* 22719 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 8999 | /* 22721 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // rs_sa |
| 9000 | /* 22724 */ GIR_RootConstrainSelectedInstOperands, |
| 9001 | /* 22725 */ // GIR_Coverage, 460, |
| 9002 | /* 22725 */ GIR_EraseRootFromParent_Done, |
| 9003 | /* 22726 */ // Label 701: @22726 |
| 9004 | /* 22726 */ GIM_Try, /*On fail goto*//*Label 702*/ GIMT_Encode4(22782), // Rule ID 464 // |
| 9005 | /* 22731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9006 | /* 22734 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_w), |
| 9007 | /* 22739 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9008 | /* 22742 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9009 | /* 22745 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9010 | /* 22748 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9011 | /* 22752 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9012 | /* 22756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9013 | /* 22760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9014 | /* 22764 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 9015 | /* 22768 */ // MIs[1] Operand 1 |
| 9016 | /* 22768 */ // No operand predicates |
| 9017 | /* 22768 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9018 | /* 22770 */ // (intrinsic_wo_chain:{ *:[i32] } 8493:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$rs_sa) => (SHRA_R_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$rs_sa) |
| 9019 | /* 22770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_R_W), |
| 9020 | /* 22773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9021 | /* 22775 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9022 | /* 22777 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // rs_sa |
| 9023 | /* 22780 */ GIR_RootConstrainSelectedInstOperands, |
| 9024 | /* 22781 */ // GIR_Coverage, 464, |
| 9025 | /* 22781 */ GIR_EraseRootFromParent_Done, |
| 9026 | /* 22782 */ // Label 702: @22782 |
| 9027 | /* 22782 */ GIM_Try, /*On fail goto*//*Label 703*/ GIMT_Encode4(22838), // Rule ID 555 // |
| 9028 | /* 22787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9029 | /* 22790 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_qb), |
| 9030 | /* 22795 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9031 | /* 22798 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9032 | /* 22801 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9033 | /* 22804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9034 | /* 22808 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9035 | /* 22812 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9036 | /* 22816 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9037 | /* 22820 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt3), |
| 9038 | /* 22824 */ // MIs[1] Operand 1 |
| 9039 | /* 22824 */ // No operand predicates |
| 9040 | /* 22824 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9041 | /* 22826 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8492:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$rs_sa) => (SHRA_R_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, (imm:{ *:[i32] }):$rs_sa) |
| 9042 | /* 22826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_R_QB), |
| 9043 | /* 22829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9044 | /* 22831 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9045 | /* 22833 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // rs_sa |
| 9046 | /* 22836 */ GIR_RootConstrainSelectedInstOperands, |
| 9047 | /* 22837 */ // GIR_Coverage, 555, |
| 9048 | /* 22837 */ GIR_EraseRootFromParent_Done, |
| 9049 | /* 22838 */ // Label 703: @22838 |
| 9050 | /* 22838 */ GIM_Try, /*On fail goto*//*Label 704*/ GIMT_Encode4(22894), // Rule ID 1320 // |
| 9051 | /* 22843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 9052 | /* 22846 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_ph), |
| 9053 | /* 22851 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9054 | /* 22854 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9055 | /* 22857 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9056 | /* 22860 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9057 | /* 22864 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9058 | /* 22868 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9059 | /* 22872 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9060 | /* 22876 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 9061 | /* 22880 */ // MIs[1] Operand 1 |
| 9062 | /* 22880 */ // No operand predicates |
| 9063 | /* 22880 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9064 | /* 22882 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8491:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$sa) => (SHRA_R_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, (imm:{ *:[i32] }):$sa) |
| 9065 | /* 22882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_R_PH_MM), |
| 9066 | /* 22885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 9067 | /* 22887 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9068 | /* 22889 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // sa |
| 9069 | /* 22892 */ GIR_RootConstrainSelectedInstOperands, |
| 9070 | /* 22893 */ // GIR_Coverage, 1320, |
| 9071 | /* 22893 */ GIR_EraseRootFromParent_Done, |
| 9072 | /* 22894 */ // Label 704: @22894 |
| 9073 | /* 22894 */ GIM_Try, /*On fail goto*//*Label 705*/ GIMT_Encode4(22950), // Rule ID 1324 // |
| 9074 | /* 22899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 9075 | /* 22902 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_w), |
| 9076 | /* 22907 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9077 | /* 22910 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9078 | /* 22913 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9079 | /* 22916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9080 | /* 22920 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9081 | /* 22924 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9082 | /* 22928 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9083 | /* 22932 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 9084 | /* 22936 */ // MIs[1] Operand 1 |
| 9085 | /* 22936 */ // No operand predicates |
| 9086 | /* 22936 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9087 | /* 22938 */ // (intrinsic_wo_chain:{ *:[i32] } 8493:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$sa) => (SHRA_R_W_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] }):$sa) |
| 9088 | /* 22938 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_R_W_MM), |
| 9089 | /* 22941 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 9090 | /* 22943 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9091 | /* 22945 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // sa |
| 9092 | /* 22948 */ GIR_RootConstrainSelectedInstOperands, |
| 9093 | /* 22949 */ // GIR_Coverage, 1324, |
| 9094 | /* 22949 */ GIR_EraseRootFromParent_Done, |
| 9095 | /* 22950 */ // Label 705: @22950 |
| 9096 | /* 22950 */ GIM_Try, /*On fail goto*//*Label 706*/ GIMT_Encode4(23006), // Rule ID 1399 // |
| 9097 | /* 22955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 9098 | /* 22958 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_qb), |
| 9099 | /* 22963 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9100 | /* 22966 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9101 | /* 22969 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9102 | /* 22972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9103 | /* 22976 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9104 | /* 22980 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9105 | /* 22984 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9106 | /* 22988 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt3), |
| 9107 | /* 22992 */ // MIs[1] Operand 1 |
| 9108 | /* 22992 */ // No operand predicates |
| 9109 | /* 22992 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9110 | /* 22994 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8492:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$sa) => (SHRA_R_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, (imm:{ *:[i32] }):$sa) |
| 9111 | /* 22994 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_R_QB_MMR2), |
| 9112 | /* 22997 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 9113 | /* 22999 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9114 | /* 23001 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // sa |
| 9115 | /* 23004 */ GIR_RootConstrainSelectedInstOperands, |
| 9116 | /* 23005 */ // GIR_Coverage, 1399, |
| 9117 | /* 23005 */ GIR_EraseRootFromParent_Done, |
| 9118 | /* 23006 */ // Label 706: @23006 |
| 9119 | /* 23006 */ GIM_Try, /*On fail goto*//*Label 707*/ GIMT_Encode4(23058), // Rule ID 2070 // |
| 9120 | /* 23011 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9121 | /* 23014 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_ph), |
| 9122 | /* 23019 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9123 | /* 23022 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9124 | /* 23025 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9125 | /* 23028 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9126 | /* 23032 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9127 | /* 23036 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9128 | /* 23040 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 9129 | /* 23044 */ // MIs[1] Operand 1 |
| 9130 | /* 23044 */ // No operand predicates |
| 9131 | /* 23044 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9132 | /* 23046 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8489:{ *:[iPTR] }, v2i16:{ *:[v2i16] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$shamt) => (SHRA_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$shamt) |
| 9133 | /* 23046 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_PH), |
| 9134 | /* 23049 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9135 | /* 23051 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 9136 | /* 23053 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 9137 | /* 23056 */ GIR_RootConstrainSelectedInstOperands, |
| 9138 | /* 23057 */ // GIR_Coverage, 2070, |
| 9139 | /* 23057 */ GIR_EraseRootFromParent_Done, |
| 9140 | /* 23058 */ // Label 707: @23058 |
| 9141 | /* 23058 */ GIM_Try, /*On fail goto*//*Label 708*/ GIMT_Encode4(23110), // Rule ID 2071 // |
| 9142 | /* 23063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9143 | /* 23066 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shrl_ph), |
| 9144 | /* 23071 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9145 | /* 23074 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9146 | /* 23077 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9147 | /* 23080 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9148 | /* 23084 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9149 | /* 23088 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9150 | /* 23092 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 9151 | /* 23096 */ // MIs[1] Operand 1 |
| 9152 | /* 23096 */ // No operand predicates |
| 9153 | /* 23096 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9154 | /* 23098 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8494:{ *:[iPTR] }, v2i16:{ *:[v2i16] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$shamt) => (SHRL_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$shamt) |
| 9155 | /* 23098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRL_PH), |
| 9156 | /* 23101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9157 | /* 23103 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 9158 | /* 23105 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 9159 | /* 23108 */ GIR_RootConstrainSelectedInstOperands, |
| 9160 | /* 23109 */ // GIR_Coverage, 2071, |
| 9161 | /* 23109 */ GIR_EraseRootFromParent_Done, |
| 9162 | /* 23110 */ // Label 708: @23110 |
| 9163 | /* 23110 */ GIM_Try, /*On fail goto*//*Label 709*/ GIMT_Encode4(23162), // Rule ID 2076 // |
| 9164 | /* 23115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9165 | /* 23118 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_qb), |
| 9166 | /* 23123 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9167 | /* 23126 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9168 | /* 23129 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9169 | /* 23132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9170 | /* 23136 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9171 | /* 23140 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9172 | /* 23144 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt3), |
| 9173 | /* 23148 */ // MIs[1] Operand 1 |
| 9174 | /* 23148 */ // No operand predicates |
| 9175 | /* 23148 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9176 | /* 23150 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8490:{ *:[iPTR] }, v4i8:{ *:[v4i8] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$shamt) => (SHRA_QB:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$shamt) |
| 9177 | /* 23150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRA_QB), |
| 9178 | /* 23153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9179 | /* 23155 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 9180 | /* 23157 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 9181 | /* 23160 */ GIR_RootConstrainSelectedInstOperands, |
| 9182 | /* 23161 */ // GIR_Coverage, 2076, |
| 9183 | /* 23161 */ GIR_EraseRootFromParent_Done, |
| 9184 | /* 23162 */ // Label 709: @23162 |
| 9185 | /* 23162 */ GIM_Try, /*On fail goto*//*Label 710*/ GIMT_Encode4(23214), // Rule ID 2077 // |
| 9186 | /* 23167 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9187 | /* 23170 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shrl_qb), |
| 9188 | /* 23175 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9189 | /* 23178 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9190 | /* 23181 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9191 | /* 23184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9192 | /* 23188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 9193 | /* 23192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 9194 | /* 23196 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt3), |
| 9195 | /* 23200 */ // MIs[1] Operand 1 |
| 9196 | /* 23200 */ // No operand predicates |
| 9197 | /* 23200 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 9198 | /* 23202 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8495:{ *:[iPTR] }, v4i8:{ *:[v4i8] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$shamt) => (SHRL_QB:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$shamt) |
| 9199 | /* 23202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRL_QB), |
| 9200 | /* 23205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9201 | /* 23207 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 9202 | /* 23209 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 9203 | /* 23212 */ GIR_RootConstrainSelectedInstOperands, |
| 9204 | /* 23213 */ // GIR_Coverage, 2077, |
| 9205 | /* 23213 */ GIR_EraseRootFromParent_Done, |
| 9206 | /* 23214 */ // Label 710: @23214 |
| 9207 | /* 23214 */ GIM_Try, /*On fail goto*//*Label 711*/ GIMT_Encode4(23262), // Rule ID 430 // |
| 9208 | /* 23219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9209 | /* 23222 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addu_s_qb), |
| 9210 | /* 23227 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9211 | /* 23230 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9212 | /* 23233 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 9213 | /* 23236 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9214 | /* 23240 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9215 | /* 23244 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9216 | /* 23248 */ // (intrinsic_wo_chain:{ *:[v4i8] } 7961:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (ADDU_S_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 9217 | /* 23248 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDU_S_QB), |
| 9218 | /* 23251 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9219 | /* 23253 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9220 | /* 23255 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9221 | /* 23257 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 9222 | /* 23260 */ GIR_RootConstrainSelectedInstOperands, |
| 9223 | /* 23261 */ // GIR_Coverage, 430, |
| 9224 | /* 23261 */ GIR_EraseRootFromParent_Done, |
| 9225 | /* 23262 */ // Label 711: @23262 |
| 9226 | /* 23262 */ GIM_Try, /*On fail goto*//*Label 712*/ GIMT_Encode4(23310), // Rule ID 431 // |
| 9227 | /* 23267 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9228 | /* 23270 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subu_s_qb), |
| 9229 | /* 23275 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9230 | /* 23278 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9231 | /* 23281 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 9232 | /* 23284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9233 | /* 23288 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9234 | /* 23292 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9235 | /* 23296 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8584:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (SUBU_S_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 9236 | /* 23296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBU_S_QB), |
| 9237 | /* 23299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9238 | /* 23301 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9239 | /* 23303 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9240 | /* 23305 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 9241 | /* 23308 */ GIR_RootConstrainSelectedInstOperands, |
| 9242 | /* 23309 */ // GIR_Coverage, 431, |
| 9243 | /* 23309 */ GIR_EraseRootFromParent_Done, |
| 9244 | /* 23310 */ // Label 712: @23310 |
| 9245 | /* 23310 */ GIM_Try, /*On fail goto*//*Label 713*/ GIMT_Encode4(23358), // Rule ID 432 // |
| 9246 | /* 23315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9247 | /* 23318 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addq_s_ph), |
| 9248 | /* 23323 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9249 | /* 23326 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9250 | /* 23329 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9251 | /* 23332 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9252 | /* 23336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9253 | /* 23340 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9254 | /* 23344 */ // (intrinsic_wo_chain:{ *:[v2i16] } 7939:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDQ_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9255 | /* 23344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQ_S_PH), |
| 9256 | /* 23347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9257 | /* 23349 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9258 | /* 23351 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9259 | /* 23353 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 9260 | /* 23356 */ GIR_RootConstrainSelectedInstOperands, |
| 9261 | /* 23357 */ // GIR_Coverage, 432, |
| 9262 | /* 23357 */ GIR_EraseRootFromParent_Done, |
| 9263 | /* 23358 */ // Label 713: @23358 |
| 9264 | /* 23358 */ GIM_Try, /*On fail goto*//*Label 714*/ GIMT_Encode4(23406), // Rule ID 433 // |
| 9265 | /* 23363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9266 | /* 23366 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subq_s_ph), |
| 9267 | /* 23371 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9268 | /* 23374 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9269 | /* 23377 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9270 | /* 23380 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9271 | /* 23384 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9272 | /* 23388 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9273 | /* 23392 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8559:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBQ_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9274 | /* 23392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQ_S_PH), |
| 9275 | /* 23395 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9276 | /* 23397 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9277 | /* 23399 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9278 | /* 23401 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 9279 | /* 23404 */ GIR_RootConstrainSelectedInstOperands, |
| 9280 | /* 23405 */ // GIR_Coverage, 433, |
| 9281 | /* 23405 */ GIR_EraseRootFromParent_Done, |
| 9282 | /* 23406 */ // Label 714: @23406 |
| 9283 | /* 23406 */ GIM_Try, /*On fail goto*//*Label 715*/ GIMT_Encode4(23451), // Rule ID 436 // |
| 9284 | /* 23411 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9285 | /* 23414 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_modsub), |
| 9286 | /* 23419 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9287 | /* 23422 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9288 | /* 23425 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9289 | /* 23428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9290 | /* 23432 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9291 | /* 23436 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9292 | /* 23440 */ // (intrinsic_wo_chain:{ *:[i32] } 8389:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MODSUB:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 9293 | /* 23440 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MODSUB), |
| 9294 | /* 23443 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9295 | /* 23445 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9296 | /* 23447 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9297 | /* 23449 */ GIR_RootConstrainSelectedInstOperands, |
| 9298 | /* 23450 */ // GIR_Coverage, 436, |
| 9299 | /* 23450 */ GIR_EraseRootFromParent_Done, |
| 9300 | /* 23451 */ // Label 715: @23451 |
| 9301 | /* 23451 */ GIM_Try, /*On fail goto*//*Label 716*/ GIMT_Encode4(23496), // Rule ID 440 // |
| 9302 | /* 23456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9303 | /* 23459 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrq_qb_ph), |
| 9304 | /* 23464 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9305 | /* 23467 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9306 | /* 23470 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9307 | /* 23473 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9308 | /* 23477 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9309 | /* 23481 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9310 | /* 23485 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8465:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECRQ_QB_PH:{ *:[v4i8] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9311 | /* 23485 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQ_QB_PH), |
| 9312 | /* 23488 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9313 | /* 23490 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9314 | /* 23492 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9315 | /* 23494 */ GIR_RootConstrainSelectedInstOperands, |
| 9316 | /* 23495 */ // GIR_Coverage, 440, |
| 9317 | /* 23495 */ GIR_EraseRootFromParent_Done, |
| 9318 | /* 23496 */ // Label 716: @23496 |
| 9319 | /* 23496 */ GIM_Try, /*On fail goto*//*Label 717*/ GIMT_Encode4(23541), // Rule ID 441 // |
| 9320 | /* 23501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9321 | /* 23504 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrq_ph_w), |
| 9322 | /* 23509 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9323 | /* 23512 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9324 | /* 23515 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9325 | /* 23518 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9326 | /* 23522 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9327 | /* 23526 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9328 | /* 23530 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8464:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (PRECRQ_PH_W:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 9329 | /* 23530 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQ_PH_W), |
| 9330 | /* 23533 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9331 | /* 23535 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9332 | /* 23537 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9333 | /* 23539 */ GIR_RootConstrainSelectedInstOperands, |
| 9334 | /* 23540 */ // GIR_Coverage, 441, |
| 9335 | /* 23540 */ GIR_EraseRootFromParent_Done, |
| 9336 | /* 23541 */ // Label 717: @23541 |
| 9337 | /* 23541 */ GIM_Try, /*On fail goto*//*Label 718*/ GIMT_Encode4(23586), // Rule ID 455 // |
| 9338 | /* 23546 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9339 | /* 23549 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shrl_qb), |
| 9340 | /* 23554 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9341 | /* 23557 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9342 | /* 23560 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9343 | /* 23563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9344 | /* 23567 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9345 | /* 23571 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9346 | /* 23575 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8495:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHRLV_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 9347 | /* 23575 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRLV_QB), |
| 9348 | /* 23578 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9349 | /* 23580 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9350 | /* 23582 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 9351 | /* 23584 */ GIR_RootConstrainSelectedInstOperands, |
| 9352 | /* 23585 */ // GIR_Coverage, 455, |
| 9353 | /* 23585 */ GIR_EraseRootFromParent_Done, |
| 9354 | /* 23586 */ // Label 718: @23586 |
| 9355 | /* 23586 */ GIM_Try, /*On fail goto*//*Label 719*/ GIMT_Encode4(23631), // Rule ID 459 // |
| 9356 | /* 23591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9357 | /* 23594 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_ph), |
| 9358 | /* 23599 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9359 | /* 23602 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9360 | /* 23605 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9361 | /* 23608 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9362 | /* 23612 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9363 | /* 23616 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9364 | /* 23620 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8489:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHRAV_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 9365 | /* 23620 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_PH), |
| 9366 | /* 23623 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9367 | /* 23625 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9368 | /* 23627 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 9369 | /* 23629 */ GIR_RootConstrainSelectedInstOperands, |
| 9370 | /* 23630 */ // GIR_Coverage, 459, |
| 9371 | /* 23630 */ GIR_EraseRootFromParent_Done, |
| 9372 | /* 23631 */ // Label 719: @23631 |
| 9373 | /* 23631 */ GIM_Try, /*On fail goto*//*Label 720*/ GIMT_Encode4(23676), // Rule ID 461 // |
| 9374 | /* 23636 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9375 | /* 23639 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_ph), |
| 9376 | /* 23644 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9377 | /* 23647 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9378 | /* 23650 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9379 | /* 23653 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9380 | /* 23657 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9381 | /* 23661 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9382 | /* 23665 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8491:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHRAV_R_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 9383 | /* 23665 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_R_PH), |
| 9384 | /* 23668 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9385 | /* 23670 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9386 | /* 23672 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 9387 | /* 23674 */ GIR_RootConstrainSelectedInstOperands, |
| 9388 | /* 23675 */ // GIR_Coverage, 461, |
| 9389 | /* 23675 */ GIR_EraseRootFromParent_Done, |
| 9390 | /* 23676 */ // Label 720: @23676 |
| 9391 | /* 23676 */ GIM_Try, /*On fail goto*//*Label 721*/ GIMT_Encode4(23721), // Rule ID 465 // |
| 9392 | /* 23681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9393 | /* 23684 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_w), |
| 9394 | /* 23689 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9395 | /* 23692 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9396 | /* 23695 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9397 | /* 23698 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9398 | /* 23702 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9399 | /* 23706 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9400 | /* 23710 */ // (intrinsic_wo_chain:{ *:[i32] } 8493:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHRAV_R_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 9401 | /* 23710 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_R_W), |
| 9402 | /* 23713 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9403 | /* 23715 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9404 | /* 23717 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 9405 | /* 23719 */ GIR_RootConstrainSelectedInstOperands, |
| 9406 | /* 23720 */ // GIR_Coverage, 465, |
| 9407 | /* 23720 */ GIR_EraseRootFromParent_Done, |
| 9408 | /* 23721 */ // Label 721: @23721 |
| 9409 | /* 23721 */ GIM_Try, /*On fail goto*//*Label 722*/ GIMT_Encode4(23766), // Rule ID 502 // |
| 9410 | /* 23726 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 9411 | /* 23729 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_packrl_ph), |
| 9412 | /* 23734 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9413 | /* 23737 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9414 | /* 23740 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9415 | /* 23743 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9416 | /* 23747 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9417 | /* 23751 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9418 | /* 23755 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8436:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PACKRL_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9419 | /* 23755 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PACKRL_PH), |
| 9420 | /* 23758 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9421 | /* 23760 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9422 | /* 23762 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9423 | /* 23764 */ GIR_RootConstrainSelectedInstOperands, |
| 9424 | /* 23765 */ // GIR_Coverage, 502, |
| 9425 | /* 23765 */ GIR_EraseRootFromParent_Done, |
| 9426 | /* 23766 */ // Label 722: @23766 |
| 9427 | /* 23766 */ GIM_Try, /*On fail goto*//*Label 723*/ GIMT_Encode4(23811), // Rule ID 526 // |
| 9428 | /* 23771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9429 | /* 23774 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adduh_qb), |
| 9430 | /* 23779 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9431 | /* 23782 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9432 | /* 23785 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 9433 | /* 23788 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9434 | /* 23792 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9435 | /* 23796 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9436 | /* 23800 */ // (intrinsic_wo_chain:{ *:[v4i8] } 7962:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (ADDUH_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 9437 | /* 23800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDUH_QB), |
| 9438 | /* 23803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9439 | /* 23805 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9440 | /* 23807 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9441 | /* 23809 */ GIR_RootConstrainSelectedInstOperands, |
| 9442 | /* 23810 */ // GIR_Coverage, 526, |
| 9443 | /* 23810 */ GIR_EraseRootFromParent_Done, |
| 9444 | /* 23811 */ // Label 723: @23811 |
| 9445 | /* 23811 */ GIM_Try, /*On fail goto*//*Label 724*/ GIMT_Encode4(23856), // Rule ID 527 // |
| 9446 | /* 23816 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9447 | /* 23819 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adduh_r_qb), |
| 9448 | /* 23824 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9449 | /* 23827 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9450 | /* 23830 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 9451 | /* 23833 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9452 | /* 23837 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9453 | /* 23841 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9454 | /* 23845 */ // (intrinsic_wo_chain:{ *:[v4i8] } 7963:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (ADDUH_R_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 9455 | /* 23845 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDUH_R_QB), |
| 9456 | /* 23848 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9457 | /* 23850 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9458 | /* 23852 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9459 | /* 23854 */ GIR_RootConstrainSelectedInstOperands, |
| 9460 | /* 23855 */ // GIR_Coverage, 527, |
| 9461 | /* 23855 */ GIR_EraseRootFromParent_Done, |
| 9462 | /* 23856 */ // Label 724: @23856 |
| 9463 | /* 23856 */ GIM_Try, /*On fail goto*//*Label 725*/ GIMT_Encode4(23901), // Rule ID 528 // |
| 9464 | /* 23861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9465 | /* 23864 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subuh_qb), |
| 9466 | /* 23869 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9467 | /* 23872 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9468 | /* 23875 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 9469 | /* 23878 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9470 | /* 23882 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9471 | /* 23886 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9472 | /* 23890 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8585:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (SUBUH_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 9473 | /* 23890 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBUH_QB), |
| 9474 | /* 23893 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9475 | /* 23895 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9476 | /* 23897 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9477 | /* 23899 */ GIR_RootConstrainSelectedInstOperands, |
| 9478 | /* 23900 */ // GIR_Coverage, 528, |
| 9479 | /* 23900 */ GIR_EraseRootFromParent_Done, |
| 9480 | /* 23901 */ // Label 725: @23901 |
| 9481 | /* 23901 */ GIM_Try, /*On fail goto*//*Label 726*/ GIMT_Encode4(23946), // Rule ID 529 // |
| 9482 | /* 23906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9483 | /* 23909 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subuh_r_qb), |
| 9484 | /* 23914 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9485 | /* 23917 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9486 | /* 23920 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 9487 | /* 23923 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9488 | /* 23927 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9489 | /* 23931 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9490 | /* 23935 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8586:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (SUBUH_R_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 9491 | /* 23935 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBUH_R_QB), |
| 9492 | /* 23938 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9493 | /* 23940 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9494 | /* 23942 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9495 | /* 23944 */ GIR_RootConstrainSelectedInstOperands, |
| 9496 | /* 23945 */ // GIR_Coverage, 529, |
| 9497 | /* 23945 */ GIR_EraseRootFromParent_Done, |
| 9498 | /* 23946 */ // Label 726: @23946 |
| 9499 | /* 23946 */ GIM_Try, /*On fail goto*//*Label 727*/ GIMT_Encode4(23991), // Rule ID 530 // |
| 9500 | /* 23951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9501 | /* 23954 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_ph), |
| 9502 | /* 23959 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9503 | /* 23962 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9504 | /* 23965 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9505 | /* 23968 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9506 | /* 23972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9507 | /* 23976 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9508 | /* 23980 */ // (intrinsic_wo_chain:{ *:[v2i16] } 7941:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDQH_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9509 | /* 23980 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_PH), |
| 9510 | /* 23983 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9511 | /* 23985 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9512 | /* 23987 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9513 | /* 23989 */ GIR_RootConstrainSelectedInstOperands, |
| 9514 | /* 23990 */ // GIR_Coverage, 530, |
| 9515 | /* 23990 */ GIR_EraseRootFromParent_Done, |
| 9516 | /* 23991 */ // Label 727: @23991 |
| 9517 | /* 23991 */ GIM_Try, /*On fail goto*//*Label 728*/ GIMT_Encode4(24036), // Rule ID 531 // |
| 9518 | /* 23996 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9519 | /* 23999 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_r_ph), |
| 9520 | /* 24004 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9521 | /* 24007 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9522 | /* 24010 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9523 | /* 24013 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9524 | /* 24017 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9525 | /* 24021 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9526 | /* 24025 */ // (intrinsic_wo_chain:{ *:[v2i16] } 7942:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDQH_R_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9527 | /* 24025 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_R_PH), |
| 9528 | /* 24028 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9529 | /* 24030 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9530 | /* 24032 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9531 | /* 24034 */ GIR_RootConstrainSelectedInstOperands, |
| 9532 | /* 24035 */ // GIR_Coverage, 531, |
| 9533 | /* 24035 */ GIR_EraseRootFromParent_Done, |
| 9534 | /* 24036 */ // Label 728: @24036 |
| 9535 | /* 24036 */ GIM_Try, /*On fail goto*//*Label 729*/ GIMT_Encode4(24081), // Rule ID 532 // |
| 9536 | /* 24041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9537 | /* 24044 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_ph), |
| 9538 | /* 24049 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9539 | /* 24052 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9540 | /* 24055 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9541 | /* 24058 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9542 | /* 24062 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9543 | /* 24066 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9544 | /* 24070 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8561:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBQH_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9545 | /* 24070 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_PH), |
| 9546 | /* 24073 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9547 | /* 24075 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9548 | /* 24077 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9549 | /* 24079 */ GIR_RootConstrainSelectedInstOperands, |
| 9550 | /* 24080 */ // GIR_Coverage, 532, |
| 9551 | /* 24080 */ GIR_EraseRootFromParent_Done, |
| 9552 | /* 24081 */ // Label 729: @24081 |
| 9553 | /* 24081 */ GIM_Try, /*On fail goto*//*Label 730*/ GIMT_Encode4(24126), // Rule ID 533 // |
| 9554 | /* 24086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9555 | /* 24089 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_r_ph), |
| 9556 | /* 24094 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9557 | /* 24097 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9558 | /* 24100 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 9559 | /* 24103 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9560 | /* 24107 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9561 | /* 24111 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9562 | /* 24115 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8562:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBQH_R_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 9563 | /* 24115 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_R_PH), |
| 9564 | /* 24118 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9565 | /* 24120 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9566 | /* 24122 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9567 | /* 24124 */ GIR_RootConstrainSelectedInstOperands, |
| 9568 | /* 24125 */ // GIR_Coverage, 533, |
| 9569 | /* 24125 */ GIR_EraseRootFromParent_Done, |
| 9570 | /* 24126 */ // Label 730: @24126 |
| 9571 | /* 24126 */ GIM_Try, /*On fail goto*//*Label 731*/ GIMT_Encode4(24171), // Rule ID 534 // |
| 9572 | /* 24131 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9573 | /* 24134 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_w), |
| 9574 | /* 24139 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9575 | /* 24142 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9576 | /* 24145 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9577 | /* 24148 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9578 | /* 24152 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9579 | /* 24156 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9580 | /* 24160 */ // (intrinsic_wo_chain:{ *:[i32] } 7944:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDQH_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 9581 | /* 24160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_W), |
| 9582 | /* 24163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9583 | /* 24165 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9584 | /* 24167 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9585 | /* 24169 */ GIR_RootConstrainSelectedInstOperands, |
| 9586 | /* 24170 */ // GIR_Coverage, 534, |
| 9587 | /* 24170 */ GIR_EraseRootFromParent_Done, |
| 9588 | /* 24171 */ // Label 731: @24171 |
| 9589 | /* 24171 */ GIM_Try, /*On fail goto*//*Label 732*/ GIMT_Encode4(24216), // Rule ID 535 // |
| 9590 | /* 24176 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9591 | /* 24179 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_r_w), |
| 9592 | /* 24184 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9593 | /* 24187 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9594 | /* 24190 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9595 | /* 24193 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9596 | /* 24197 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9597 | /* 24201 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9598 | /* 24205 */ // (intrinsic_wo_chain:{ *:[i32] } 7943:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDQH_R_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 9599 | /* 24205 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_R_W), |
| 9600 | /* 24208 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9601 | /* 24210 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9602 | /* 24212 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9603 | /* 24214 */ GIR_RootConstrainSelectedInstOperands, |
| 9604 | /* 24215 */ // GIR_Coverage, 535, |
| 9605 | /* 24215 */ GIR_EraseRootFromParent_Done, |
| 9606 | /* 24216 */ // Label 732: @24216 |
| 9607 | /* 24216 */ GIM_Try, /*On fail goto*//*Label 733*/ GIMT_Encode4(24261), // Rule ID 536 // |
| 9608 | /* 24221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9609 | /* 24224 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_w), |
| 9610 | /* 24229 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9611 | /* 24232 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9612 | /* 24235 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9613 | /* 24238 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9614 | /* 24242 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9615 | /* 24246 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9616 | /* 24250 */ // (intrinsic_wo_chain:{ *:[i32] } 8564:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBQH_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 9617 | /* 24250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_W), |
| 9618 | /* 24253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9619 | /* 24255 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9620 | /* 24257 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9621 | /* 24259 */ GIR_RootConstrainSelectedInstOperands, |
| 9622 | /* 24260 */ // GIR_Coverage, 536, |
| 9623 | /* 24260 */ GIR_EraseRootFromParent_Done, |
| 9624 | /* 24261 */ // Label 733: @24261 |
| 9625 | /* 24261 */ GIM_Try, /*On fail goto*//*Label 734*/ GIMT_Encode4(24306), // Rule ID 537 // |
| 9626 | /* 24266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9627 | /* 24269 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_r_w), |
| 9628 | /* 24274 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 9629 | /* 24277 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 9630 | /* 24280 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9631 | /* 24283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9632 | /* 24287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9633 | /* 24291 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9634 | /* 24295 */ // (intrinsic_wo_chain:{ *:[i32] } 8563:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBQH_R_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 9635 | /* 24295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_R_W), |
| 9636 | /* 24298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9637 | /* 24300 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 9638 | /* 24302 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 9639 | /* 24304 */ GIR_RootConstrainSelectedInstOperands, |
| 9640 | /* 24305 */ // GIR_Coverage, 537, |
| 9641 | /* 24305 */ GIR_EraseRootFromParent_Done, |
| 9642 | /* 24306 */ // Label 734: @24306 |
| 9643 | /* 24306 */ GIM_Try, /*On fail goto*//*Label 735*/ GIMT_Encode4(24351), // Rule ID 554 // |
| 9644 | /* 24311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9645 | /* 24314 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_qb), |
| 9646 | /* 24319 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9647 | /* 24322 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9648 | /* 24325 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9649 | /* 24328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9650 | /* 24332 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9651 | /* 24336 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9652 | /* 24340 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8490:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHRAV_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 9653 | /* 24340 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_QB), |
| 9654 | /* 24343 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9655 | /* 24345 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9656 | /* 24347 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 9657 | /* 24349 */ GIR_RootConstrainSelectedInstOperands, |
| 9658 | /* 24350 */ // GIR_Coverage, 554, |
| 9659 | /* 24350 */ GIR_EraseRootFromParent_Done, |
| 9660 | /* 24351 */ // Label 735: @24351 |
| 9661 | /* 24351 */ GIM_Try, /*On fail goto*//*Label 736*/ GIMT_Encode4(24396), // Rule ID 556 // |
| 9662 | /* 24356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9663 | /* 24359 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_qb), |
| 9664 | /* 24364 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 9665 | /* 24367 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 9666 | /* 24370 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9667 | /* 24373 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9668 | /* 24377 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9669 | /* 24381 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9670 | /* 24385 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8492:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHRAV_R_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 9671 | /* 24385 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_R_QB), |
| 9672 | /* 24388 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9673 | /* 24390 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9674 | /* 24392 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 9675 | /* 24394 */ GIR_RootConstrainSelectedInstOperands, |
| 9676 | /* 24395 */ // GIR_Coverage, 556, |
| 9677 | /* 24395 */ GIR_EraseRootFromParent_Done, |
| 9678 | /* 24396 */ // Label 736: @24396 |
| 9679 | /* 24396 */ GIM_Try, /*On fail goto*//*Label 737*/ GIMT_Encode4(24441), // Rule ID 557 // |
| 9680 | /* 24401 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 9681 | /* 24404 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shrl_ph), |
| 9682 | /* 24409 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 9683 | /* 24412 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 9684 | /* 24415 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 9685 | /* 24418 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9686 | /* 24422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 9687 | /* 24426 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 9688 | /* 24430 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8494:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHRLV_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 9689 | /* 24430 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRLV_PH), |
| 9690 | /* 24433 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 9691 | /* 24435 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 9692 | /* 24437 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 9693 | /* 24439 */ GIR_RootConstrainSelectedInstOperands, |
| 9694 | /* 24440 */ // GIR_Coverage, 557, |
| 9695 | /* 24440 */ GIR_EraseRootFromParent_Done, |
| 9696 | /* 24441 */ // Label 737: @24441 |
| 9697 | /* 24441 */ GIM_Try, /*On fail goto*//*Label 738*/ GIMT_Encode4(24486), // Rule ID 566 // |
| 9698 | /* 24446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9699 | /* 24449 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_add_a_b), |
| 9700 | /* 24454 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 9701 | /* 24457 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 9702 | /* 24460 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 9703 | /* 24463 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9704 | /* 24467 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9705 | /* 24471 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9706 | /* 24475 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7934:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (ADD_A_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 9707 | /* 24475 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADD_A_B), |
| 9708 | /* 24478 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9709 | /* 24480 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9710 | /* 24482 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9711 | /* 24484 */ GIR_RootConstrainSelectedInstOperands, |
| 9712 | /* 24485 */ // GIR_Coverage, 566, |
| 9713 | /* 24485 */ GIR_EraseRootFromParent_Done, |
| 9714 | /* 24486 */ // Label 738: @24486 |
| 9715 | /* 24486 */ GIM_Try, /*On fail goto*//*Label 739*/ GIMT_Encode4(24531), // Rule ID 567 // |
| 9716 | /* 24491 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9717 | /* 24494 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_add_a_h), |
| 9718 | /* 24499 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 9719 | /* 24502 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 9720 | /* 24505 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 9721 | /* 24508 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9722 | /* 24512 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9723 | /* 24516 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9724 | /* 24520 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7936:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (ADD_A_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 9725 | /* 24520 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADD_A_H), |
| 9726 | /* 24523 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9727 | /* 24525 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9728 | /* 24527 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9729 | /* 24529 */ GIR_RootConstrainSelectedInstOperands, |
| 9730 | /* 24530 */ // GIR_Coverage, 567, |
| 9731 | /* 24530 */ GIR_EraseRootFromParent_Done, |
| 9732 | /* 24531 */ // Label 739: @24531 |
| 9733 | /* 24531 */ GIM_Try, /*On fail goto*//*Label 740*/ GIMT_Encode4(24576), // Rule ID 568 // |
| 9734 | /* 24536 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9735 | /* 24539 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_add_a_w), |
| 9736 | /* 24544 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 9737 | /* 24547 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 9738 | /* 24550 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 9739 | /* 24553 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9740 | /* 24557 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9741 | /* 24561 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9742 | /* 24565 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7937:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (ADD_A_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 9743 | /* 24565 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADD_A_W), |
| 9744 | /* 24568 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9745 | /* 24570 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9746 | /* 24572 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9747 | /* 24574 */ GIR_RootConstrainSelectedInstOperands, |
| 9748 | /* 24575 */ // GIR_Coverage, 568, |
| 9749 | /* 24575 */ GIR_EraseRootFromParent_Done, |
| 9750 | /* 24576 */ // Label 740: @24576 |
| 9751 | /* 24576 */ GIM_Try, /*On fail goto*//*Label 741*/ GIMT_Encode4(24621), // Rule ID 569 // |
| 9752 | /* 24581 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9753 | /* 24584 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_add_a_d), |
| 9754 | /* 24589 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 9755 | /* 24592 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 9756 | /* 24595 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 9757 | /* 24598 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9758 | /* 24602 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9759 | /* 24606 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9760 | /* 24610 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7935:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (ADD_A_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 9761 | /* 24610 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADD_A_D), |
| 9762 | /* 24613 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9763 | /* 24615 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9764 | /* 24617 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9765 | /* 24619 */ GIR_RootConstrainSelectedInstOperands, |
| 9766 | /* 24620 */ // GIR_Coverage, 569, |
| 9767 | /* 24620 */ GIR_EraseRootFromParent_Done, |
| 9768 | /* 24621 */ // Label 741: @24621 |
| 9769 | /* 24621 */ GIM_Try, /*On fail goto*//*Label 742*/ GIMT_Encode4(24666), // Rule ID 570 // |
| 9770 | /* 24626 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9771 | /* 24629 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_a_b), |
| 9772 | /* 24634 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 9773 | /* 24637 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 9774 | /* 24640 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 9775 | /* 24643 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9776 | /* 24647 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9777 | /* 24651 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9778 | /* 24655 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7945:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (ADDS_A_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 9779 | /* 24655 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_A_B), |
| 9780 | /* 24658 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9781 | /* 24660 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9782 | /* 24662 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9783 | /* 24664 */ GIR_RootConstrainSelectedInstOperands, |
| 9784 | /* 24665 */ // GIR_Coverage, 570, |
| 9785 | /* 24665 */ GIR_EraseRootFromParent_Done, |
| 9786 | /* 24666 */ // Label 742: @24666 |
| 9787 | /* 24666 */ GIM_Try, /*On fail goto*//*Label 743*/ GIMT_Encode4(24711), // Rule ID 571 // |
| 9788 | /* 24671 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9789 | /* 24674 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_a_h), |
| 9790 | /* 24679 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 9791 | /* 24682 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 9792 | /* 24685 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 9793 | /* 24688 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9794 | /* 24692 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9795 | /* 24696 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9796 | /* 24700 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7947:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (ADDS_A_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 9797 | /* 24700 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_A_H), |
| 9798 | /* 24703 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9799 | /* 24705 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9800 | /* 24707 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9801 | /* 24709 */ GIR_RootConstrainSelectedInstOperands, |
| 9802 | /* 24710 */ // GIR_Coverage, 571, |
| 9803 | /* 24710 */ GIR_EraseRootFromParent_Done, |
| 9804 | /* 24711 */ // Label 743: @24711 |
| 9805 | /* 24711 */ GIM_Try, /*On fail goto*//*Label 744*/ GIMT_Encode4(24756), // Rule ID 572 // |
| 9806 | /* 24716 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9807 | /* 24719 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_a_w), |
| 9808 | /* 24724 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 9809 | /* 24727 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 9810 | /* 24730 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 9811 | /* 24733 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9812 | /* 24737 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9813 | /* 24741 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9814 | /* 24745 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7948:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (ADDS_A_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 9815 | /* 24745 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_A_W), |
| 9816 | /* 24748 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9817 | /* 24750 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9818 | /* 24752 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9819 | /* 24754 */ GIR_RootConstrainSelectedInstOperands, |
| 9820 | /* 24755 */ // GIR_Coverage, 572, |
| 9821 | /* 24755 */ GIR_EraseRootFromParent_Done, |
| 9822 | /* 24756 */ // Label 744: @24756 |
| 9823 | /* 24756 */ GIM_Try, /*On fail goto*//*Label 745*/ GIMT_Encode4(24801), // Rule ID 573 // |
| 9824 | /* 24761 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9825 | /* 24764 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_a_d), |
| 9826 | /* 24769 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 9827 | /* 24772 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 9828 | /* 24775 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 9829 | /* 24778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9830 | /* 24782 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9831 | /* 24786 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9832 | /* 24790 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7946:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (ADDS_A_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 9833 | /* 24790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_A_D), |
| 9834 | /* 24793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9835 | /* 24795 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9836 | /* 24797 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9837 | /* 24799 */ GIR_RootConstrainSelectedInstOperands, |
| 9838 | /* 24800 */ // GIR_Coverage, 573, |
| 9839 | /* 24800 */ GIR_EraseRootFromParent_Done, |
| 9840 | /* 24801 */ // Label 745: @24801 |
| 9841 | /* 24801 */ GIM_Try, /*On fail goto*//*Label 746*/ GIMT_Encode4(24846), // Rule ID 574 // |
| 9842 | /* 24806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9843 | /* 24809 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_s_b), |
| 9844 | /* 24814 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 9845 | /* 24817 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 9846 | /* 24820 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 9847 | /* 24823 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9848 | /* 24827 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9849 | /* 24831 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9850 | /* 24835 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7949:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (ADDS_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 9851 | /* 24835 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_S_B), |
| 9852 | /* 24838 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9853 | /* 24840 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9854 | /* 24842 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9855 | /* 24844 */ GIR_RootConstrainSelectedInstOperands, |
| 9856 | /* 24845 */ // GIR_Coverage, 574, |
| 9857 | /* 24845 */ GIR_EraseRootFromParent_Done, |
| 9858 | /* 24846 */ // Label 746: @24846 |
| 9859 | /* 24846 */ GIM_Try, /*On fail goto*//*Label 747*/ GIMT_Encode4(24891), // Rule ID 575 // |
| 9860 | /* 24851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9861 | /* 24854 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_s_h), |
| 9862 | /* 24859 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 9863 | /* 24862 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 9864 | /* 24865 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 9865 | /* 24868 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9866 | /* 24872 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9867 | /* 24876 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9868 | /* 24880 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7951:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (ADDS_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 9869 | /* 24880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_S_H), |
| 9870 | /* 24883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9871 | /* 24885 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9872 | /* 24887 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9873 | /* 24889 */ GIR_RootConstrainSelectedInstOperands, |
| 9874 | /* 24890 */ // GIR_Coverage, 575, |
| 9875 | /* 24890 */ GIR_EraseRootFromParent_Done, |
| 9876 | /* 24891 */ // Label 747: @24891 |
| 9877 | /* 24891 */ GIM_Try, /*On fail goto*//*Label 748*/ GIMT_Encode4(24936), // Rule ID 576 // |
| 9878 | /* 24896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9879 | /* 24899 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_s_w), |
| 9880 | /* 24904 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 9881 | /* 24907 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 9882 | /* 24910 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 9883 | /* 24913 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9884 | /* 24917 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9885 | /* 24921 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9886 | /* 24925 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7952:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (ADDS_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 9887 | /* 24925 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_S_W), |
| 9888 | /* 24928 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9889 | /* 24930 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9890 | /* 24932 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9891 | /* 24934 */ GIR_RootConstrainSelectedInstOperands, |
| 9892 | /* 24935 */ // GIR_Coverage, 576, |
| 9893 | /* 24935 */ GIR_EraseRootFromParent_Done, |
| 9894 | /* 24936 */ // Label 748: @24936 |
| 9895 | /* 24936 */ GIM_Try, /*On fail goto*//*Label 749*/ GIMT_Encode4(24981), // Rule ID 577 // |
| 9896 | /* 24941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9897 | /* 24944 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_s_d), |
| 9898 | /* 24949 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 9899 | /* 24952 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 9900 | /* 24955 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 9901 | /* 24958 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9902 | /* 24962 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9903 | /* 24966 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9904 | /* 24970 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7950:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (ADDS_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 9905 | /* 24970 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_S_D), |
| 9906 | /* 24973 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9907 | /* 24975 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9908 | /* 24977 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9909 | /* 24979 */ GIR_RootConstrainSelectedInstOperands, |
| 9910 | /* 24980 */ // GIR_Coverage, 577, |
| 9911 | /* 24980 */ GIR_EraseRootFromParent_Done, |
| 9912 | /* 24981 */ // Label 749: @24981 |
| 9913 | /* 24981 */ GIM_Try, /*On fail goto*//*Label 750*/ GIMT_Encode4(25026), // Rule ID 578 // |
| 9914 | /* 24986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9915 | /* 24989 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_u_b), |
| 9916 | /* 24994 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 9917 | /* 24997 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 9918 | /* 25000 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 9919 | /* 25003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9920 | /* 25007 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9921 | /* 25011 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9922 | /* 25015 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7953:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (ADDS_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 9923 | /* 25015 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_U_B), |
| 9924 | /* 25018 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9925 | /* 25020 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9926 | /* 25022 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9927 | /* 25024 */ GIR_RootConstrainSelectedInstOperands, |
| 9928 | /* 25025 */ // GIR_Coverage, 578, |
| 9929 | /* 25025 */ GIR_EraseRootFromParent_Done, |
| 9930 | /* 25026 */ // Label 750: @25026 |
| 9931 | /* 25026 */ GIM_Try, /*On fail goto*//*Label 751*/ GIMT_Encode4(25071), // Rule ID 579 // |
| 9932 | /* 25031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9933 | /* 25034 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_u_h), |
| 9934 | /* 25039 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 9935 | /* 25042 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 9936 | /* 25045 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 9937 | /* 25048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9938 | /* 25052 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9939 | /* 25056 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 9940 | /* 25060 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7955:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (ADDS_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 9941 | /* 25060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_U_H), |
| 9942 | /* 25063 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9943 | /* 25065 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9944 | /* 25067 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9945 | /* 25069 */ GIR_RootConstrainSelectedInstOperands, |
| 9946 | /* 25070 */ // GIR_Coverage, 579, |
| 9947 | /* 25070 */ GIR_EraseRootFromParent_Done, |
| 9948 | /* 25071 */ // Label 751: @25071 |
| 9949 | /* 25071 */ GIM_Try, /*On fail goto*//*Label 752*/ GIMT_Encode4(25116), // Rule ID 580 // |
| 9950 | /* 25076 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9951 | /* 25079 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_u_w), |
| 9952 | /* 25084 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 9953 | /* 25087 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 9954 | /* 25090 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 9955 | /* 25093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9956 | /* 25097 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9957 | /* 25101 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 9958 | /* 25105 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7956:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (ADDS_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 9959 | /* 25105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_U_W), |
| 9960 | /* 25108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9961 | /* 25110 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9962 | /* 25112 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9963 | /* 25114 */ GIR_RootConstrainSelectedInstOperands, |
| 9964 | /* 25115 */ // GIR_Coverage, 580, |
| 9965 | /* 25115 */ GIR_EraseRootFromParent_Done, |
| 9966 | /* 25116 */ // Label 752: @25116 |
| 9967 | /* 25116 */ GIM_Try, /*On fail goto*//*Label 753*/ GIMT_Encode4(25161), // Rule ID 581 // |
| 9968 | /* 25121 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9969 | /* 25124 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adds_u_d), |
| 9970 | /* 25129 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 9971 | /* 25132 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 9972 | /* 25135 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 9973 | /* 25138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9974 | /* 25142 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9975 | /* 25146 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 9976 | /* 25150 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7954:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (ADDS_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 9977 | /* 25150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDS_U_D), |
| 9978 | /* 25153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9979 | /* 25155 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9980 | /* 25157 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9981 | /* 25159 */ GIR_RootConstrainSelectedInstOperands, |
| 9982 | /* 25160 */ // GIR_Coverage, 581, |
| 9983 | /* 25160 */ GIR_EraseRootFromParent_Done, |
| 9984 | /* 25161 */ // Label 753: @25161 |
| 9985 | /* 25161 */ GIM_Try, /*On fail goto*//*Label 754*/ GIMT_Encode4(25206), // Rule ID 595 // |
| 9986 | /* 25166 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 9987 | /* 25169 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_s_b), |
| 9988 | /* 25174 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 9989 | /* 25177 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 9990 | /* 25180 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 9991 | /* 25183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9992 | /* 25187 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9993 | /* 25191 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 9994 | /* 25195 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7976:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (ASUB_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 9995 | /* 25195 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_S_B), |
| 9996 | /* 25198 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 9997 | /* 25200 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 9998 | /* 25202 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 9999 | /* 25204 */ GIR_RootConstrainSelectedInstOperands, |
| 10000 | /* 25205 */ // GIR_Coverage, 595, |
| 10001 | /* 25205 */ GIR_EraseRootFromParent_Done, |
| 10002 | /* 25206 */ // Label 754: @25206 |
| 10003 | /* 25206 */ GIM_Try, /*On fail goto*//*Label 755*/ GIMT_Encode4(25251), // Rule ID 596 // |
| 10004 | /* 25211 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10005 | /* 25214 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_s_h), |
| 10006 | /* 25219 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10007 | /* 25222 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10008 | /* 25225 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10009 | /* 25228 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10010 | /* 25232 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10011 | /* 25236 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10012 | /* 25240 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7978:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (ASUB_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10013 | /* 25240 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_S_H), |
| 10014 | /* 25243 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10015 | /* 25245 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10016 | /* 25247 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10017 | /* 25249 */ GIR_RootConstrainSelectedInstOperands, |
| 10018 | /* 25250 */ // GIR_Coverage, 596, |
| 10019 | /* 25250 */ GIR_EraseRootFromParent_Done, |
| 10020 | /* 25251 */ // Label 755: @25251 |
| 10021 | /* 25251 */ GIM_Try, /*On fail goto*//*Label 756*/ GIMT_Encode4(25296), // Rule ID 597 // |
| 10022 | /* 25256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10023 | /* 25259 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_s_w), |
| 10024 | /* 25264 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10025 | /* 25267 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10026 | /* 25270 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10027 | /* 25273 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10028 | /* 25277 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10029 | /* 25281 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10030 | /* 25285 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7979:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (ASUB_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10031 | /* 25285 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_S_W), |
| 10032 | /* 25288 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10033 | /* 25290 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10034 | /* 25292 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10035 | /* 25294 */ GIR_RootConstrainSelectedInstOperands, |
| 10036 | /* 25295 */ // GIR_Coverage, 597, |
| 10037 | /* 25295 */ GIR_EraseRootFromParent_Done, |
| 10038 | /* 25296 */ // Label 756: @25296 |
| 10039 | /* 25296 */ GIM_Try, /*On fail goto*//*Label 757*/ GIMT_Encode4(25341), // Rule ID 598 // |
| 10040 | /* 25301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10041 | /* 25304 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_s_d), |
| 10042 | /* 25309 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10043 | /* 25312 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10044 | /* 25315 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10045 | /* 25318 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10046 | /* 25322 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10047 | /* 25326 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10048 | /* 25330 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7977:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (ASUB_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 10049 | /* 25330 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_S_D), |
| 10050 | /* 25333 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10051 | /* 25335 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10052 | /* 25337 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10053 | /* 25339 */ GIR_RootConstrainSelectedInstOperands, |
| 10054 | /* 25340 */ // GIR_Coverage, 598, |
| 10055 | /* 25340 */ GIR_EraseRootFromParent_Done, |
| 10056 | /* 25341 */ // Label 757: @25341 |
| 10057 | /* 25341 */ GIM_Try, /*On fail goto*//*Label 758*/ GIMT_Encode4(25386), // Rule ID 599 // |
| 10058 | /* 25346 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10059 | /* 25349 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_u_b), |
| 10060 | /* 25354 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 10061 | /* 25357 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 10062 | /* 25360 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 10063 | /* 25363 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10064 | /* 25367 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10065 | /* 25371 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10066 | /* 25375 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7980:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (ASUB_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 10067 | /* 25375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_U_B), |
| 10068 | /* 25378 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10069 | /* 25380 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10070 | /* 25382 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10071 | /* 25384 */ GIR_RootConstrainSelectedInstOperands, |
| 10072 | /* 25385 */ // GIR_Coverage, 599, |
| 10073 | /* 25385 */ GIR_EraseRootFromParent_Done, |
| 10074 | /* 25386 */ // Label 758: @25386 |
| 10075 | /* 25386 */ GIM_Try, /*On fail goto*//*Label 759*/ GIMT_Encode4(25431), // Rule ID 600 // |
| 10076 | /* 25391 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10077 | /* 25394 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_u_h), |
| 10078 | /* 25399 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10079 | /* 25402 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10080 | /* 25405 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10081 | /* 25408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10082 | /* 25412 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10083 | /* 25416 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10084 | /* 25420 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7982:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (ASUB_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10085 | /* 25420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_U_H), |
| 10086 | /* 25423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10087 | /* 25425 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10088 | /* 25427 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10089 | /* 25429 */ GIR_RootConstrainSelectedInstOperands, |
| 10090 | /* 25430 */ // GIR_Coverage, 600, |
| 10091 | /* 25430 */ GIR_EraseRootFromParent_Done, |
| 10092 | /* 25431 */ // Label 759: @25431 |
| 10093 | /* 25431 */ GIM_Try, /*On fail goto*//*Label 760*/ GIMT_Encode4(25476), // Rule ID 601 // |
| 10094 | /* 25436 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10095 | /* 25439 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_u_w), |
| 10096 | /* 25444 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10097 | /* 25447 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10098 | /* 25450 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10099 | /* 25453 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10100 | /* 25457 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10101 | /* 25461 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10102 | /* 25465 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7983:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (ASUB_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10103 | /* 25465 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_U_W), |
| 10104 | /* 25468 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10105 | /* 25470 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10106 | /* 25472 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10107 | /* 25474 */ GIR_RootConstrainSelectedInstOperands, |
| 10108 | /* 25475 */ // GIR_Coverage, 601, |
| 10109 | /* 25475 */ GIR_EraseRootFromParent_Done, |
| 10110 | /* 25476 */ // Label 760: @25476 |
| 10111 | /* 25476 */ GIM_Try, /*On fail goto*//*Label 761*/ GIMT_Encode4(25521), // Rule ID 602 // |
| 10112 | /* 25481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10113 | /* 25484 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_asub_u_d), |
| 10114 | /* 25489 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10115 | /* 25492 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10116 | /* 25495 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10117 | /* 25498 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10118 | /* 25502 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10119 | /* 25506 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10120 | /* 25510 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7981:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (ASUB_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 10121 | /* 25510 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ASUB_U_D), |
| 10122 | /* 25513 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10123 | /* 25515 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10124 | /* 25517 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10125 | /* 25519 */ GIR_RootConstrainSelectedInstOperands, |
| 10126 | /* 25520 */ // GIR_Coverage, 602, |
| 10127 | /* 25520 */ GIR_EraseRootFromParent_Done, |
| 10128 | /* 25521 */ // Label 761: @25521 |
| 10129 | /* 25521 */ GIM_Try, /*On fail goto*//*Label 762*/ GIMT_Encode4(25566), // Rule ID 603 // |
| 10130 | /* 25526 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10131 | /* 25529 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_s_b), |
| 10132 | /* 25534 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 10133 | /* 25537 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 10134 | /* 25540 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 10135 | /* 25543 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10136 | /* 25547 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10137 | /* 25551 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10138 | /* 25555 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7984:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (AVE_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 10139 | /* 25555 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_S_B), |
| 10140 | /* 25558 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10141 | /* 25560 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10142 | /* 25562 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10143 | /* 25564 */ GIR_RootConstrainSelectedInstOperands, |
| 10144 | /* 25565 */ // GIR_Coverage, 603, |
| 10145 | /* 25565 */ GIR_EraseRootFromParent_Done, |
| 10146 | /* 25566 */ // Label 762: @25566 |
| 10147 | /* 25566 */ GIM_Try, /*On fail goto*//*Label 763*/ GIMT_Encode4(25611), // Rule ID 604 // |
| 10148 | /* 25571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10149 | /* 25574 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_s_h), |
| 10150 | /* 25579 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10151 | /* 25582 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10152 | /* 25585 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10153 | /* 25588 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10154 | /* 25592 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10155 | /* 25596 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10156 | /* 25600 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7986:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (AVE_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10157 | /* 25600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_S_H), |
| 10158 | /* 25603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10159 | /* 25605 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10160 | /* 25607 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10161 | /* 25609 */ GIR_RootConstrainSelectedInstOperands, |
| 10162 | /* 25610 */ // GIR_Coverage, 604, |
| 10163 | /* 25610 */ GIR_EraseRootFromParent_Done, |
| 10164 | /* 25611 */ // Label 763: @25611 |
| 10165 | /* 25611 */ GIM_Try, /*On fail goto*//*Label 764*/ GIMT_Encode4(25656), // Rule ID 605 // |
| 10166 | /* 25616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10167 | /* 25619 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_s_w), |
| 10168 | /* 25624 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10169 | /* 25627 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10170 | /* 25630 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10171 | /* 25633 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10172 | /* 25637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10173 | /* 25641 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10174 | /* 25645 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7987:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (AVE_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10175 | /* 25645 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_S_W), |
| 10176 | /* 25648 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10177 | /* 25650 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10178 | /* 25652 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10179 | /* 25654 */ GIR_RootConstrainSelectedInstOperands, |
| 10180 | /* 25655 */ // GIR_Coverage, 605, |
| 10181 | /* 25655 */ GIR_EraseRootFromParent_Done, |
| 10182 | /* 25656 */ // Label 764: @25656 |
| 10183 | /* 25656 */ GIM_Try, /*On fail goto*//*Label 765*/ GIMT_Encode4(25701), // Rule ID 606 // |
| 10184 | /* 25661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10185 | /* 25664 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_s_d), |
| 10186 | /* 25669 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10187 | /* 25672 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10188 | /* 25675 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10189 | /* 25678 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10190 | /* 25682 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10191 | /* 25686 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10192 | /* 25690 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7985:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (AVE_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 10193 | /* 25690 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_S_D), |
| 10194 | /* 25693 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10195 | /* 25695 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10196 | /* 25697 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10197 | /* 25699 */ GIR_RootConstrainSelectedInstOperands, |
| 10198 | /* 25700 */ // GIR_Coverage, 606, |
| 10199 | /* 25700 */ GIR_EraseRootFromParent_Done, |
| 10200 | /* 25701 */ // Label 765: @25701 |
| 10201 | /* 25701 */ GIM_Try, /*On fail goto*//*Label 766*/ GIMT_Encode4(25746), // Rule ID 607 // |
| 10202 | /* 25706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10203 | /* 25709 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_u_b), |
| 10204 | /* 25714 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 10205 | /* 25717 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 10206 | /* 25720 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 10207 | /* 25723 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10208 | /* 25727 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10209 | /* 25731 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10210 | /* 25735 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7988:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (AVE_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 10211 | /* 25735 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_U_B), |
| 10212 | /* 25738 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10213 | /* 25740 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10214 | /* 25742 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10215 | /* 25744 */ GIR_RootConstrainSelectedInstOperands, |
| 10216 | /* 25745 */ // GIR_Coverage, 607, |
| 10217 | /* 25745 */ GIR_EraseRootFromParent_Done, |
| 10218 | /* 25746 */ // Label 766: @25746 |
| 10219 | /* 25746 */ GIM_Try, /*On fail goto*//*Label 767*/ GIMT_Encode4(25791), // Rule ID 608 // |
| 10220 | /* 25751 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10221 | /* 25754 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_u_h), |
| 10222 | /* 25759 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10223 | /* 25762 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10224 | /* 25765 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10225 | /* 25768 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10226 | /* 25772 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10227 | /* 25776 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10228 | /* 25780 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7990:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (AVE_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10229 | /* 25780 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_U_H), |
| 10230 | /* 25783 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10231 | /* 25785 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10232 | /* 25787 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10233 | /* 25789 */ GIR_RootConstrainSelectedInstOperands, |
| 10234 | /* 25790 */ // GIR_Coverage, 608, |
| 10235 | /* 25790 */ GIR_EraseRootFromParent_Done, |
| 10236 | /* 25791 */ // Label 767: @25791 |
| 10237 | /* 25791 */ GIM_Try, /*On fail goto*//*Label 768*/ GIMT_Encode4(25836), // Rule ID 609 // |
| 10238 | /* 25796 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10239 | /* 25799 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_u_w), |
| 10240 | /* 25804 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10241 | /* 25807 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10242 | /* 25810 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10243 | /* 25813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10244 | /* 25817 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10245 | /* 25821 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10246 | /* 25825 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7991:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (AVE_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10247 | /* 25825 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_U_W), |
| 10248 | /* 25828 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10249 | /* 25830 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10250 | /* 25832 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10251 | /* 25834 */ GIR_RootConstrainSelectedInstOperands, |
| 10252 | /* 25835 */ // GIR_Coverage, 609, |
| 10253 | /* 25835 */ GIR_EraseRootFromParent_Done, |
| 10254 | /* 25836 */ // Label 768: @25836 |
| 10255 | /* 25836 */ GIM_Try, /*On fail goto*//*Label 769*/ GIMT_Encode4(25881), // Rule ID 610 // |
| 10256 | /* 25841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10257 | /* 25844 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ave_u_d), |
| 10258 | /* 25849 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10259 | /* 25852 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10260 | /* 25855 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10261 | /* 25858 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10262 | /* 25862 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10263 | /* 25866 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10264 | /* 25870 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7989:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (AVE_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 10265 | /* 25870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVE_U_D), |
| 10266 | /* 25873 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10267 | /* 25875 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10268 | /* 25877 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10269 | /* 25879 */ GIR_RootConstrainSelectedInstOperands, |
| 10270 | /* 25880 */ // GIR_Coverage, 610, |
| 10271 | /* 25880 */ GIR_EraseRootFromParent_Done, |
| 10272 | /* 25881 */ // Label 769: @25881 |
| 10273 | /* 25881 */ GIM_Try, /*On fail goto*//*Label 770*/ GIMT_Encode4(25926), // Rule ID 611 // |
| 10274 | /* 25886 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10275 | /* 25889 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_s_b), |
| 10276 | /* 25894 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 10277 | /* 25897 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 10278 | /* 25900 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 10279 | /* 25903 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10280 | /* 25907 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10281 | /* 25911 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10282 | /* 25915 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7992:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (AVER_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 10283 | /* 25915 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_S_B), |
| 10284 | /* 25918 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10285 | /* 25920 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10286 | /* 25922 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10287 | /* 25924 */ GIR_RootConstrainSelectedInstOperands, |
| 10288 | /* 25925 */ // GIR_Coverage, 611, |
| 10289 | /* 25925 */ GIR_EraseRootFromParent_Done, |
| 10290 | /* 25926 */ // Label 770: @25926 |
| 10291 | /* 25926 */ GIM_Try, /*On fail goto*//*Label 771*/ GIMT_Encode4(25971), // Rule ID 612 // |
| 10292 | /* 25931 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10293 | /* 25934 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_s_h), |
| 10294 | /* 25939 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10295 | /* 25942 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10296 | /* 25945 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10297 | /* 25948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10298 | /* 25952 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10299 | /* 25956 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10300 | /* 25960 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7994:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (AVER_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10301 | /* 25960 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_S_H), |
| 10302 | /* 25963 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10303 | /* 25965 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10304 | /* 25967 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10305 | /* 25969 */ GIR_RootConstrainSelectedInstOperands, |
| 10306 | /* 25970 */ // GIR_Coverage, 612, |
| 10307 | /* 25970 */ GIR_EraseRootFromParent_Done, |
| 10308 | /* 25971 */ // Label 771: @25971 |
| 10309 | /* 25971 */ GIM_Try, /*On fail goto*//*Label 772*/ GIMT_Encode4(26016), // Rule ID 613 // |
| 10310 | /* 25976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10311 | /* 25979 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_s_w), |
| 10312 | /* 25984 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10313 | /* 25987 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10314 | /* 25990 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10315 | /* 25993 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10316 | /* 25997 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10317 | /* 26001 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10318 | /* 26005 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7995:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (AVER_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10319 | /* 26005 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_S_W), |
| 10320 | /* 26008 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10321 | /* 26010 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10322 | /* 26012 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10323 | /* 26014 */ GIR_RootConstrainSelectedInstOperands, |
| 10324 | /* 26015 */ // GIR_Coverage, 613, |
| 10325 | /* 26015 */ GIR_EraseRootFromParent_Done, |
| 10326 | /* 26016 */ // Label 772: @26016 |
| 10327 | /* 26016 */ GIM_Try, /*On fail goto*//*Label 773*/ GIMT_Encode4(26061), // Rule ID 614 // |
| 10328 | /* 26021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10329 | /* 26024 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_s_d), |
| 10330 | /* 26029 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10331 | /* 26032 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10332 | /* 26035 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10333 | /* 26038 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10334 | /* 26042 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10335 | /* 26046 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10336 | /* 26050 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7993:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (AVER_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 10337 | /* 26050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_S_D), |
| 10338 | /* 26053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10339 | /* 26055 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10340 | /* 26057 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10341 | /* 26059 */ GIR_RootConstrainSelectedInstOperands, |
| 10342 | /* 26060 */ // GIR_Coverage, 614, |
| 10343 | /* 26060 */ GIR_EraseRootFromParent_Done, |
| 10344 | /* 26061 */ // Label 773: @26061 |
| 10345 | /* 26061 */ GIM_Try, /*On fail goto*//*Label 774*/ GIMT_Encode4(26106), // Rule ID 615 // |
| 10346 | /* 26066 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10347 | /* 26069 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_u_b), |
| 10348 | /* 26074 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 10349 | /* 26077 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 10350 | /* 26080 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 10351 | /* 26083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10352 | /* 26087 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10353 | /* 26091 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10354 | /* 26095 */ // (intrinsic_wo_chain:{ *:[v16i8] } 7996:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (AVER_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 10355 | /* 26095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_U_B), |
| 10356 | /* 26098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10357 | /* 26100 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10358 | /* 26102 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10359 | /* 26104 */ GIR_RootConstrainSelectedInstOperands, |
| 10360 | /* 26105 */ // GIR_Coverage, 615, |
| 10361 | /* 26105 */ GIR_EraseRootFromParent_Done, |
| 10362 | /* 26106 */ // Label 774: @26106 |
| 10363 | /* 26106 */ GIM_Try, /*On fail goto*//*Label 775*/ GIMT_Encode4(26151), // Rule ID 616 // |
| 10364 | /* 26111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10365 | /* 26114 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_u_h), |
| 10366 | /* 26119 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10367 | /* 26122 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10368 | /* 26125 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10369 | /* 26128 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10370 | /* 26132 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10371 | /* 26136 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10372 | /* 26140 */ // (intrinsic_wo_chain:{ *:[v8i16] } 7998:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (AVER_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10373 | /* 26140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_U_H), |
| 10374 | /* 26143 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10375 | /* 26145 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10376 | /* 26147 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10377 | /* 26149 */ GIR_RootConstrainSelectedInstOperands, |
| 10378 | /* 26150 */ // GIR_Coverage, 616, |
| 10379 | /* 26150 */ GIR_EraseRootFromParent_Done, |
| 10380 | /* 26151 */ // Label 775: @26151 |
| 10381 | /* 26151 */ GIM_Try, /*On fail goto*//*Label 776*/ GIMT_Encode4(26196), // Rule ID 617 // |
| 10382 | /* 26156 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10383 | /* 26159 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_u_w), |
| 10384 | /* 26164 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10385 | /* 26167 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10386 | /* 26170 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10387 | /* 26173 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10388 | /* 26177 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10389 | /* 26181 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10390 | /* 26185 */ // (intrinsic_wo_chain:{ *:[v4i32] } 7999:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (AVER_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10391 | /* 26185 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_U_W), |
| 10392 | /* 26188 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10393 | /* 26190 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10394 | /* 26192 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10395 | /* 26194 */ GIR_RootConstrainSelectedInstOperands, |
| 10396 | /* 26195 */ // GIR_Coverage, 617, |
| 10397 | /* 26195 */ GIR_EraseRootFromParent_Done, |
| 10398 | /* 26196 */ // Label 776: @26196 |
| 10399 | /* 26196 */ GIM_Try, /*On fail goto*//*Label 777*/ GIMT_Encode4(26241), // Rule ID 618 // |
| 10400 | /* 26201 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10401 | /* 26204 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_aver_u_d), |
| 10402 | /* 26209 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10403 | /* 26212 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10404 | /* 26215 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10405 | /* 26218 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10406 | /* 26222 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10407 | /* 26226 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10408 | /* 26230 */ // (intrinsic_wo_chain:{ *:[v2i64] } 7997:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (AVER_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 10409 | /* 26230 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::AVER_U_D), |
| 10410 | /* 26233 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10411 | /* 26235 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10412 | /* 26237 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10413 | /* 26239 */ GIR_RootConstrainSelectedInstOperands, |
| 10414 | /* 26240 */ // GIR_Coverage, 618, |
| 10415 | /* 26240 */ GIR_EraseRootFromParent_Done, |
| 10416 | /* 26241 */ // Label 777: @26241 |
| 10417 | /* 26241 */ GIM_Try, /*On fail goto*//*Label 778*/ GIMT_Encode4(26286), // Rule ID 727 // |
| 10418 | /* 26246 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10419 | /* 26249 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dotp_s_h), |
| 10420 | /* 26254 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10421 | /* 26257 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 10422 | /* 26260 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 10423 | /* 26263 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10424 | /* 26267 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10425 | /* 26271 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10426 | /* 26275 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8131:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DOTP_S_H:{ *:[v8i16] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 10427 | /* 26275 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DOTP_S_H), |
| 10428 | /* 26278 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10429 | /* 26280 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10430 | /* 26282 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10431 | /* 26284 */ GIR_RootConstrainSelectedInstOperands, |
| 10432 | /* 26285 */ // GIR_Coverage, 727, |
| 10433 | /* 26285 */ GIR_EraseRootFromParent_Done, |
| 10434 | /* 26286 */ // Label 778: @26286 |
| 10435 | /* 26286 */ GIM_Try, /*On fail goto*//*Label 779*/ GIMT_Encode4(26331), // Rule ID 728 // |
| 10436 | /* 26291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10437 | /* 26294 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dotp_s_w), |
| 10438 | /* 26299 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10439 | /* 26302 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10440 | /* 26305 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10441 | /* 26308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10442 | /* 26312 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10443 | /* 26316 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10444 | /* 26320 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8132:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DOTP_S_W:{ *:[v4i32] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10445 | /* 26320 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DOTP_S_W), |
| 10446 | /* 26323 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10447 | /* 26325 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10448 | /* 26327 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10449 | /* 26329 */ GIR_RootConstrainSelectedInstOperands, |
| 10450 | /* 26330 */ // GIR_Coverage, 728, |
| 10451 | /* 26330 */ GIR_EraseRootFromParent_Done, |
| 10452 | /* 26331 */ // Label 779: @26331 |
| 10453 | /* 26331 */ GIM_Try, /*On fail goto*//*Label 780*/ GIMT_Encode4(26376), // Rule ID 729 // |
| 10454 | /* 26336 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10455 | /* 26339 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dotp_s_d), |
| 10456 | /* 26344 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10457 | /* 26347 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10458 | /* 26350 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10459 | /* 26353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10460 | /* 26357 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10461 | /* 26361 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10462 | /* 26365 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8130:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DOTP_S_D:{ *:[v2i64] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10463 | /* 26365 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DOTP_S_D), |
| 10464 | /* 26368 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10465 | /* 26370 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10466 | /* 26372 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10467 | /* 26374 */ GIR_RootConstrainSelectedInstOperands, |
| 10468 | /* 26375 */ // GIR_Coverage, 729, |
| 10469 | /* 26375 */ GIR_EraseRootFromParent_Done, |
| 10470 | /* 26376 */ // Label 780: @26376 |
| 10471 | /* 26376 */ GIM_Try, /*On fail goto*//*Label 781*/ GIMT_Encode4(26421), // Rule ID 730 // |
| 10472 | /* 26381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10473 | /* 26384 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dotp_u_h), |
| 10474 | /* 26389 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10475 | /* 26392 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 10476 | /* 26395 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 10477 | /* 26398 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10478 | /* 26402 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10479 | /* 26406 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 10480 | /* 26410 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8134:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DOTP_U_H:{ *:[v8i16] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 10481 | /* 26410 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DOTP_U_H), |
| 10482 | /* 26413 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10483 | /* 26415 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10484 | /* 26417 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10485 | /* 26419 */ GIR_RootConstrainSelectedInstOperands, |
| 10486 | /* 26420 */ // GIR_Coverage, 730, |
| 10487 | /* 26420 */ GIR_EraseRootFromParent_Done, |
| 10488 | /* 26421 */ // Label 781: @26421 |
| 10489 | /* 26421 */ GIM_Try, /*On fail goto*//*Label 782*/ GIMT_Encode4(26466), // Rule ID 731 // |
| 10490 | /* 26426 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10491 | /* 26429 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dotp_u_w), |
| 10492 | /* 26434 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10493 | /* 26437 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 10494 | /* 26440 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 10495 | /* 26443 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10496 | /* 26447 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10497 | /* 26451 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10498 | /* 26455 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8135:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DOTP_U_W:{ *:[v4i32] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 10499 | /* 26455 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DOTP_U_W), |
| 10500 | /* 26458 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10501 | /* 26460 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10502 | /* 26462 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10503 | /* 26464 */ GIR_RootConstrainSelectedInstOperands, |
| 10504 | /* 26465 */ // GIR_Coverage, 731, |
| 10505 | /* 26465 */ GIR_EraseRootFromParent_Done, |
| 10506 | /* 26466 */ // Label 782: @26466 |
| 10507 | /* 26466 */ GIM_Try, /*On fail goto*//*Label 783*/ GIMT_Encode4(26511), // Rule ID 732 // |
| 10508 | /* 26471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10509 | /* 26474 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dotp_u_d), |
| 10510 | /* 26479 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10511 | /* 26482 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10512 | /* 26485 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10513 | /* 26488 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10514 | /* 26492 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10515 | /* 26496 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10516 | /* 26500 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8133:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DOTP_U_D:{ *:[v2i64] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 10517 | /* 26500 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DOTP_U_D), |
| 10518 | /* 26503 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10519 | /* 26505 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10520 | /* 26507 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10521 | /* 26509 */ GIR_RootConstrainSelectedInstOperands, |
| 10522 | /* 26510 */ // GIR_Coverage, 732, |
| 10523 | /* 26510 */ GIR_EraseRootFromParent_Done, |
| 10524 | /* 26511 */ // Label 783: @26511 |
| 10525 | /* 26511 */ GIM_Try, /*On fail goto*//*Label 784*/ GIMT_Encode4(26556), // Rule ID 747 // |
| 10526 | /* 26516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10527 | /* 26519 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fcaf_w), |
| 10528 | /* 26524 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10529 | /* 26527 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10530 | /* 26530 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10531 | /* 26533 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10532 | /* 26537 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10533 | /* 26541 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10534 | /* 26545 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8173:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FCAF_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10535 | /* 26545 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FCAF_W), |
| 10536 | /* 26548 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10537 | /* 26550 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10538 | /* 26552 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10539 | /* 26554 */ GIR_RootConstrainSelectedInstOperands, |
| 10540 | /* 26555 */ // GIR_Coverage, 747, |
| 10541 | /* 26555 */ GIR_EraseRootFromParent_Done, |
| 10542 | /* 26556 */ // Label 784: @26556 |
| 10543 | /* 26556 */ GIM_Try, /*On fail goto*//*Label 785*/ GIMT_Encode4(26601), // Rule ID 748 // |
| 10544 | /* 26561 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10545 | /* 26564 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fcaf_d), |
| 10546 | /* 26569 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10547 | /* 26572 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10548 | /* 26575 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10549 | /* 26578 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10550 | /* 26582 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10551 | /* 26586 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10552 | /* 26590 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8172:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FCAF_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10553 | /* 26590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FCAF_D), |
| 10554 | /* 26593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10555 | /* 26595 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10556 | /* 26597 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10557 | /* 26599 */ GIR_RootConstrainSelectedInstOperands, |
| 10558 | /* 26600 */ // GIR_Coverage, 748, |
| 10559 | /* 26600 */ GIR_EraseRootFromParent_Done, |
| 10560 | /* 26601 */ // Label 785: @26601 |
| 10561 | /* 26601 */ GIM_Try, /*On fail goto*//*Label 786*/ GIMT_Encode4(26646), // Rule ID 773 // |
| 10562 | /* 26606 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10563 | /* 26609 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fexdo_h), |
| 10564 | /* 26614 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 10565 | /* 26617 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10566 | /* 26620 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10567 | /* 26623 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 10568 | /* 26627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10569 | /* 26631 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10570 | /* 26635 */ // (intrinsic_wo_chain:{ *:[v8f16] } 8198:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FEXDO_H:{ *:[v8f16] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10571 | /* 26635 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXDO_H), |
| 10572 | /* 26638 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10573 | /* 26640 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10574 | /* 26642 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10575 | /* 26644 */ GIR_RootConstrainSelectedInstOperands, |
| 10576 | /* 26645 */ // GIR_Coverage, 773, |
| 10577 | /* 26645 */ GIR_EraseRootFromParent_Done, |
| 10578 | /* 26646 */ // Label 786: @26646 |
| 10579 | /* 26646 */ GIM_Try, /*On fail goto*//*Label 787*/ GIMT_Encode4(26691), // Rule ID 774 // |
| 10580 | /* 26651 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10581 | /* 26654 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fexdo_w), |
| 10582 | /* 26659 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10583 | /* 26662 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10584 | /* 26665 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10585 | /* 26668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10586 | /* 26672 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10587 | /* 26676 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10588 | /* 26680 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8199:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FEXDO_W:{ *:[v4f32] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10589 | /* 26680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXDO_W), |
| 10590 | /* 26683 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10591 | /* 26685 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10592 | /* 26687 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10593 | /* 26689 */ GIR_RootConstrainSelectedInstOperands, |
| 10594 | /* 26690 */ // GIR_Coverage, 774, |
| 10595 | /* 26690 */ GIR_EraseRootFromParent_Done, |
| 10596 | /* 26691 */ // Label 787: @26691 |
| 10597 | /* 26691 */ GIM_Try, /*On fail goto*//*Label 788*/ GIMT_Encode4(26736), // Rule ID 801 // |
| 10598 | /* 26696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10599 | /* 26699 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmax_w), |
| 10600 | /* 26704 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10601 | /* 26707 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10602 | /* 26710 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10603 | /* 26713 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10604 | /* 26717 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10605 | /* 26721 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10606 | /* 26725 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8225:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FMAX_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10607 | /* 26725 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMAX_W), |
| 10608 | /* 26728 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10609 | /* 26730 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10610 | /* 26732 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10611 | /* 26734 */ GIR_RootConstrainSelectedInstOperands, |
| 10612 | /* 26735 */ // GIR_Coverage, 801, |
| 10613 | /* 26735 */ GIR_EraseRootFromParent_Done, |
| 10614 | /* 26736 */ // Label 788: @26736 |
| 10615 | /* 26736 */ GIM_Try, /*On fail goto*//*Label 789*/ GIMT_Encode4(26781), // Rule ID 802 // |
| 10616 | /* 26741 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10617 | /* 26744 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmax_d), |
| 10618 | /* 26749 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10619 | /* 26752 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10620 | /* 26755 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10621 | /* 26758 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10622 | /* 26762 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10623 | /* 26766 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10624 | /* 26770 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8224:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FMAX_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10625 | /* 26770 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMAX_D), |
| 10626 | /* 26773 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10627 | /* 26775 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10628 | /* 26777 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10629 | /* 26779 */ GIR_RootConstrainSelectedInstOperands, |
| 10630 | /* 26780 */ // GIR_Coverage, 802, |
| 10631 | /* 26780 */ GIR_EraseRootFromParent_Done, |
| 10632 | /* 26781 */ // Label 789: @26781 |
| 10633 | /* 26781 */ GIM_Try, /*On fail goto*//*Label 790*/ GIMT_Encode4(26826), // Rule ID 803 // |
| 10634 | /* 26786 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10635 | /* 26789 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmax_a_w), |
| 10636 | /* 26794 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10637 | /* 26797 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10638 | /* 26800 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10639 | /* 26803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10640 | /* 26807 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10641 | /* 26811 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10642 | /* 26815 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8223:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FMAX_A_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10643 | /* 26815 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMAX_A_W), |
| 10644 | /* 26818 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10645 | /* 26820 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10646 | /* 26822 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10647 | /* 26824 */ GIR_RootConstrainSelectedInstOperands, |
| 10648 | /* 26825 */ // GIR_Coverage, 803, |
| 10649 | /* 26825 */ GIR_EraseRootFromParent_Done, |
| 10650 | /* 26826 */ // Label 790: @26826 |
| 10651 | /* 26826 */ GIM_Try, /*On fail goto*//*Label 791*/ GIMT_Encode4(26871), // Rule ID 804 // |
| 10652 | /* 26831 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10653 | /* 26834 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmax_a_d), |
| 10654 | /* 26839 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10655 | /* 26842 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10656 | /* 26845 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10657 | /* 26848 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10658 | /* 26852 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10659 | /* 26856 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10660 | /* 26860 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8222:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FMAX_A_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10661 | /* 26860 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMAX_A_D), |
| 10662 | /* 26863 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10663 | /* 26865 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10664 | /* 26867 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10665 | /* 26869 */ GIR_RootConstrainSelectedInstOperands, |
| 10666 | /* 26870 */ // GIR_Coverage, 804, |
| 10667 | /* 26870 */ GIR_EraseRootFromParent_Done, |
| 10668 | /* 26871 */ // Label 791: @26871 |
| 10669 | /* 26871 */ GIM_Try, /*On fail goto*//*Label 792*/ GIMT_Encode4(26916), // Rule ID 805 // |
| 10670 | /* 26876 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10671 | /* 26879 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmin_w), |
| 10672 | /* 26884 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10673 | /* 26887 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10674 | /* 26890 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10675 | /* 26893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10676 | /* 26897 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10677 | /* 26901 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10678 | /* 26905 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8229:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FMIN_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10679 | /* 26905 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMIN_W), |
| 10680 | /* 26908 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10681 | /* 26910 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10682 | /* 26912 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10683 | /* 26914 */ GIR_RootConstrainSelectedInstOperands, |
| 10684 | /* 26915 */ // GIR_Coverage, 805, |
| 10685 | /* 26915 */ GIR_EraseRootFromParent_Done, |
| 10686 | /* 26916 */ // Label 792: @26916 |
| 10687 | /* 26916 */ GIM_Try, /*On fail goto*//*Label 793*/ GIMT_Encode4(26961), // Rule ID 806 // |
| 10688 | /* 26921 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10689 | /* 26924 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmin_d), |
| 10690 | /* 26929 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10691 | /* 26932 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10692 | /* 26935 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10693 | /* 26938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10694 | /* 26942 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10695 | /* 26946 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10696 | /* 26950 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8228:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FMIN_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10697 | /* 26950 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMIN_D), |
| 10698 | /* 26953 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10699 | /* 26955 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10700 | /* 26957 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10701 | /* 26959 */ GIR_RootConstrainSelectedInstOperands, |
| 10702 | /* 26960 */ // GIR_Coverage, 806, |
| 10703 | /* 26960 */ GIR_EraseRootFromParent_Done, |
| 10704 | /* 26961 */ // Label 793: @26961 |
| 10705 | /* 26961 */ GIM_Try, /*On fail goto*//*Label 794*/ GIMT_Encode4(27006), // Rule ID 807 // |
| 10706 | /* 26966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10707 | /* 26969 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmin_a_w), |
| 10708 | /* 26974 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10709 | /* 26977 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10710 | /* 26980 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10711 | /* 26983 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10712 | /* 26987 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10713 | /* 26991 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10714 | /* 26995 */ // (intrinsic_wo_chain:{ *:[v4f32] } 8227:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FMIN_A_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10715 | /* 26995 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMIN_A_W), |
| 10716 | /* 26998 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10717 | /* 27000 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10718 | /* 27002 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10719 | /* 27004 */ GIR_RootConstrainSelectedInstOperands, |
| 10720 | /* 27005 */ // GIR_Coverage, 807, |
| 10721 | /* 27005 */ GIR_EraseRootFromParent_Done, |
| 10722 | /* 27006 */ // Label 794: @27006 |
| 10723 | /* 27006 */ GIM_Try, /*On fail goto*//*Label 795*/ GIMT_Encode4(27051), // Rule ID 808 // |
| 10724 | /* 27011 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10725 | /* 27014 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fmin_a_d), |
| 10726 | /* 27019 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10727 | /* 27022 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10728 | /* 27025 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10729 | /* 27028 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10730 | /* 27032 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10731 | /* 27036 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10732 | /* 27040 */ // (intrinsic_wo_chain:{ *:[v2f64] } 8226:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FMIN_A_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10733 | /* 27040 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMIN_A_D), |
| 10734 | /* 27043 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10735 | /* 27045 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10736 | /* 27047 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10737 | /* 27049 */ GIR_RootConstrainSelectedInstOperands, |
| 10738 | /* 27050 */ // GIR_Coverage, 808, |
| 10739 | /* 27050 */ GIR_EraseRootFromParent_Done, |
| 10740 | /* 27051 */ // Label 795: @27051 |
| 10741 | /* 27051 */ GIM_Try, /*On fail goto*//*Label 796*/ GIMT_Encode4(27096), // Rule ID 819 // |
| 10742 | /* 27056 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10743 | /* 27059 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsaf_w), |
| 10744 | /* 27064 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10745 | /* 27067 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10746 | /* 27070 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10747 | /* 27073 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10748 | /* 27077 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10749 | /* 27081 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10750 | /* 27085 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8241:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSAF_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10751 | /* 27085 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSAF_W), |
| 10752 | /* 27088 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10753 | /* 27090 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10754 | /* 27092 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10755 | /* 27094 */ GIR_RootConstrainSelectedInstOperands, |
| 10756 | /* 27095 */ // GIR_Coverage, 819, |
| 10757 | /* 27095 */ GIR_EraseRootFromParent_Done, |
| 10758 | /* 27096 */ // Label 796: @27096 |
| 10759 | /* 27096 */ GIM_Try, /*On fail goto*//*Label 797*/ GIMT_Encode4(27141), // Rule ID 820 // |
| 10760 | /* 27101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10761 | /* 27104 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsaf_d), |
| 10762 | /* 27109 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10763 | /* 27112 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10764 | /* 27115 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10765 | /* 27118 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10766 | /* 27122 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10767 | /* 27126 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10768 | /* 27130 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8240:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSAF_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10769 | /* 27130 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSAF_D), |
| 10770 | /* 27133 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10771 | /* 27135 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10772 | /* 27137 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10773 | /* 27139 */ GIR_RootConstrainSelectedInstOperands, |
| 10774 | /* 27140 */ // GIR_Coverage, 820, |
| 10775 | /* 27140 */ GIR_EraseRootFromParent_Done, |
| 10776 | /* 27141 */ // Label 797: @27141 |
| 10777 | /* 27141 */ GIM_Try, /*On fail goto*//*Label 798*/ GIMT_Encode4(27186), // Rule ID 821 // |
| 10778 | /* 27146 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10779 | /* 27149 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fseq_w), |
| 10780 | /* 27154 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10781 | /* 27157 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10782 | /* 27160 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10783 | /* 27163 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10784 | /* 27167 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10785 | /* 27171 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10786 | /* 27175 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8243:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSEQ_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10787 | /* 27175 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSEQ_W), |
| 10788 | /* 27178 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10789 | /* 27180 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10790 | /* 27182 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10791 | /* 27184 */ GIR_RootConstrainSelectedInstOperands, |
| 10792 | /* 27185 */ // GIR_Coverage, 821, |
| 10793 | /* 27185 */ GIR_EraseRootFromParent_Done, |
| 10794 | /* 27186 */ // Label 798: @27186 |
| 10795 | /* 27186 */ GIM_Try, /*On fail goto*//*Label 799*/ GIMT_Encode4(27231), // Rule ID 822 // |
| 10796 | /* 27191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10797 | /* 27194 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fseq_d), |
| 10798 | /* 27199 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10799 | /* 27202 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10800 | /* 27205 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10801 | /* 27208 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10802 | /* 27212 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10803 | /* 27216 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10804 | /* 27220 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8242:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSEQ_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10805 | /* 27220 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSEQ_D), |
| 10806 | /* 27223 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10807 | /* 27225 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10808 | /* 27227 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10809 | /* 27229 */ GIR_RootConstrainSelectedInstOperands, |
| 10810 | /* 27230 */ // GIR_Coverage, 822, |
| 10811 | /* 27230 */ GIR_EraseRootFromParent_Done, |
| 10812 | /* 27231 */ // Label 799: @27231 |
| 10813 | /* 27231 */ GIM_Try, /*On fail goto*//*Label 800*/ GIMT_Encode4(27276), // Rule ID 823 // |
| 10814 | /* 27236 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10815 | /* 27239 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsle_w), |
| 10816 | /* 27244 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10817 | /* 27247 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10818 | /* 27250 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10819 | /* 27253 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10820 | /* 27257 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10821 | /* 27261 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10822 | /* 27265 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8245:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSLE_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10823 | /* 27265 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSLE_W), |
| 10824 | /* 27268 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10825 | /* 27270 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10826 | /* 27272 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10827 | /* 27274 */ GIR_RootConstrainSelectedInstOperands, |
| 10828 | /* 27275 */ // GIR_Coverage, 823, |
| 10829 | /* 27275 */ GIR_EraseRootFromParent_Done, |
| 10830 | /* 27276 */ // Label 800: @27276 |
| 10831 | /* 27276 */ GIM_Try, /*On fail goto*//*Label 801*/ GIMT_Encode4(27321), // Rule ID 824 // |
| 10832 | /* 27281 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10833 | /* 27284 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsle_d), |
| 10834 | /* 27289 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10835 | /* 27292 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10836 | /* 27295 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10837 | /* 27298 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10838 | /* 27302 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10839 | /* 27306 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10840 | /* 27310 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8244:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSLE_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10841 | /* 27310 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSLE_D), |
| 10842 | /* 27313 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10843 | /* 27315 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10844 | /* 27317 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10845 | /* 27319 */ GIR_RootConstrainSelectedInstOperands, |
| 10846 | /* 27320 */ // GIR_Coverage, 824, |
| 10847 | /* 27320 */ GIR_EraseRootFromParent_Done, |
| 10848 | /* 27321 */ // Label 801: @27321 |
| 10849 | /* 27321 */ GIM_Try, /*On fail goto*//*Label 802*/ GIMT_Encode4(27366), // Rule ID 825 // |
| 10850 | /* 27326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10851 | /* 27329 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fslt_w), |
| 10852 | /* 27334 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10853 | /* 27337 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10854 | /* 27340 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10855 | /* 27343 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10856 | /* 27347 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10857 | /* 27351 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10858 | /* 27355 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8247:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSLT_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10859 | /* 27355 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSLT_W), |
| 10860 | /* 27358 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10861 | /* 27360 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10862 | /* 27362 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10863 | /* 27364 */ GIR_RootConstrainSelectedInstOperands, |
| 10864 | /* 27365 */ // GIR_Coverage, 825, |
| 10865 | /* 27365 */ GIR_EraseRootFromParent_Done, |
| 10866 | /* 27366 */ // Label 802: @27366 |
| 10867 | /* 27366 */ GIM_Try, /*On fail goto*//*Label 803*/ GIMT_Encode4(27411), // Rule ID 826 // |
| 10868 | /* 27371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10869 | /* 27374 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fslt_d), |
| 10870 | /* 27379 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10871 | /* 27382 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10872 | /* 27385 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10873 | /* 27388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10874 | /* 27392 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10875 | /* 27396 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10876 | /* 27400 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8246:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSLT_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10877 | /* 27400 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSLT_D), |
| 10878 | /* 27403 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10879 | /* 27405 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10880 | /* 27407 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10881 | /* 27409 */ GIR_RootConstrainSelectedInstOperands, |
| 10882 | /* 27410 */ // GIR_Coverage, 826, |
| 10883 | /* 27410 */ GIR_EraseRootFromParent_Done, |
| 10884 | /* 27411 */ // Label 803: @27411 |
| 10885 | /* 27411 */ GIM_Try, /*On fail goto*//*Label 804*/ GIMT_Encode4(27456), // Rule ID 827 // |
| 10886 | /* 27416 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10887 | /* 27419 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsne_w), |
| 10888 | /* 27424 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10889 | /* 27427 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10890 | /* 27430 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10891 | /* 27433 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10892 | /* 27437 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10893 | /* 27441 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10894 | /* 27445 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8249:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSNE_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10895 | /* 27445 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSNE_W), |
| 10896 | /* 27448 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10897 | /* 27450 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10898 | /* 27452 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10899 | /* 27454 */ GIR_RootConstrainSelectedInstOperands, |
| 10900 | /* 27455 */ // GIR_Coverage, 827, |
| 10901 | /* 27455 */ GIR_EraseRootFromParent_Done, |
| 10902 | /* 27456 */ // Label 804: @27456 |
| 10903 | /* 27456 */ GIM_Try, /*On fail goto*//*Label 805*/ GIMT_Encode4(27501), // Rule ID 828 // |
| 10904 | /* 27461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10905 | /* 27464 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsne_d), |
| 10906 | /* 27469 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10907 | /* 27472 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10908 | /* 27475 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10909 | /* 27478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10910 | /* 27482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10911 | /* 27486 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10912 | /* 27490 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8248:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSNE_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10913 | /* 27490 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSNE_D), |
| 10914 | /* 27493 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10915 | /* 27495 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10916 | /* 27497 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10917 | /* 27499 */ GIR_RootConstrainSelectedInstOperands, |
| 10918 | /* 27500 */ // GIR_Coverage, 828, |
| 10919 | /* 27500 */ GIR_EraseRootFromParent_Done, |
| 10920 | /* 27501 */ // Label 805: @27501 |
| 10921 | /* 27501 */ GIM_Try, /*On fail goto*//*Label 806*/ GIMT_Encode4(27546), // Rule ID 829 // |
| 10922 | /* 27506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10923 | /* 27509 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsor_w), |
| 10924 | /* 27514 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10925 | /* 27517 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10926 | /* 27520 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10927 | /* 27523 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10928 | /* 27527 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10929 | /* 27531 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10930 | /* 27535 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8251:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSOR_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10931 | /* 27535 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSOR_W), |
| 10932 | /* 27538 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10933 | /* 27540 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10934 | /* 27542 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10935 | /* 27544 */ GIR_RootConstrainSelectedInstOperands, |
| 10936 | /* 27545 */ // GIR_Coverage, 829, |
| 10937 | /* 27545 */ GIR_EraseRootFromParent_Done, |
| 10938 | /* 27546 */ // Label 806: @27546 |
| 10939 | /* 27546 */ GIM_Try, /*On fail goto*//*Label 807*/ GIMT_Encode4(27591), // Rule ID 830 // |
| 10940 | /* 27551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10941 | /* 27554 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsor_d), |
| 10942 | /* 27559 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10943 | /* 27562 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10944 | /* 27565 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10945 | /* 27568 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10946 | /* 27572 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10947 | /* 27576 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10948 | /* 27580 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8250:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSOR_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10949 | /* 27580 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSOR_D), |
| 10950 | /* 27583 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10951 | /* 27585 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10952 | /* 27587 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10953 | /* 27589 */ GIR_RootConstrainSelectedInstOperands, |
| 10954 | /* 27590 */ // GIR_Coverage, 830, |
| 10955 | /* 27590 */ GIR_EraseRootFromParent_Done, |
| 10956 | /* 27591 */ // Label 807: @27591 |
| 10957 | /* 27591 */ GIM_Try, /*On fail goto*//*Label 808*/ GIMT_Encode4(27636), // Rule ID 835 // |
| 10958 | /* 27596 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10959 | /* 27599 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsueq_w), |
| 10960 | /* 27604 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10961 | /* 27607 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10962 | /* 27610 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10963 | /* 27613 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10964 | /* 27617 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10965 | /* 27621 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 10966 | /* 27625 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8257:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSUEQ_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 10967 | /* 27625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSUEQ_W), |
| 10968 | /* 27628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10969 | /* 27630 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10970 | /* 27632 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10971 | /* 27634 */ GIR_RootConstrainSelectedInstOperands, |
| 10972 | /* 27635 */ // GIR_Coverage, 835, |
| 10973 | /* 27635 */ GIR_EraseRootFromParent_Done, |
| 10974 | /* 27636 */ // Label 808: @27636 |
| 10975 | /* 27636 */ GIM_Try, /*On fail goto*//*Label 809*/ GIMT_Encode4(27681), // Rule ID 836 // |
| 10976 | /* 27641 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10977 | /* 27644 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsueq_d), |
| 10978 | /* 27649 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 10979 | /* 27652 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 10980 | /* 27655 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 10981 | /* 27658 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10982 | /* 27662 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10983 | /* 27666 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 10984 | /* 27670 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8256:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSUEQ_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 10985 | /* 27670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSUEQ_D), |
| 10986 | /* 27673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 10987 | /* 27675 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 10988 | /* 27677 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 10989 | /* 27679 */ GIR_RootConstrainSelectedInstOperands, |
| 10990 | /* 27680 */ // GIR_Coverage, 836, |
| 10991 | /* 27680 */ GIR_EraseRootFromParent_Done, |
| 10992 | /* 27681 */ // Label 809: @27681 |
| 10993 | /* 27681 */ GIM_Try, /*On fail goto*//*Label 810*/ GIMT_Encode4(27726), // Rule ID 837 // |
| 10994 | /* 27686 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 10995 | /* 27689 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsule_w), |
| 10996 | /* 27694 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 10997 | /* 27697 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 10998 | /* 27700 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 10999 | /* 27703 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11000 | /* 27707 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11001 | /* 27711 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11002 | /* 27715 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8259:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSULE_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 11003 | /* 27715 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSULE_W), |
| 11004 | /* 27718 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11005 | /* 27720 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11006 | /* 27722 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11007 | /* 27724 */ GIR_RootConstrainSelectedInstOperands, |
| 11008 | /* 27725 */ // GIR_Coverage, 837, |
| 11009 | /* 27725 */ GIR_EraseRootFromParent_Done, |
| 11010 | /* 27726 */ // Label 810: @27726 |
| 11011 | /* 27726 */ GIM_Try, /*On fail goto*//*Label 811*/ GIMT_Encode4(27771), // Rule ID 838 // |
| 11012 | /* 27731 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11013 | /* 27734 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsule_d), |
| 11014 | /* 27739 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11015 | /* 27742 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11016 | /* 27745 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11017 | /* 27748 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11018 | /* 27752 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11019 | /* 27756 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11020 | /* 27760 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8258:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSULE_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 11021 | /* 27760 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSULE_D), |
| 11022 | /* 27763 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11023 | /* 27765 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11024 | /* 27767 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11025 | /* 27769 */ GIR_RootConstrainSelectedInstOperands, |
| 11026 | /* 27770 */ // GIR_Coverage, 838, |
| 11027 | /* 27770 */ GIR_EraseRootFromParent_Done, |
| 11028 | /* 27771 */ // Label 811: @27771 |
| 11029 | /* 27771 */ GIM_Try, /*On fail goto*//*Label 812*/ GIMT_Encode4(27816), // Rule ID 839 // |
| 11030 | /* 27776 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11031 | /* 27779 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsult_w), |
| 11032 | /* 27784 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11033 | /* 27787 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11034 | /* 27790 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11035 | /* 27793 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11036 | /* 27797 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11037 | /* 27801 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11038 | /* 27805 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8261:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSULT_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 11039 | /* 27805 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSULT_W), |
| 11040 | /* 27808 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11041 | /* 27810 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11042 | /* 27812 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11043 | /* 27814 */ GIR_RootConstrainSelectedInstOperands, |
| 11044 | /* 27815 */ // GIR_Coverage, 839, |
| 11045 | /* 27815 */ GIR_EraseRootFromParent_Done, |
| 11046 | /* 27816 */ // Label 812: @27816 |
| 11047 | /* 27816 */ GIM_Try, /*On fail goto*//*Label 813*/ GIMT_Encode4(27861), // Rule ID 840 // |
| 11048 | /* 27821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11049 | /* 27824 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsult_d), |
| 11050 | /* 27829 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11051 | /* 27832 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11052 | /* 27835 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11053 | /* 27838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11054 | /* 27842 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11055 | /* 27846 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11056 | /* 27850 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8260:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSULT_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 11057 | /* 27850 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSULT_D), |
| 11058 | /* 27853 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11059 | /* 27855 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11060 | /* 27857 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11061 | /* 27859 */ GIR_RootConstrainSelectedInstOperands, |
| 11062 | /* 27860 */ // GIR_Coverage, 840, |
| 11063 | /* 27860 */ GIR_EraseRootFromParent_Done, |
| 11064 | /* 27861 */ // Label 813: @27861 |
| 11065 | /* 27861 */ GIM_Try, /*On fail goto*//*Label 814*/ GIMT_Encode4(27906), // Rule ID 841 // |
| 11066 | /* 27866 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11067 | /* 27869 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsun_w), |
| 11068 | /* 27874 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11069 | /* 27877 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11070 | /* 27880 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11071 | /* 27883 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11072 | /* 27887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11073 | /* 27891 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11074 | /* 27895 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8263:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSUN_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 11075 | /* 27895 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSUN_W), |
| 11076 | /* 27898 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11077 | /* 27900 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11078 | /* 27902 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11079 | /* 27904 */ GIR_RootConstrainSelectedInstOperands, |
| 11080 | /* 27905 */ // GIR_Coverage, 841, |
| 11081 | /* 27905 */ GIR_EraseRootFromParent_Done, |
| 11082 | /* 27906 */ // Label 814: @27906 |
| 11083 | /* 27906 */ GIM_Try, /*On fail goto*//*Label 815*/ GIMT_Encode4(27951), // Rule ID 842 // |
| 11084 | /* 27911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11085 | /* 27914 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsun_d), |
| 11086 | /* 27919 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11087 | /* 27922 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11088 | /* 27925 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11089 | /* 27928 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11090 | /* 27932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11091 | /* 27936 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11092 | /* 27940 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8262:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSUN_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 11093 | /* 27940 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSUN_D), |
| 11094 | /* 27943 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11095 | /* 27945 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11096 | /* 27947 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11097 | /* 27949 */ GIR_RootConstrainSelectedInstOperands, |
| 11098 | /* 27950 */ // GIR_Coverage, 842, |
| 11099 | /* 27950 */ GIR_EraseRootFromParent_Done, |
| 11100 | /* 27951 */ // Label 815: @27951 |
| 11101 | /* 27951 */ GIM_Try, /*On fail goto*//*Label 816*/ GIMT_Encode4(27996), // Rule ID 843 // |
| 11102 | /* 27956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11103 | /* 27959 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsune_w), |
| 11104 | /* 27964 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11105 | /* 27967 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11106 | /* 27970 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11107 | /* 27973 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11108 | /* 27977 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11109 | /* 27981 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11110 | /* 27985 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8265:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSUNE_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 11111 | /* 27985 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSUNE_W), |
| 11112 | /* 27988 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11113 | /* 27990 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11114 | /* 27992 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11115 | /* 27994 */ GIR_RootConstrainSelectedInstOperands, |
| 11116 | /* 27995 */ // GIR_Coverage, 843, |
| 11117 | /* 27995 */ GIR_EraseRootFromParent_Done, |
| 11118 | /* 27996 */ // Label 816: @27996 |
| 11119 | /* 27996 */ GIM_Try, /*On fail goto*//*Label 817*/ GIMT_Encode4(28041), // Rule ID 844 // |
| 11120 | /* 28001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11121 | /* 28004 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_fsune_d), |
| 11122 | /* 28009 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11123 | /* 28012 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11124 | /* 28015 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11125 | /* 28018 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11126 | /* 28022 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11127 | /* 28026 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11128 | /* 28030 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8264:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSUNE_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 11129 | /* 28030 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSUNE_D), |
| 11130 | /* 28033 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11131 | /* 28035 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11132 | /* 28037 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11133 | /* 28039 */ GIR_RootConstrainSelectedInstOperands, |
| 11134 | /* 28040 */ // GIR_Coverage, 844, |
| 11135 | /* 28040 */ GIR_EraseRootFromParent_Done, |
| 11136 | /* 28041 */ // Label 817: @28041 |
| 11137 | /* 28041 */ GIM_Try, /*On fail goto*//*Label 818*/ GIMT_Encode4(28086), // Rule ID 849 // |
| 11138 | /* 28046 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11139 | /* 28049 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ftq_h), |
| 11140 | /* 28054 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11141 | /* 28057 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11142 | /* 28060 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11143 | /* 28063 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11144 | /* 28067 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11145 | /* 28071 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11146 | /* 28075 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8270:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FTQ_H:{ *:[v8i16] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 11147 | /* 28075 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FTQ_H), |
| 11148 | /* 28078 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11149 | /* 28080 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11150 | /* 28082 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11151 | /* 28084 */ GIR_RootConstrainSelectedInstOperands, |
| 11152 | /* 28085 */ // GIR_Coverage, 849, |
| 11153 | /* 28085 */ GIR_EraseRootFromParent_Done, |
| 11154 | /* 28086 */ // Label 818: @28086 |
| 11155 | /* 28086 */ GIM_Try, /*On fail goto*//*Label 819*/ GIMT_Encode4(28131), // Rule ID 850 // |
| 11156 | /* 28091 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11157 | /* 28094 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ftq_w), |
| 11158 | /* 28099 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11159 | /* 28102 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11160 | /* 28105 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11161 | /* 28108 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11162 | /* 28112 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11163 | /* 28116 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11164 | /* 28120 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8271:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FTQ_W:{ *:[v4i32] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 11165 | /* 28120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FTQ_W), |
| 11166 | /* 28123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11167 | /* 28125 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11168 | /* 28127 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11169 | /* 28129 */ GIR_RootConstrainSelectedInstOperands, |
| 11170 | /* 28130 */ // GIR_Coverage, 850, |
| 11171 | /* 28130 */ GIR_EraseRootFromParent_Done, |
| 11172 | /* 28131 */ // Label 819: @28131 |
| 11173 | /* 28131 */ GIM_Try, /*On fail goto*//*Label 820*/ GIMT_Encode4(28176), // Rule ID 855 // |
| 11174 | /* 28136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11175 | /* 28139 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hadd_s_h), |
| 11176 | /* 28144 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11177 | /* 28147 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11178 | /* 28150 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11179 | /* 28153 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11180 | /* 28157 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11181 | /* 28161 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11182 | /* 28165 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8277:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (HADD_S_H:{ *:[v8i16] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11183 | /* 28165 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HADD_S_H), |
| 11184 | /* 28168 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11185 | /* 28170 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11186 | /* 28172 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11187 | /* 28174 */ GIR_RootConstrainSelectedInstOperands, |
| 11188 | /* 28175 */ // GIR_Coverage, 855, |
| 11189 | /* 28175 */ GIR_EraseRootFromParent_Done, |
| 11190 | /* 28176 */ // Label 820: @28176 |
| 11191 | /* 28176 */ GIM_Try, /*On fail goto*//*Label 821*/ GIMT_Encode4(28221), // Rule ID 856 // |
| 11192 | /* 28181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11193 | /* 28184 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hadd_s_w), |
| 11194 | /* 28189 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11195 | /* 28192 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11196 | /* 28195 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11197 | /* 28198 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11198 | /* 28202 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11199 | /* 28206 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11200 | /* 28210 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8278:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (HADD_S_W:{ *:[v4i32] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11201 | /* 28210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HADD_S_W), |
| 11202 | /* 28213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11203 | /* 28215 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11204 | /* 28217 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11205 | /* 28219 */ GIR_RootConstrainSelectedInstOperands, |
| 11206 | /* 28220 */ // GIR_Coverage, 856, |
| 11207 | /* 28220 */ GIR_EraseRootFromParent_Done, |
| 11208 | /* 28221 */ // Label 821: @28221 |
| 11209 | /* 28221 */ GIM_Try, /*On fail goto*//*Label 822*/ GIMT_Encode4(28266), // Rule ID 857 // |
| 11210 | /* 28226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11211 | /* 28229 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hadd_s_d), |
| 11212 | /* 28234 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11213 | /* 28237 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11214 | /* 28240 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11215 | /* 28243 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11216 | /* 28247 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11217 | /* 28251 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11218 | /* 28255 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8276:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (HADD_S_D:{ *:[v2i64] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11219 | /* 28255 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HADD_S_D), |
| 11220 | /* 28258 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11221 | /* 28260 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11222 | /* 28262 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11223 | /* 28264 */ GIR_RootConstrainSelectedInstOperands, |
| 11224 | /* 28265 */ // GIR_Coverage, 857, |
| 11225 | /* 28265 */ GIR_EraseRootFromParent_Done, |
| 11226 | /* 28266 */ // Label 822: @28266 |
| 11227 | /* 28266 */ GIM_Try, /*On fail goto*//*Label 823*/ GIMT_Encode4(28311), // Rule ID 858 // |
| 11228 | /* 28271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11229 | /* 28274 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hadd_u_h), |
| 11230 | /* 28279 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11231 | /* 28282 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11232 | /* 28285 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11233 | /* 28288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11234 | /* 28292 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11235 | /* 28296 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11236 | /* 28300 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8280:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (HADD_U_H:{ *:[v8i16] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11237 | /* 28300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HADD_U_H), |
| 11238 | /* 28303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11239 | /* 28305 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11240 | /* 28307 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11241 | /* 28309 */ GIR_RootConstrainSelectedInstOperands, |
| 11242 | /* 28310 */ // GIR_Coverage, 858, |
| 11243 | /* 28310 */ GIR_EraseRootFromParent_Done, |
| 11244 | /* 28311 */ // Label 823: @28311 |
| 11245 | /* 28311 */ GIM_Try, /*On fail goto*//*Label 824*/ GIMT_Encode4(28356), // Rule ID 859 // |
| 11246 | /* 28316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11247 | /* 28319 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hadd_u_w), |
| 11248 | /* 28324 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11249 | /* 28327 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11250 | /* 28330 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11251 | /* 28333 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11252 | /* 28337 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11253 | /* 28341 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11254 | /* 28345 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8281:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (HADD_U_W:{ *:[v4i32] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11255 | /* 28345 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HADD_U_W), |
| 11256 | /* 28348 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11257 | /* 28350 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11258 | /* 28352 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11259 | /* 28354 */ GIR_RootConstrainSelectedInstOperands, |
| 11260 | /* 28355 */ // GIR_Coverage, 859, |
| 11261 | /* 28355 */ GIR_EraseRootFromParent_Done, |
| 11262 | /* 28356 */ // Label 824: @28356 |
| 11263 | /* 28356 */ GIM_Try, /*On fail goto*//*Label 825*/ GIMT_Encode4(28401), // Rule ID 860 // |
| 11264 | /* 28361 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11265 | /* 28364 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hadd_u_d), |
| 11266 | /* 28369 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11267 | /* 28372 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11268 | /* 28375 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11269 | /* 28378 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11270 | /* 28382 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11271 | /* 28386 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11272 | /* 28390 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8279:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (HADD_U_D:{ *:[v2i64] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11273 | /* 28390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HADD_U_D), |
| 11274 | /* 28393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11275 | /* 28395 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11276 | /* 28397 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11277 | /* 28399 */ GIR_RootConstrainSelectedInstOperands, |
| 11278 | /* 28400 */ // GIR_Coverage, 860, |
| 11279 | /* 28400 */ GIR_EraseRootFromParent_Done, |
| 11280 | /* 28401 */ // Label 825: @28401 |
| 11281 | /* 28401 */ GIM_Try, /*On fail goto*//*Label 826*/ GIMT_Encode4(28446), // Rule ID 861 // |
| 11282 | /* 28406 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11283 | /* 28409 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hsub_s_h), |
| 11284 | /* 28414 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11285 | /* 28417 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11286 | /* 28420 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11287 | /* 28423 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11288 | /* 28427 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11289 | /* 28431 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11290 | /* 28435 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8283:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (HSUB_S_H:{ *:[v8i16] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11291 | /* 28435 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HSUB_S_H), |
| 11292 | /* 28438 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11293 | /* 28440 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11294 | /* 28442 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11295 | /* 28444 */ GIR_RootConstrainSelectedInstOperands, |
| 11296 | /* 28445 */ // GIR_Coverage, 861, |
| 11297 | /* 28445 */ GIR_EraseRootFromParent_Done, |
| 11298 | /* 28446 */ // Label 826: @28446 |
| 11299 | /* 28446 */ GIM_Try, /*On fail goto*//*Label 827*/ GIMT_Encode4(28491), // Rule ID 862 // |
| 11300 | /* 28451 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11301 | /* 28454 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hsub_s_w), |
| 11302 | /* 28459 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11303 | /* 28462 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11304 | /* 28465 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11305 | /* 28468 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11306 | /* 28472 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11307 | /* 28476 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11308 | /* 28480 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8284:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (HSUB_S_W:{ *:[v4i32] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11309 | /* 28480 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HSUB_S_W), |
| 11310 | /* 28483 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11311 | /* 28485 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11312 | /* 28487 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11313 | /* 28489 */ GIR_RootConstrainSelectedInstOperands, |
| 11314 | /* 28490 */ // GIR_Coverage, 862, |
| 11315 | /* 28490 */ GIR_EraseRootFromParent_Done, |
| 11316 | /* 28491 */ // Label 827: @28491 |
| 11317 | /* 28491 */ GIM_Try, /*On fail goto*//*Label 828*/ GIMT_Encode4(28536), // Rule ID 863 // |
| 11318 | /* 28496 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11319 | /* 28499 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hsub_s_d), |
| 11320 | /* 28504 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11321 | /* 28507 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11322 | /* 28510 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11323 | /* 28513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11324 | /* 28517 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11325 | /* 28521 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11326 | /* 28525 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8282:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (HSUB_S_D:{ *:[v2i64] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11327 | /* 28525 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HSUB_S_D), |
| 11328 | /* 28528 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11329 | /* 28530 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11330 | /* 28532 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11331 | /* 28534 */ GIR_RootConstrainSelectedInstOperands, |
| 11332 | /* 28535 */ // GIR_Coverage, 863, |
| 11333 | /* 28535 */ GIR_EraseRootFromParent_Done, |
| 11334 | /* 28536 */ // Label 828: @28536 |
| 11335 | /* 28536 */ GIM_Try, /*On fail goto*//*Label 829*/ GIMT_Encode4(28581), // Rule ID 864 // |
| 11336 | /* 28541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11337 | /* 28544 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hsub_u_h), |
| 11338 | /* 28549 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11339 | /* 28552 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11340 | /* 28555 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11341 | /* 28558 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11342 | /* 28562 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11343 | /* 28566 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11344 | /* 28570 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8286:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (HSUB_U_H:{ *:[v8i16] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11345 | /* 28570 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HSUB_U_H), |
| 11346 | /* 28573 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11347 | /* 28575 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11348 | /* 28577 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11349 | /* 28579 */ GIR_RootConstrainSelectedInstOperands, |
| 11350 | /* 28580 */ // GIR_Coverage, 864, |
| 11351 | /* 28580 */ GIR_EraseRootFromParent_Done, |
| 11352 | /* 28581 */ // Label 829: @28581 |
| 11353 | /* 28581 */ GIM_Try, /*On fail goto*//*Label 830*/ GIMT_Encode4(28626), // Rule ID 865 // |
| 11354 | /* 28586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11355 | /* 28589 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hsub_u_w), |
| 11356 | /* 28594 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11357 | /* 28597 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11358 | /* 28600 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11359 | /* 28603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11360 | /* 28607 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11361 | /* 28611 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11362 | /* 28615 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8287:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (HSUB_U_W:{ *:[v4i32] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11363 | /* 28615 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HSUB_U_W), |
| 11364 | /* 28618 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11365 | /* 28620 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11366 | /* 28622 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11367 | /* 28624 */ GIR_RootConstrainSelectedInstOperands, |
| 11368 | /* 28625 */ // GIR_Coverage, 865, |
| 11369 | /* 28625 */ GIR_EraseRootFromParent_Done, |
| 11370 | /* 28626 */ // Label 830: @28626 |
| 11371 | /* 28626 */ GIM_Try, /*On fail goto*//*Label 831*/ GIMT_Encode4(28671), // Rule ID 866 // |
| 11372 | /* 28631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11373 | /* 28634 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_hsub_u_d), |
| 11374 | /* 28639 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11375 | /* 28642 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11376 | /* 28645 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11377 | /* 28648 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11378 | /* 28652 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11379 | /* 28656 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11380 | /* 28660 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8285:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (HSUB_U_D:{ *:[v2i64] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11381 | /* 28660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::HSUB_U_D), |
| 11382 | /* 28663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11383 | /* 28665 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11384 | /* 28667 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11385 | /* 28669 */ GIR_RootConstrainSelectedInstOperands, |
| 11386 | /* 28670 */ // GIR_Coverage, 866, |
| 11387 | /* 28670 */ GIR_EraseRootFromParent_Done, |
| 11388 | /* 28671 */ // Label 831: @28671 |
| 11389 | /* 28671 */ GIM_Try, /*On fail goto*//*Label 832*/ GIMT_Encode4(28716), // Rule ID 919 // |
| 11390 | /* 28676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11391 | /* 28679 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_max_a_b), |
| 11392 | /* 28684 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11393 | /* 28687 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11394 | /* 28690 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11395 | /* 28693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11396 | /* 28697 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11397 | /* 28701 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11398 | /* 28705 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8341:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MAX_A_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11399 | /* 28705 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MAX_A_B), |
| 11400 | /* 28708 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11401 | /* 28710 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11402 | /* 28712 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11403 | /* 28714 */ GIR_RootConstrainSelectedInstOperands, |
| 11404 | /* 28715 */ // GIR_Coverage, 919, |
| 11405 | /* 28715 */ GIR_EraseRootFromParent_Done, |
| 11406 | /* 28716 */ // Label 832: @28716 |
| 11407 | /* 28716 */ GIM_Try, /*On fail goto*//*Label 833*/ GIMT_Encode4(28761), // Rule ID 920 // |
| 11408 | /* 28721 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11409 | /* 28724 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_max_a_h), |
| 11410 | /* 28729 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11411 | /* 28732 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11412 | /* 28735 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11413 | /* 28738 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11414 | /* 28742 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11415 | /* 28746 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11416 | /* 28750 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8343:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MAX_A_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11417 | /* 28750 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MAX_A_H), |
| 11418 | /* 28753 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11419 | /* 28755 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11420 | /* 28757 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11421 | /* 28759 */ GIR_RootConstrainSelectedInstOperands, |
| 11422 | /* 28760 */ // GIR_Coverage, 920, |
| 11423 | /* 28760 */ GIR_EraseRootFromParent_Done, |
| 11424 | /* 28761 */ // Label 833: @28761 |
| 11425 | /* 28761 */ GIM_Try, /*On fail goto*//*Label 834*/ GIMT_Encode4(28806), // Rule ID 921 // |
| 11426 | /* 28766 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11427 | /* 28769 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_max_a_w), |
| 11428 | /* 28774 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11429 | /* 28777 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11430 | /* 28780 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11431 | /* 28783 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11432 | /* 28787 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11433 | /* 28791 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11434 | /* 28795 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8344:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MAX_A_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11435 | /* 28795 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MAX_A_W), |
| 11436 | /* 28798 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11437 | /* 28800 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11438 | /* 28802 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11439 | /* 28804 */ GIR_RootConstrainSelectedInstOperands, |
| 11440 | /* 28805 */ // GIR_Coverage, 921, |
| 11441 | /* 28805 */ GIR_EraseRootFromParent_Done, |
| 11442 | /* 28806 */ // Label 834: @28806 |
| 11443 | /* 28806 */ GIM_Try, /*On fail goto*//*Label 835*/ GIMT_Encode4(28851), // Rule ID 922 // |
| 11444 | /* 28811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11445 | /* 28814 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_max_a_d), |
| 11446 | /* 28819 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11447 | /* 28822 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11448 | /* 28825 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11449 | /* 28828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11450 | /* 28832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11451 | /* 28836 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11452 | /* 28840 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8342:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MAX_A_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 11453 | /* 28840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MAX_A_D), |
| 11454 | /* 28843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11455 | /* 28845 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11456 | /* 28847 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11457 | /* 28849 */ GIR_RootConstrainSelectedInstOperands, |
| 11458 | /* 28850 */ // GIR_Coverage, 922, |
| 11459 | /* 28850 */ GIR_EraseRootFromParent_Done, |
| 11460 | /* 28851 */ // Label 835: @28851 |
| 11461 | /* 28851 */ GIM_Try, /*On fail goto*//*Label 836*/ GIMT_Encode4(28896), // Rule ID 939 // |
| 11462 | /* 28856 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11463 | /* 28859 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_min_a_b), |
| 11464 | /* 28864 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11465 | /* 28867 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11466 | /* 28870 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11467 | /* 28873 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11468 | /* 28877 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11469 | /* 28881 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11470 | /* 28885 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8361:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MIN_A_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11471 | /* 28885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MIN_A_B), |
| 11472 | /* 28888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11473 | /* 28890 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11474 | /* 28892 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11475 | /* 28894 */ GIR_RootConstrainSelectedInstOperands, |
| 11476 | /* 28895 */ // GIR_Coverage, 939, |
| 11477 | /* 28895 */ GIR_EraseRootFromParent_Done, |
| 11478 | /* 28896 */ // Label 836: @28896 |
| 11479 | /* 28896 */ GIM_Try, /*On fail goto*//*Label 837*/ GIMT_Encode4(28941), // Rule ID 940 // |
| 11480 | /* 28901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11481 | /* 28904 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_min_a_h), |
| 11482 | /* 28909 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11483 | /* 28912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11484 | /* 28915 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11485 | /* 28918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11486 | /* 28922 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11487 | /* 28926 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11488 | /* 28930 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8363:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MIN_A_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11489 | /* 28930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MIN_A_H), |
| 11490 | /* 28933 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11491 | /* 28935 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11492 | /* 28937 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11493 | /* 28939 */ GIR_RootConstrainSelectedInstOperands, |
| 11494 | /* 28940 */ // GIR_Coverage, 940, |
| 11495 | /* 28940 */ GIR_EraseRootFromParent_Done, |
| 11496 | /* 28941 */ // Label 837: @28941 |
| 11497 | /* 28941 */ GIM_Try, /*On fail goto*//*Label 838*/ GIMT_Encode4(28986), // Rule ID 941 // |
| 11498 | /* 28946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11499 | /* 28949 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_min_a_w), |
| 11500 | /* 28954 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11501 | /* 28957 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11502 | /* 28960 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11503 | /* 28963 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11504 | /* 28967 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11505 | /* 28971 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11506 | /* 28975 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8364:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MIN_A_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11507 | /* 28975 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MIN_A_W), |
| 11508 | /* 28978 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11509 | /* 28980 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11510 | /* 28982 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11511 | /* 28984 */ GIR_RootConstrainSelectedInstOperands, |
| 11512 | /* 28985 */ // GIR_Coverage, 941, |
| 11513 | /* 28985 */ GIR_EraseRootFromParent_Done, |
| 11514 | /* 28986 */ // Label 838: @28986 |
| 11515 | /* 28986 */ GIM_Try, /*On fail goto*//*Label 839*/ GIMT_Encode4(29031), // Rule ID 942 // |
| 11516 | /* 28991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11517 | /* 28994 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_min_a_d), |
| 11518 | /* 28999 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11519 | /* 29002 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11520 | /* 29005 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11521 | /* 29008 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11522 | /* 29012 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11523 | /* 29016 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11524 | /* 29020 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8362:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MIN_A_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 11525 | /* 29020 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MIN_A_D), |
| 11526 | /* 29023 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11527 | /* 29025 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11528 | /* 29027 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11529 | /* 29029 */ GIR_RootConstrainSelectedInstOperands, |
| 11530 | /* 29030 */ // GIR_Coverage, 942, |
| 11531 | /* 29030 */ GIR_EraseRootFromParent_Done, |
| 11532 | /* 29031 */ // Label 839: @29031 |
| 11533 | /* 29031 */ GIM_Try, /*On fail goto*//*Label 840*/ GIMT_Encode4(29076), // Rule ID 975 // |
| 11534 | /* 29036 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11535 | /* 29039 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mul_q_h), |
| 11536 | /* 29044 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11537 | /* 29047 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11538 | /* 29050 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11539 | /* 29053 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11540 | /* 29057 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11541 | /* 29061 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11542 | /* 29065 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8403:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MUL_Q_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11543 | /* 29065 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MUL_Q_H), |
| 11544 | /* 29068 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11545 | /* 29070 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11546 | /* 29072 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11547 | /* 29074 */ GIR_RootConstrainSelectedInstOperands, |
| 11548 | /* 29075 */ // GIR_Coverage, 975, |
| 11549 | /* 29075 */ GIR_EraseRootFromParent_Done, |
| 11550 | /* 29076 */ // Label 840: @29076 |
| 11551 | /* 29076 */ GIM_Try, /*On fail goto*//*Label 841*/ GIMT_Encode4(29121), // Rule ID 976 // |
| 11552 | /* 29081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11553 | /* 29084 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mul_q_w), |
| 11554 | /* 29089 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11555 | /* 29092 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11556 | /* 29095 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11557 | /* 29098 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11558 | /* 29102 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11559 | /* 29106 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11560 | /* 29110 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8404:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MUL_Q_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11561 | /* 29110 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MUL_Q_W), |
| 11562 | /* 29113 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11563 | /* 29115 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11564 | /* 29117 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11565 | /* 29119 */ GIR_RootConstrainSelectedInstOperands, |
| 11566 | /* 29120 */ // GIR_Coverage, 976, |
| 11567 | /* 29120 */ GIR_EraseRootFromParent_Done, |
| 11568 | /* 29121 */ // Label 841: @29121 |
| 11569 | /* 29121 */ GIM_Try, /*On fail goto*//*Label 842*/ GIMT_Encode4(29166), // Rule ID 977 // |
| 11570 | /* 29126 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11571 | /* 29129 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulr_q_h), |
| 11572 | /* 29134 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11573 | /* 29137 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11574 | /* 29140 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11575 | /* 29143 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11576 | /* 29147 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11577 | /* 29151 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11578 | /* 29155 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8414:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MULR_Q_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11579 | /* 29155 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULR_Q_H), |
| 11580 | /* 29158 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11581 | /* 29160 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11582 | /* 29162 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11583 | /* 29164 */ GIR_RootConstrainSelectedInstOperands, |
| 11584 | /* 29165 */ // GIR_Coverage, 977, |
| 11585 | /* 29165 */ GIR_EraseRootFromParent_Done, |
| 11586 | /* 29166 */ // Label 842: @29166 |
| 11587 | /* 29166 */ GIM_Try, /*On fail goto*//*Label 843*/ GIMT_Encode4(29211), // Rule ID 978 // |
| 11588 | /* 29171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11589 | /* 29174 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulr_q_w), |
| 11590 | /* 29179 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11591 | /* 29182 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11592 | /* 29185 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11593 | /* 29188 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11594 | /* 29192 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11595 | /* 29196 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11596 | /* 29200 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8415:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MULR_Q_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11597 | /* 29200 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULR_Q_W), |
| 11598 | /* 29203 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11599 | /* 29205 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11600 | /* 29207 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11601 | /* 29209 */ GIR_RootConstrainSelectedInstOperands, |
| 11602 | /* 29210 */ // GIR_Coverage, 978, |
| 11603 | /* 29210 */ GIR_EraseRootFromParent_Done, |
| 11604 | /* 29211 */ // Label 843: @29211 |
| 11605 | /* 29211 */ GIM_Try, /*On fail goto*//*Label 844*/ GIMT_Encode4(29256), // Rule ID 1056 // |
| 11606 | /* 29216 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11607 | /* 29219 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srar_b), |
| 11608 | /* 29224 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11609 | /* 29227 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11610 | /* 29230 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11611 | /* 29233 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11612 | /* 29237 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11613 | /* 29241 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11614 | /* 29245 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8528:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SRAR_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11615 | /* 29245 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRAR_B), |
| 11616 | /* 29248 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11617 | /* 29250 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11618 | /* 29252 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11619 | /* 29254 */ GIR_RootConstrainSelectedInstOperands, |
| 11620 | /* 29255 */ // GIR_Coverage, 1056, |
| 11621 | /* 29255 */ GIR_EraseRootFromParent_Done, |
| 11622 | /* 29256 */ // Label 844: @29256 |
| 11623 | /* 29256 */ GIM_Try, /*On fail goto*//*Label 845*/ GIMT_Encode4(29301), // Rule ID 1057 // |
| 11624 | /* 29261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11625 | /* 29264 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srar_h), |
| 11626 | /* 29269 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11627 | /* 29272 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11628 | /* 29275 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11629 | /* 29278 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11630 | /* 29282 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11631 | /* 29286 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11632 | /* 29290 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8530:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SRAR_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11633 | /* 29290 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRAR_H), |
| 11634 | /* 29293 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11635 | /* 29295 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11636 | /* 29297 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11637 | /* 29299 */ GIR_RootConstrainSelectedInstOperands, |
| 11638 | /* 29300 */ // GIR_Coverage, 1057, |
| 11639 | /* 29300 */ GIR_EraseRootFromParent_Done, |
| 11640 | /* 29301 */ // Label 845: @29301 |
| 11641 | /* 29301 */ GIM_Try, /*On fail goto*//*Label 846*/ GIMT_Encode4(29346), // Rule ID 1058 // |
| 11642 | /* 29306 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11643 | /* 29309 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srar_w), |
| 11644 | /* 29314 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11645 | /* 29317 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11646 | /* 29320 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11647 | /* 29323 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11648 | /* 29327 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11649 | /* 29331 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11650 | /* 29335 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8531:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SRAR_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11651 | /* 29335 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRAR_W), |
| 11652 | /* 29338 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11653 | /* 29340 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11654 | /* 29342 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11655 | /* 29344 */ GIR_RootConstrainSelectedInstOperands, |
| 11656 | /* 29345 */ // GIR_Coverage, 1058, |
| 11657 | /* 29345 */ GIR_EraseRootFromParent_Done, |
| 11658 | /* 29346 */ // Label 846: @29346 |
| 11659 | /* 29346 */ GIM_Try, /*On fail goto*//*Label 847*/ GIMT_Encode4(29391), // Rule ID 1059 // |
| 11660 | /* 29351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11661 | /* 29354 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srar_d), |
| 11662 | /* 29359 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11663 | /* 29362 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11664 | /* 29365 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11665 | /* 29368 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11666 | /* 29372 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11667 | /* 29376 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11668 | /* 29380 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8529:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SRAR_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 11669 | /* 29380 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRAR_D), |
| 11670 | /* 29383 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11671 | /* 29385 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11672 | /* 29387 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11673 | /* 29389 */ GIR_RootConstrainSelectedInstOperands, |
| 11674 | /* 29390 */ // GIR_Coverage, 1059, |
| 11675 | /* 29390 */ GIR_EraseRootFromParent_Done, |
| 11676 | /* 29391 */ // Label 847: @29391 |
| 11677 | /* 29391 */ GIM_Try, /*On fail goto*//*Label 848*/ GIMT_Encode4(29436), // Rule ID 1072 // |
| 11678 | /* 29396 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11679 | /* 29399 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlr_b), |
| 11680 | /* 29404 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11681 | /* 29407 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11682 | /* 29410 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11683 | /* 29413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11684 | /* 29417 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11685 | /* 29421 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11686 | /* 29425 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8544:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SRLR_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11687 | /* 29425 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLR_B), |
| 11688 | /* 29428 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11689 | /* 29430 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11690 | /* 29432 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11691 | /* 29434 */ GIR_RootConstrainSelectedInstOperands, |
| 11692 | /* 29435 */ // GIR_Coverage, 1072, |
| 11693 | /* 29435 */ GIR_EraseRootFromParent_Done, |
| 11694 | /* 29436 */ // Label 848: @29436 |
| 11695 | /* 29436 */ GIM_Try, /*On fail goto*//*Label 849*/ GIMT_Encode4(29481), // Rule ID 1073 // |
| 11696 | /* 29441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11697 | /* 29444 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlr_h), |
| 11698 | /* 29449 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11699 | /* 29452 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11700 | /* 29455 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11701 | /* 29458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11702 | /* 29462 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11703 | /* 29466 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11704 | /* 29470 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8546:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SRLR_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11705 | /* 29470 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLR_H), |
| 11706 | /* 29473 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11707 | /* 29475 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11708 | /* 29477 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11709 | /* 29479 */ GIR_RootConstrainSelectedInstOperands, |
| 11710 | /* 29480 */ // GIR_Coverage, 1073, |
| 11711 | /* 29480 */ GIR_EraseRootFromParent_Done, |
| 11712 | /* 29481 */ // Label 849: @29481 |
| 11713 | /* 29481 */ GIM_Try, /*On fail goto*//*Label 850*/ GIMT_Encode4(29526), // Rule ID 1074 // |
| 11714 | /* 29486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11715 | /* 29489 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlr_w), |
| 11716 | /* 29494 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11717 | /* 29497 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11718 | /* 29500 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11719 | /* 29503 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11720 | /* 29507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11721 | /* 29511 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11722 | /* 29515 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8547:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SRLR_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11723 | /* 29515 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLR_W), |
| 11724 | /* 29518 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11725 | /* 29520 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11726 | /* 29522 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11727 | /* 29524 */ GIR_RootConstrainSelectedInstOperands, |
| 11728 | /* 29525 */ // GIR_Coverage, 1074, |
| 11729 | /* 29525 */ GIR_EraseRootFromParent_Done, |
| 11730 | /* 29526 */ // Label 850: @29526 |
| 11731 | /* 29526 */ GIM_Try, /*On fail goto*//*Label 851*/ GIMT_Encode4(29571), // Rule ID 1075 // |
| 11732 | /* 29531 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11733 | /* 29534 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_srlr_d), |
| 11734 | /* 29539 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11735 | /* 29542 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11736 | /* 29545 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11737 | /* 29548 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11738 | /* 29552 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11739 | /* 29556 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11740 | /* 29560 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8545:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SRLR_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 11741 | /* 29560 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRLR_D), |
| 11742 | /* 29563 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11743 | /* 29565 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11744 | /* 29567 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11745 | /* 29569 */ GIR_RootConstrainSelectedInstOperands, |
| 11746 | /* 29570 */ // GIR_Coverage, 1075, |
| 11747 | /* 29570 */ GIR_EraseRootFromParent_Done, |
| 11748 | /* 29571 */ // Label 851: @29571 |
| 11749 | /* 29571 */ GIM_Try, /*On fail goto*//*Label 852*/ GIMT_Encode4(29616), // Rule ID 1084 // |
| 11750 | /* 29576 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11751 | /* 29579 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_s_b), |
| 11752 | /* 29584 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11753 | /* 29587 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11754 | /* 29590 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11755 | /* 29593 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11756 | /* 29597 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11757 | /* 29601 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11758 | /* 29605 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8565:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SUBS_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11759 | /* 29605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_S_B), |
| 11760 | /* 29608 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11761 | /* 29610 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11762 | /* 29612 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11763 | /* 29614 */ GIR_RootConstrainSelectedInstOperands, |
| 11764 | /* 29615 */ // GIR_Coverage, 1084, |
| 11765 | /* 29615 */ GIR_EraseRootFromParent_Done, |
| 11766 | /* 29616 */ // Label 852: @29616 |
| 11767 | /* 29616 */ GIM_Try, /*On fail goto*//*Label 853*/ GIMT_Encode4(29661), // Rule ID 1085 // |
| 11768 | /* 29621 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11769 | /* 29624 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_s_h), |
| 11770 | /* 29629 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11771 | /* 29632 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11772 | /* 29635 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11773 | /* 29638 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11774 | /* 29642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11775 | /* 29646 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11776 | /* 29650 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8567:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SUBS_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11777 | /* 29650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_S_H), |
| 11778 | /* 29653 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11779 | /* 29655 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11780 | /* 29657 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11781 | /* 29659 */ GIR_RootConstrainSelectedInstOperands, |
| 11782 | /* 29660 */ // GIR_Coverage, 1085, |
| 11783 | /* 29660 */ GIR_EraseRootFromParent_Done, |
| 11784 | /* 29661 */ // Label 853: @29661 |
| 11785 | /* 29661 */ GIM_Try, /*On fail goto*//*Label 854*/ GIMT_Encode4(29706), // Rule ID 1086 // |
| 11786 | /* 29666 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11787 | /* 29669 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_s_w), |
| 11788 | /* 29674 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11789 | /* 29677 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11790 | /* 29680 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11791 | /* 29683 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11792 | /* 29687 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11793 | /* 29691 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11794 | /* 29695 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8568:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SUBS_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11795 | /* 29695 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_S_W), |
| 11796 | /* 29698 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11797 | /* 29700 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11798 | /* 29702 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11799 | /* 29704 */ GIR_RootConstrainSelectedInstOperands, |
| 11800 | /* 29705 */ // GIR_Coverage, 1086, |
| 11801 | /* 29705 */ GIR_EraseRootFromParent_Done, |
| 11802 | /* 29706 */ // Label 854: @29706 |
| 11803 | /* 29706 */ GIM_Try, /*On fail goto*//*Label 855*/ GIMT_Encode4(29751), // Rule ID 1087 // |
| 11804 | /* 29711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11805 | /* 29714 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_s_d), |
| 11806 | /* 29719 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11807 | /* 29722 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11808 | /* 29725 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11809 | /* 29728 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11810 | /* 29732 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11811 | /* 29736 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11812 | /* 29740 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8566:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SUBS_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 11813 | /* 29740 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_S_D), |
| 11814 | /* 29743 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11815 | /* 29745 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11816 | /* 29747 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11817 | /* 29749 */ GIR_RootConstrainSelectedInstOperands, |
| 11818 | /* 29750 */ // GIR_Coverage, 1087, |
| 11819 | /* 29750 */ GIR_EraseRootFromParent_Done, |
| 11820 | /* 29751 */ // Label 855: @29751 |
| 11821 | /* 29751 */ GIM_Try, /*On fail goto*//*Label 856*/ GIMT_Encode4(29796), // Rule ID 1088 // |
| 11822 | /* 29756 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11823 | /* 29759 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_u_b), |
| 11824 | /* 29764 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11825 | /* 29767 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11826 | /* 29770 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11827 | /* 29773 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11828 | /* 29777 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11829 | /* 29781 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11830 | /* 29785 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8569:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SUBS_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11831 | /* 29785 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_U_B), |
| 11832 | /* 29788 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11833 | /* 29790 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11834 | /* 29792 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11835 | /* 29794 */ GIR_RootConstrainSelectedInstOperands, |
| 11836 | /* 29795 */ // GIR_Coverage, 1088, |
| 11837 | /* 29795 */ GIR_EraseRootFromParent_Done, |
| 11838 | /* 29796 */ // Label 856: @29796 |
| 11839 | /* 29796 */ GIM_Try, /*On fail goto*//*Label 857*/ GIMT_Encode4(29841), // Rule ID 1089 // |
| 11840 | /* 29801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11841 | /* 29804 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_u_h), |
| 11842 | /* 29809 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11843 | /* 29812 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11844 | /* 29815 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11845 | /* 29818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11846 | /* 29822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11847 | /* 29826 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11848 | /* 29830 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8571:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SUBS_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11849 | /* 29830 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_U_H), |
| 11850 | /* 29833 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11851 | /* 29835 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11852 | /* 29837 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11853 | /* 29839 */ GIR_RootConstrainSelectedInstOperands, |
| 11854 | /* 29840 */ // GIR_Coverage, 1089, |
| 11855 | /* 29840 */ GIR_EraseRootFromParent_Done, |
| 11856 | /* 29841 */ // Label 857: @29841 |
| 11857 | /* 29841 */ GIM_Try, /*On fail goto*//*Label 858*/ GIMT_Encode4(29886), // Rule ID 1090 // |
| 11858 | /* 29846 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11859 | /* 29849 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_u_w), |
| 11860 | /* 29854 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11861 | /* 29857 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11862 | /* 29860 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11863 | /* 29863 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11864 | /* 29867 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11865 | /* 29871 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11866 | /* 29875 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8572:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SUBS_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11867 | /* 29875 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_U_W), |
| 11868 | /* 29878 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11869 | /* 29880 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11870 | /* 29882 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11871 | /* 29884 */ GIR_RootConstrainSelectedInstOperands, |
| 11872 | /* 29885 */ // GIR_Coverage, 1090, |
| 11873 | /* 29885 */ GIR_EraseRootFromParent_Done, |
| 11874 | /* 29886 */ // Label 858: @29886 |
| 11875 | /* 29886 */ GIM_Try, /*On fail goto*//*Label 859*/ GIMT_Encode4(29931), // Rule ID 1091 // |
| 11876 | /* 29891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11877 | /* 29894 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subs_u_d), |
| 11878 | /* 29899 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11879 | /* 29902 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11880 | /* 29905 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11881 | /* 29908 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11882 | /* 29912 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11883 | /* 29916 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11884 | /* 29920 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8570:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SUBS_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 11885 | /* 29920 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBS_U_D), |
| 11886 | /* 29923 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11887 | /* 29925 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11888 | /* 29927 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11889 | /* 29929 */ GIR_RootConstrainSelectedInstOperands, |
| 11890 | /* 29930 */ // GIR_Coverage, 1091, |
| 11891 | /* 29930 */ GIR_EraseRootFromParent_Done, |
| 11892 | /* 29931 */ // Label 859: @29931 |
| 11893 | /* 29931 */ GIM_Try, /*On fail goto*//*Label 860*/ GIMT_Encode4(29976), // Rule ID 1092 // |
| 11894 | /* 29936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11895 | /* 29939 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsus_u_b), |
| 11896 | /* 29944 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11897 | /* 29947 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11898 | /* 29950 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11899 | /* 29953 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11900 | /* 29957 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11901 | /* 29961 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11902 | /* 29965 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8573:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SUBSUS_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11903 | /* 29965 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUS_U_B), |
| 11904 | /* 29968 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11905 | /* 29970 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11906 | /* 29972 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11907 | /* 29974 */ GIR_RootConstrainSelectedInstOperands, |
| 11908 | /* 29975 */ // GIR_Coverage, 1092, |
| 11909 | /* 29975 */ GIR_EraseRootFromParent_Done, |
| 11910 | /* 29976 */ // Label 860: @29976 |
| 11911 | /* 29976 */ GIM_Try, /*On fail goto*//*Label 861*/ GIMT_Encode4(30021), // Rule ID 1093 // |
| 11912 | /* 29981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11913 | /* 29984 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsus_u_h), |
| 11914 | /* 29989 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11915 | /* 29992 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11916 | /* 29995 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11917 | /* 29998 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11918 | /* 30002 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11919 | /* 30006 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11920 | /* 30010 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8575:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SUBSUS_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11921 | /* 30010 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUS_U_H), |
| 11922 | /* 30013 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11923 | /* 30015 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11924 | /* 30017 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11925 | /* 30019 */ GIR_RootConstrainSelectedInstOperands, |
| 11926 | /* 30020 */ // GIR_Coverage, 1093, |
| 11927 | /* 30020 */ GIR_EraseRootFromParent_Done, |
| 11928 | /* 30021 */ // Label 861: @30021 |
| 11929 | /* 30021 */ GIM_Try, /*On fail goto*//*Label 862*/ GIMT_Encode4(30066), // Rule ID 1094 // |
| 11930 | /* 30026 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11931 | /* 30029 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsus_u_w), |
| 11932 | /* 30034 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 11933 | /* 30037 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 11934 | /* 30040 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 11935 | /* 30043 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11936 | /* 30047 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11937 | /* 30051 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 11938 | /* 30055 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8576:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SUBSUS_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 11939 | /* 30055 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUS_U_W), |
| 11940 | /* 30058 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11941 | /* 30060 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11942 | /* 30062 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11943 | /* 30064 */ GIR_RootConstrainSelectedInstOperands, |
| 11944 | /* 30065 */ // GIR_Coverage, 1094, |
| 11945 | /* 30065 */ GIR_EraseRootFromParent_Done, |
| 11946 | /* 30066 */ // Label 862: @30066 |
| 11947 | /* 30066 */ GIM_Try, /*On fail goto*//*Label 863*/ GIMT_Encode4(30111), // Rule ID 1095 // |
| 11948 | /* 30071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11949 | /* 30074 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsus_u_d), |
| 11950 | /* 30079 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 11951 | /* 30082 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 11952 | /* 30085 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 11953 | /* 30088 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11954 | /* 30092 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11955 | /* 30096 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 11956 | /* 30100 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8574:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SUBSUS_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 11957 | /* 30100 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUS_U_D), |
| 11958 | /* 30103 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11959 | /* 30105 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11960 | /* 30107 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11961 | /* 30109 */ GIR_RootConstrainSelectedInstOperands, |
| 11962 | /* 30110 */ // GIR_Coverage, 1095, |
| 11963 | /* 30110 */ GIR_EraseRootFromParent_Done, |
| 11964 | /* 30111 */ // Label 863: @30111 |
| 11965 | /* 30111 */ GIM_Try, /*On fail goto*//*Label 864*/ GIMT_Encode4(30156), // Rule ID 1096 // |
| 11966 | /* 30116 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11967 | /* 30119 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsuu_s_b), |
| 11968 | /* 30124 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 11969 | /* 30127 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 11970 | /* 30130 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 11971 | /* 30133 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11972 | /* 30137 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11973 | /* 30141 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 11974 | /* 30145 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8577:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SUBSUU_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 11975 | /* 30145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUU_S_B), |
| 11976 | /* 30148 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11977 | /* 30150 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11978 | /* 30152 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11979 | /* 30154 */ GIR_RootConstrainSelectedInstOperands, |
| 11980 | /* 30155 */ // GIR_Coverage, 1096, |
| 11981 | /* 30155 */ GIR_EraseRootFromParent_Done, |
| 11982 | /* 30156 */ // Label 864: @30156 |
| 11983 | /* 30156 */ GIM_Try, /*On fail goto*//*Label 865*/ GIMT_Encode4(30201), // Rule ID 1097 // |
| 11984 | /* 30161 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 11985 | /* 30164 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsuu_s_h), |
| 11986 | /* 30169 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 11987 | /* 30172 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 11988 | /* 30175 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 11989 | /* 30178 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11990 | /* 30182 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11991 | /* 30186 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 11992 | /* 30190 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8579:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SUBSUU_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 11993 | /* 30190 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUU_S_H), |
| 11994 | /* 30193 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 11995 | /* 30195 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 11996 | /* 30197 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 11997 | /* 30199 */ GIR_RootConstrainSelectedInstOperands, |
| 11998 | /* 30200 */ // GIR_Coverage, 1097, |
| 11999 | /* 30200 */ GIR_EraseRootFromParent_Done, |
| 12000 | /* 30201 */ // Label 865: @30201 |
| 12001 | /* 30201 */ GIM_Try, /*On fail goto*//*Label 866*/ GIMT_Encode4(30246), // Rule ID 1098 // |
| 12002 | /* 30206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12003 | /* 30209 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsuu_s_w), |
| 12004 | /* 30214 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 12005 | /* 30217 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 12006 | /* 30220 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 12007 | /* 30223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12008 | /* 30227 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12009 | /* 30231 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12010 | /* 30235 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8580:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SUBSUU_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 12011 | /* 30235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUU_S_W), |
| 12012 | /* 30238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12013 | /* 30240 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 12014 | /* 30242 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 12015 | /* 30244 */ GIR_RootConstrainSelectedInstOperands, |
| 12016 | /* 30245 */ // GIR_Coverage, 1098, |
| 12017 | /* 30245 */ GIR_EraseRootFromParent_Done, |
| 12018 | /* 30246 */ // Label 866: @30246 |
| 12019 | /* 30246 */ GIM_Try, /*On fail goto*//*Label 867*/ GIMT_Encode4(30291), // Rule ID 1099 // |
| 12020 | /* 30251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12021 | /* 30254 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subsuu_s_d), |
| 12022 | /* 30259 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 12023 | /* 30262 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 12024 | /* 30265 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 12025 | /* 30268 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12026 | /* 30272 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12027 | /* 30276 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12028 | /* 30280 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8578:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SUBSUU_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 12029 | /* 30280 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBSUU_S_D), |
| 12030 | /* 30283 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12031 | /* 30285 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 12032 | /* 30287 */ GIR_RootToRootCopy, /*OpIdx*/3, // wt |
| 12033 | /* 30289 */ GIR_RootConstrainSelectedInstOperands, |
| 12034 | /* 30290 */ // GIR_Coverage, 1099, |
| 12035 | /* 30290 */ GIR_EraseRootFromParent_Done, |
| 12036 | /* 30291 */ // Label 867: @30291 |
| 12037 | /* 30291 */ GIM_Try, /*On fail goto*//*Label 868*/ GIMT_Encode4(30339), // Rule ID 1298 // |
| 12038 | /* 30296 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12039 | /* 30299 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addq_s_ph), |
| 12040 | /* 30304 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12041 | /* 30307 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12042 | /* 30310 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12043 | /* 30313 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12044 | /* 30317 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12045 | /* 30321 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12046 | /* 30325 */ // (intrinsic_wo_chain:{ *:[v2i16] } 7939:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDQ_S_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12047 | /* 30325 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQ_S_PH_MM), |
| 12048 | /* 30328 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12049 | /* 30330 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12050 | /* 30332 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12051 | /* 30334 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12052 | /* 30337 */ GIR_RootConstrainSelectedInstOperands, |
| 12053 | /* 30338 */ // GIR_Coverage, 1298, |
| 12054 | /* 30338 */ GIR_EraseRootFromParent_Done, |
| 12055 | /* 30339 */ // Label 868: @30339 |
| 12056 | /* 30339 */ GIM_Try, /*On fail goto*//*Label 869*/ GIMT_Encode4(30387), // Rule ID 1300 // |
| 12057 | /* 30344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12058 | /* 30347 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addu_s_qb), |
| 12059 | /* 30352 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12060 | /* 30355 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12061 | /* 30358 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12062 | /* 30361 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12063 | /* 30365 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12064 | /* 30369 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12065 | /* 30373 */ // (intrinsic_wo_chain:{ *:[v4i8] } 7961:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (ADDU_S_QB_MM:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 12066 | /* 30373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDU_S_QB_MM), |
| 12067 | /* 30376 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12068 | /* 30378 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12069 | /* 30380 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12070 | /* 30382 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12071 | /* 30385 */ GIR_RootConstrainSelectedInstOperands, |
| 12072 | /* 30386 */ // GIR_Coverage, 1300, |
| 12073 | /* 30386 */ GIR_EraseRootFromParent_Done, |
| 12074 | /* 30387 */ // Label 869: @30387 |
| 12075 | /* 30387 */ GIM_Try, /*On fail goto*//*Label 870*/ GIMT_Encode4(30432), // Rule ID 1321 // |
| 12076 | /* 30392 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12077 | /* 30395 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_ph), |
| 12078 | /* 30400 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12079 | /* 30403 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12080 | /* 30406 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12081 | /* 30409 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12082 | /* 30413 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12083 | /* 30417 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12084 | /* 30421 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8489:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHRAV_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 12085 | /* 30421 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_PH_MM), |
| 12086 | /* 30424 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12087 | /* 30426 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 12088 | /* 30428 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12089 | /* 30430 */ GIR_RootConstrainSelectedInstOperands, |
| 12090 | /* 30431 */ // GIR_Coverage, 1321, |
| 12091 | /* 30431 */ GIR_EraseRootFromParent_Done, |
| 12092 | /* 30432 */ // Label 870: @30432 |
| 12093 | /* 30432 */ GIM_Try, /*On fail goto*//*Label 871*/ GIMT_Encode4(30477), // Rule ID 1322 // |
| 12094 | /* 30437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12095 | /* 30440 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_ph), |
| 12096 | /* 30445 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12097 | /* 30448 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12098 | /* 30451 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12099 | /* 30454 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12100 | /* 30458 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12101 | /* 30462 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12102 | /* 30466 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8491:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHRAV_R_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 12103 | /* 30466 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_R_PH_MM), |
| 12104 | /* 30469 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12105 | /* 30471 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 12106 | /* 30473 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12107 | /* 30475 */ GIR_RootConstrainSelectedInstOperands, |
| 12108 | /* 30476 */ // GIR_Coverage, 1322, |
| 12109 | /* 30476 */ GIR_EraseRootFromParent_Done, |
| 12110 | /* 30477 */ // Label 871: @30477 |
| 12111 | /* 30477 */ GIM_Try, /*On fail goto*//*Label 872*/ GIMT_Encode4(30522), // Rule ID 1323 // |
| 12112 | /* 30482 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12113 | /* 30485 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_w), |
| 12114 | /* 30490 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12115 | /* 30493 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12116 | /* 30496 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12117 | /* 30499 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12118 | /* 30503 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12119 | /* 30507 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12120 | /* 30511 */ // (intrinsic_wo_chain:{ *:[i32] } 8493:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHRAV_R_W_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 12121 | /* 30511 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_R_W_MM), |
| 12122 | /* 30514 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12123 | /* 30516 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 12124 | /* 30518 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12125 | /* 30520 */ GIR_RootConstrainSelectedInstOperands, |
| 12126 | /* 30521 */ // GIR_Coverage, 1323, |
| 12127 | /* 30521 */ GIR_EraseRootFromParent_Done, |
| 12128 | /* 30522 */ // Label 872: @30522 |
| 12129 | /* 30522 */ GIM_Try, /*On fail goto*//*Label 873*/ GIMT_Encode4(30567), // Rule ID 1325 // |
| 12130 | /* 30527 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12131 | /* 30530 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shrl_qb), |
| 12132 | /* 30535 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12133 | /* 30538 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12134 | /* 30541 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12135 | /* 30544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12136 | /* 30548 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12137 | /* 30552 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12138 | /* 30556 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8495:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHRLV_QB_MM:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 12139 | /* 30556 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRLV_QB_MM), |
| 12140 | /* 30559 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12141 | /* 30561 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 12142 | /* 30563 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12143 | /* 30565 */ GIR_RootConstrainSelectedInstOperands, |
| 12144 | /* 30566 */ // GIR_Coverage, 1325, |
| 12145 | /* 30566 */ GIR_EraseRootFromParent_Done, |
| 12146 | /* 30567 */ // Label 873: @30567 |
| 12147 | /* 30567 */ GIM_Try, /*On fail goto*//*Label 874*/ GIMT_Encode4(30615), // Rule ID 1336 // |
| 12148 | /* 30572 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12149 | /* 30575 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subq_s_ph), |
| 12150 | /* 30580 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12151 | /* 30583 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12152 | /* 30586 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12153 | /* 30589 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12154 | /* 30593 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12155 | /* 30597 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12156 | /* 30601 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8559:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBQ_S_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12157 | /* 30601 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQ_S_PH_MM), |
| 12158 | /* 30604 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12159 | /* 30606 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12160 | /* 30608 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12161 | /* 30610 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12162 | /* 30613 */ GIR_RootConstrainSelectedInstOperands, |
| 12163 | /* 30614 */ // GIR_Coverage, 1336, |
| 12164 | /* 30614 */ GIR_EraseRootFromParent_Done, |
| 12165 | /* 30615 */ // Label 874: @30615 |
| 12166 | /* 30615 */ GIM_Try, /*On fail goto*//*Label 875*/ GIMT_Encode4(30663), // Rule ID 1338 // |
| 12167 | /* 30620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12168 | /* 30623 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subu_s_qb), |
| 12169 | /* 30628 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12170 | /* 30631 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12171 | /* 30634 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12172 | /* 30637 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12173 | /* 30641 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12174 | /* 30645 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12175 | /* 30649 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8584:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (SUBU_S_QB_MM:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 12176 | /* 30649 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBU_S_QB_MM), |
| 12177 | /* 30652 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12178 | /* 30654 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12179 | /* 30656 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12180 | /* 30658 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12181 | /* 30661 */ GIR_RootConstrainSelectedInstOperands, |
| 12182 | /* 30662 */ // GIR_Coverage, 1338, |
| 12183 | /* 30662 */ GIR_EraseRootFromParent_Done, |
| 12184 | /* 30663 */ // Label 875: @30663 |
| 12185 | /* 30663 */ GIM_Try, /*On fail goto*//*Label 876*/ GIMT_Encode4(30708), // Rule ID 1348 // |
| 12186 | /* 30668 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12187 | /* 30671 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrq_ph_w), |
| 12188 | /* 30676 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12189 | /* 30679 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12190 | /* 30682 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12191 | /* 30685 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12192 | /* 30689 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12193 | /* 30693 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12194 | /* 30697 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8464:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (PRECRQ_PH_W_MM:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 12195 | /* 30697 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQ_PH_W_MM), |
| 12196 | /* 30700 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12197 | /* 30702 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12198 | /* 30704 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12199 | /* 30706 */ GIR_RootConstrainSelectedInstOperands, |
| 12200 | /* 30707 */ // GIR_Coverage, 1348, |
| 12201 | /* 30707 */ GIR_EraseRootFromParent_Done, |
| 12202 | /* 30708 */ // Label 876: @30708 |
| 12203 | /* 30708 */ GIM_Try, /*On fail goto*//*Label 877*/ GIMT_Encode4(30753), // Rule ID 1349 // |
| 12204 | /* 30713 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12205 | /* 30716 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrq_qb_ph), |
| 12206 | /* 30721 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12207 | /* 30724 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12208 | /* 30727 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12209 | /* 30730 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12210 | /* 30734 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12211 | /* 30738 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12212 | /* 30742 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8465:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECRQ_QB_PH_MM:{ *:[v4i8] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12213 | /* 30742 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQ_QB_PH_MM), |
| 12214 | /* 30745 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12215 | /* 30747 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12216 | /* 30749 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12217 | /* 30751 */ GIR_RootConstrainSelectedInstOperands, |
| 12218 | /* 30752 */ // GIR_Coverage, 1349, |
| 12219 | /* 30752 */ GIR_EraseRootFromParent_Done, |
| 12220 | /* 30753 */ // Label 877: @30753 |
| 12221 | /* 30753 */ GIM_Try, /*On fail goto*//*Label 878*/ GIMT_Encode4(30798), // Rule ID 1368 // |
| 12222 | /* 30758 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12223 | /* 30761 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_packrl_ph), |
| 12224 | /* 30766 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12225 | /* 30769 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12226 | /* 30772 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12227 | /* 30775 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12228 | /* 30779 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12229 | /* 30783 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12230 | /* 30787 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8436:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PACKRL_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12231 | /* 30787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PACKRL_PH_MM), |
| 12232 | /* 30790 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12233 | /* 30792 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12234 | /* 30794 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12235 | /* 30796 */ GIR_RootConstrainSelectedInstOperands, |
| 12236 | /* 30797 */ // GIR_Coverage, 1368, |
| 12237 | /* 30797 */ GIR_EraseRootFromParent_Done, |
| 12238 | /* 30798 */ // Label 878: @30798 |
| 12239 | /* 30798 */ GIM_Try, /*On fail goto*//*Label 879*/ GIMT_Encode4(30843), // Rule ID 1374 // |
| 12240 | /* 30803 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 12241 | /* 30806 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_modsub), |
| 12242 | /* 30811 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12243 | /* 30814 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12244 | /* 30817 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12245 | /* 30820 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12246 | /* 30824 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12247 | /* 30828 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12248 | /* 30832 */ // (intrinsic_wo_chain:{ *:[i32] } 8389:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MODSUB_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 12249 | /* 30832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MODSUB_MM), |
| 12250 | /* 30835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12251 | /* 30837 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12252 | /* 30839 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12253 | /* 30841 */ GIR_RootConstrainSelectedInstOperands, |
| 12254 | /* 30842 */ // GIR_Coverage, 1374, |
| 12255 | /* 30842 */ GIR_EraseRootFromParent_Done, |
| 12256 | /* 30843 */ // Label 879: @30843 |
| 12257 | /* 30843 */ GIM_Try, /*On fail goto*//*Label 880*/ GIMT_Encode4(30888), // Rule ID 1387 // |
| 12258 | /* 30848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12259 | /* 30851 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_ph), |
| 12260 | /* 30856 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12261 | /* 30859 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12262 | /* 30862 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12263 | /* 30865 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12264 | /* 30869 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12265 | /* 30873 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12266 | /* 30877 */ // (intrinsic_wo_chain:{ *:[v2i16] } 7941:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDQH_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12267 | /* 30877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_PH_MMR2), |
| 12268 | /* 30880 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12269 | /* 30882 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12270 | /* 30884 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12271 | /* 30886 */ GIR_RootConstrainSelectedInstOperands, |
| 12272 | /* 30887 */ // GIR_Coverage, 1387, |
| 12273 | /* 30887 */ GIR_EraseRootFromParent_Done, |
| 12274 | /* 30888 */ // Label 880: @30888 |
| 12275 | /* 30888 */ GIM_Try, /*On fail goto*//*Label 881*/ GIMT_Encode4(30933), // Rule ID 1388 // |
| 12276 | /* 30893 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12277 | /* 30896 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_r_ph), |
| 12278 | /* 30901 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12279 | /* 30904 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12280 | /* 30907 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12281 | /* 30910 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12282 | /* 30914 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12283 | /* 30918 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12284 | /* 30922 */ // (intrinsic_wo_chain:{ *:[v2i16] } 7942:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDQH_R_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12285 | /* 30922 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_R_PH_MMR2), |
| 12286 | /* 30925 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12287 | /* 30927 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12288 | /* 30929 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12289 | /* 30931 */ GIR_RootConstrainSelectedInstOperands, |
| 12290 | /* 30932 */ // GIR_Coverage, 1388, |
| 12291 | /* 30932 */ GIR_EraseRootFromParent_Done, |
| 12292 | /* 30933 */ // Label 881: @30933 |
| 12293 | /* 30933 */ GIM_Try, /*On fail goto*//*Label 882*/ GIMT_Encode4(30978), // Rule ID 1389 // |
| 12294 | /* 30938 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12295 | /* 30941 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_w), |
| 12296 | /* 30946 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12297 | /* 30949 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12298 | /* 30952 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12299 | /* 30955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12300 | /* 30959 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12301 | /* 30963 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12302 | /* 30967 */ // (intrinsic_wo_chain:{ *:[i32] } 7944:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDQH_W_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 12303 | /* 30967 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_W_MMR2), |
| 12304 | /* 30970 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12305 | /* 30972 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12306 | /* 30974 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12307 | /* 30976 */ GIR_RootConstrainSelectedInstOperands, |
| 12308 | /* 30977 */ // GIR_Coverage, 1389, |
| 12309 | /* 30977 */ GIR_EraseRootFromParent_Done, |
| 12310 | /* 30978 */ // Label 882: @30978 |
| 12311 | /* 30978 */ GIM_Try, /*On fail goto*//*Label 883*/ GIMT_Encode4(31023), // Rule ID 1390 // |
| 12312 | /* 30983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12313 | /* 30986 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addqh_r_w), |
| 12314 | /* 30991 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12315 | /* 30994 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12316 | /* 30997 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12317 | /* 31000 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12318 | /* 31004 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12319 | /* 31008 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12320 | /* 31012 */ // (intrinsic_wo_chain:{ *:[i32] } 7943:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDQH_R_W_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 12321 | /* 31012 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQH_R_W_MMR2), |
| 12322 | /* 31015 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12323 | /* 31017 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12324 | /* 31019 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12325 | /* 31021 */ GIR_RootConstrainSelectedInstOperands, |
| 12326 | /* 31022 */ // GIR_Coverage, 1390, |
| 12327 | /* 31022 */ GIR_EraseRootFromParent_Done, |
| 12328 | /* 31023 */ // Label 883: @31023 |
| 12329 | /* 31023 */ GIM_Try, /*On fail goto*//*Label 884*/ GIMT_Encode4(31068), // Rule ID 1393 // |
| 12330 | /* 31028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12331 | /* 31031 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adduh_qb), |
| 12332 | /* 31036 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12333 | /* 31039 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12334 | /* 31042 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12335 | /* 31045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12336 | /* 31049 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12337 | /* 31053 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12338 | /* 31057 */ // (intrinsic_wo_chain:{ *:[v4i8] } 7962:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (ADDUH_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 12339 | /* 31057 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDUH_QB_MMR2), |
| 12340 | /* 31060 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12341 | /* 31062 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12342 | /* 31064 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12343 | /* 31066 */ GIR_RootConstrainSelectedInstOperands, |
| 12344 | /* 31067 */ // GIR_Coverage, 1393, |
| 12345 | /* 31067 */ GIR_EraseRootFromParent_Done, |
| 12346 | /* 31068 */ // Label 884: @31068 |
| 12347 | /* 31068 */ GIM_Try, /*On fail goto*//*Label 885*/ GIMT_Encode4(31113), // Rule ID 1394 // |
| 12348 | /* 31073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12349 | /* 31076 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_adduh_r_qb), |
| 12350 | /* 31081 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12351 | /* 31084 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12352 | /* 31087 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12353 | /* 31090 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12354 | /* 31094 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12355 | /* 31098 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12356 | /* 31102 */ // (intrinsic_wo_chain:{ *:[v4i8] } 7963:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (ADDUH_R_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 12357 | /* 31102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDUH_R_QB_MMR2), |
| 12358 | /* 31105 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12359 | /* 31107 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12360 | /* 31109 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12361 | /* 31111 */ GIR_RootConstrainSelectedInstOperands, |
| 12362 | /* 31112 */ // GIR_Coverage, 1394, |
| 12363 | /* 31112 */ GIR_EraseRootFromParent_Done, |
| 12364 | /* 31113 */ // Label 885: @31113 |
| 12365 | /* 31113 */ GIM_Try, /*On fail goto*//*Label 886*/ GIMT_Encode4(31158), // Rule ID 1400 // |
| 12366 | /* 31118 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12367 | /* 31121 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_qb), |
| 12368 | /* 31126 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12369 | /* 31129 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12370 | /* 31132 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12371 | /* 31135 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12372 | /* 31139 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12373 | /* 31143 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12374 | /* 31147 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8490:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHRAV_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 12375 | /* 31147 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_QB_MMR2), |
| 12376 | /* 31150 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12377 | /* 31152 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 12378 | /* 31154 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12379 | /* 31156 */ GIR_RootConstrainSelectedInstOperands, |
| 12380 | /* 31157 */ // GIR_Coverage, 1400, |
| 12381 | /* 31157 */ GIR_EraseRootFromParent_Done, |
| 12382 | /* 31158 */ // Label 886: @31158 |
| 12383 | /* 31158 */ GIM_Try, /*On fail goto*//*Label 887*/ GIMT_Encode4(31203), // Rule ID 1401 // |
| 12384 | /* 31163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12385 | /* 31166 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shra_r_qb), |
| 12386 | /* 31171 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12387 | /* 31174 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12388 | /* 31177 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12389 | /* 31180 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12390 | /* 31184 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12391 | /* 31188 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12392 | /* 31192 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8492:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHRAV_R_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 12393 | /* 31192 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRAV_R_QB_MMR2), |
| 12394 | /* 31195 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12395 | /* 31197 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 12396 | /* 31199 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12397 | /* 31201 */ GIR_RootConstrainSelectedInstOperands, |
| 12398 | /* 31202 */ // GIR_Coverage, 1401, |
| 12399 | /* 31202 */ GIR_EraseRootFromParent_Done, |
| 12400 | /* 31203 */ // Label 887: @31203 |
| 12401 | /* 31203 */ GIM_Try, /*On fail goto*//*Label 888*/ GIMT_Encode4(31248), // Rule ID 1406 // |
| 12402 | /* 31208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12403 | /* 31211 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shrl_ph), |
| 12404 | /* 31216 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12405 | /* 31219 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12406 | /* 31222 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12407 | /* 31225 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12408 | /* 31229 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12409 | /* 31233 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12410 | /* 31237 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8494:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHRLV_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 12411 | /* 31237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHRLV_PH_MMR2), |
| 12412 | /* 31240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12413 | /* 31242 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 12414 | /* 31244 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12415 | /* 31246 */ GIR_RootConstrainSelectedInstOperands, |
| 12416 | /* 31247 */ // GIR_Coverage, 1406, |
| 12417 | /* 31247 */ GIR_EraseRootFromParent_Done, |
| 12418 | /* 31248 */ // Label 888: @31248 |
| 12419 | /* 31248 */ GIM_Try, /*On fail goto*//*Label 889*/ GIMT_Encode4(31293), // Rule ID 1407 // |
| 12420 | /* 31253 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12421 | /* 31256 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_ph), |
| 12422 | /* 31261 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12423 | /* 31264 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12424 | /* 31267 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12425 | /* 31270 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12426 | /* 31274 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12427 | /* 31278 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12428 | /* 31282 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8561:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBQH_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12429 | /* 31282 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_PH_MMR2), |
| 12430 | /* 31285 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12431 | /* 31287 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12432 | /* 31289 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12433 | /* 31291 */ GIR_RootConstrainSelectedInstOperands, |
| 12434 | /* 31292 */ // GIR_Coverage, 1407, |
| 12435 | /* 31292 */ GIR_EraseRootFromParent_Done, |
| 12436 | /* 31293 */ // Label 889: @31293 |
| 12437 | /* 31293 */ GIM_Try, /*On fail goto*//*Label 890*/ GIMT_Encode4(31338), // Rule ID 1408 // |
| 12438 | /* 31298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12439 | /* 31301 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_r_ph), |
| 12440 | /* 31306 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12441 | /* 31309 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12442 | /* 31312 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12443 | /* 31315 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12444 | /* 31319 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12445 | /* 31323 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12446 | /* 31327 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8562:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBQH_R_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 12447 | /* 31327 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_R_PH_MMR2), |
| 12448 | /* 31330 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12449 | /* 31332 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12450 | /* 31334 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12451 | /* 31336 */ GIR_RootConstrainSelectedInstOperands, |
| 12452 | /* 31337 */ // GIR_Coverage, 1408, |
| 12453 | /* 31337 */ GIR_EraseRootFromParent_Done, |
| 12454 | /* 31338 */ // Label 890: @31338 |
| 12455 | /* 31338 */ GIM_Try, /*On fail goto*//*Label 891*/ GIMT_Encode4(31383), // Rule ID 1409 // |
| 12456 | /* 31343 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12457 | /* 31346 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_w), |
| 12458 | /* 31351 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12459 | /* 31354 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12460 | /* 31357 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12461 | /* 31360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12462 | /* 31364 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12463 | /* 31368 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12464 | /* 31372 */ // (intrinsic_wo_chain:{ *:[i32] } 8564:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBQH_W_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 12465 | /* 31372 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_W_MMR2), |
| 12466 | /* 31375 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12467 | /* 31377 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12468 | /* 31379 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12469 | /* 31381 */ GIR_RootConstrainSelectedInstOperands, |
| 12470 | /* 31382 */ // GIR_Coverage, 1409, |
| 12471 | /* 31382 */ GIR_EraseRootFromParent_Done, |
| 12472 | /* 31383 */ // Label 891: @31383 |
| 12473 | /* 31383 */ GIM_Try, /*On fail goto*//*Label 892*/ GIMT_Encode4(31428), // Rule ID 1410 // |
| 12474 | /* 31388 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12475 | /* 31391 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subqh_r_w), |
| 12476 | /* 31396 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12477 | /* 31399 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12478 | /* 31402 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12479 | /* 31405 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12480 | /* 31409 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12481 | /* 31413 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12482 | /* 31417 */ // (intrinsic_wo_chain:{ *:[i32] } 8563:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBQH_R_W_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 12483 | /* 31417 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQH_R_W_MMR2), |
| 12484 | /* 31420 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12485 | /* 31422 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12486 | /* 31424 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12487 | /* 31426 */ GIR_RootConstrainSelectedInstOperands, |
| 12488 | /* 31427 */ // GIR_Coverage, 1410, |
| 12489 | /* 31427 */ GIR_EraseRootFromParent_Done, |
| 12490 | /* 31428 */ // Label 892: @31428 |
| 12491 | /* 31428 */ GIM_Try, /*On fail goto*//*Label 893*/ GIMT_Encode4(31473), // Rule ID 1413 // |
| 12492 | /* 31433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12493 | /* 31436 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subuh_qb), |
| 12494 | /* 31441 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12495 | /* 31444 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12496 | /* 31447 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12497 | /* 31450 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12498 | /* 31454 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12499 | /* 31458 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12500 | /* 31462 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8585:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (SUBUH_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 12501 | /* 31462 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBUH_QB_MMR2), |
| 12502 | /* 31465 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12503 | /* 31467 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12504 | /* 31469 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12505 | /* 31471 */ GIR_RootConstrainSelectedInstOperands, |
| 12506 | /* 31472 */ // GIR_Coverage, 1413, |
| 12507 | /* 31472 */ GIR_EraseRootFromParent_Done, |
| 12508 | /* 31473 */ // Label 893: @31473 |
| 12509 | /* 31473 */ GIM_Try, /*On fail goto*//*Label 894*/ GIMT_Encode4(31518), // Rule ID 1414 // |
| 12510 | /* 31478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12511 | /* 31481 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subuh_r_qb), |
| 12512 | /* 31486 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12513 | /* 31489 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12514 | /* 31492 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12515 | /* 31495 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12516 | /* 31499 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12517 | /* 31503 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12518 | /* 31507 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8586:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (SUBUH_R_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 12519 | /* 31507 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBUH_R_QB_MMR2), |
| 12520 | /* 31510 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12521 | /* 31512 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 12522 | /* 31514 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 12523 | /* 31516 */ GIR_RootConstrainSelectedInstOperands, |
| 12524 | /* 31517 */ // GIR_Coverage, 1414, |
| 12525 | /* 31517 */ GIR_EraseRootFromParent_Done, |
| 12526 | /* 31518 */ // Label 894: @31518 |
| 12527 | /* 31518 */ GIM_Try, /*On fail goto*//*Label 895*/ GIMT_Encode4(31558), // Rule ID 2052 // |
| 12528 | /* 31523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 12529 | /* 31526 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addq_ph), |
| 12530 | /* 31531 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12531 | /* 31534 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12532 | /* 31537 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12533 | /* 31540 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12534 | /* 31544 */ // (intrinsic_wo_chain:{ *:[v2i16] } 7938:{ *:[iPTR] }, v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) => (ADDQ_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) |
| 12535 | /* 31544 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQ_PH), |
| 12536 | /* 31547 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12537 | /* 31549 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 12538 | /* 31551 */ GIR_RootToRootCopy, /*OpIdx*/3, // b |
| 12539 | /* 31553 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12540 | /* 31556 */ GIR_RootConstrainSelectedInstOperands, |
| 12541 | /* 31557 */ // GIR_Coverage, 2052, |
| 12542 | /* 31557 */ GIR_EraseRootFromParent_Done, |
| 12543 | /* 31558 */ // Label 895: @31558 |
| 12544 | /* 31558 */ GIM_Try, /*On fail goto*//*Label 896*/ GIMT_Encode4(31598), // Rule ID 2054 // |
| 12545 | /* 31563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 12546 | /* 31566 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subq_ph), |
| 12547 | /* 31571 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12548 | /* 31574 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 12549 | /* 31577 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 12550 | /* 31580 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12551 | /* 31584 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8558:{ *:[iPTR] }, v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) => (SUBQ_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) |
| 12552 | /* 31584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQ_PH), |
| 12553 | /* 31587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12554 | /* 31589 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 12555 | /* 31591 */ GIR_RootToRootCopy, /*OpIdx*/3, // b |
| 12556 | /* 31593 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12557 | /* 31596 */ GIR_RootConstrainSelectedInstOperands, |
| 12558 | /* 31597 */ // GIR_Coverage, 2054, |
| 12559 | /* 31597 */ GIR_EraseRootFromParent_Done, |
| 12560 | /* 31598 */ // Label 896: @31598 |
| 12561 | /* 31598 */ GIM_Try, /*On fail goto*//*Label 897*/ GIMT_Encode4(31638), // Rule ID 2058 // |
| 12562 | /* 31603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 12563 | /* 31606 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addu_qb), |
| 12564 | /* 31611 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12565 | /* 31614 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12566 | /* 31617 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12567 | /* 31620 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12568 | /* 31624 */ // (intrinsic_wo_chain:{ *:[v4i8] } 7959:{ *:[iPTR] }, v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) => (ADDU_QB:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) |
| 12569 | /* 31624 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDU_QB), |
| 12570 | /* 31627 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12571 | /* 31629 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 12572 | /* 31631 */ GIR_RootToRootCopy, /*OpIdx*/3, // b |
| 12573 | /* 31633 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12574 | /* 31636 */ GIR_RootConstrainSelectedInstOperands, |
| 12575 | /* 31637 */ // GIR_Coverage, 2058, |
| 12576 | /* 31637 */ GIR_EraseRootFromParent_Done, |
| 12577 | /* 31638 */ // Label 897: @31638 |
| 12578 | /* 31638 */ GIM_Try, /*On fail goto*//*Label 898*/ GIMT_Encode4(31678), // Rule ID 2060 // |
| 12579 | /* 31643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 12580 | /* 31646 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subu_qb), |
| 12581 | /* 31651 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 12582 | /* 31654 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 12583 | /* 31657 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 12584 | /* 31660 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12585 | /* 31664 */ // (intrinsic_wo_chain:{ *:[v4i8] } 8582:{ *:[iPTR] }, v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) => (SUBU_QB:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, v4i8:{ *:[v4i8] }:$b) |
| 12586 | /* 31664 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBU_QB), |
| 12587 | /* 31667 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 12588 | /* 31669 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 12589 | /* 31671 */ GIR_RootToRootCopy, /*OpIdx*/3, // b |
| 12590 | /* 31673 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 12591 | /* 31676 */ GIR_RootConstrainSelectedInstOperands, |
| 12592 | /* 31677 */ // GIR_Coverage, 2060, |
| 12593 | /* 31677 */ GIR_EraseRootFromParent_Done, |
| 12594 | /* 31678 */ // Label 898: @31678 |
| 12595 | /* 31678 */ GIM_Reject, |
| 12596 | /* 31679 */ // Label 684: @31679 |
| 12597 | /* 31679 */ GIM_Try, /*On fail goto*//*Label 899*/ GIMT_Encode4(34193), |
| 12598 | /* 31684 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/5, |
| 12599 | /* 31687 */ GIM_Try, /*On fail goto*//*Label 900*/ GIMT_Encode4(31742), // Rule ID 552 // |
| 12600 | /* 31692 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 12601 | /* 31695 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precr_sra_ph_w), |
| 12602 | /* 31700 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12603 | /* 31703 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12604 | /* 31706 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12605 | /* 31709 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12606 | /* 31713 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12607 | /* 31717 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12608 | /* 31721 */ // MIs[0] sa |
| 12609 | /* 31721 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12610 | /* 31724 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12611 | /* 31729 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8462:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (PRECR_SRA_PH_W:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12612 | /* 31729 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECR_SRA_PH_W), |
| 12613 | /* 31732 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12614 | /* 31734 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12615 | /* 31736 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12616 | /* 31738 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12617 | /* 31740 */ GIR_RootConstrainSelectedInstOperands, |
| 12618 | /* 31741 */ // GIR_Coverage, 552, |
| 12619 | /* 31741 */ GIR_EraseRootFromParent_Done, |
| 12620 | /* 31742 */ // Label 900: @31742 |
| 12621 | /* 31742 */ GIM_Try, /*On fail goto*//*Label 901*/ GIMT_Encode4(31797), // Rule ID 553 // |
| 12622 | /* 31747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 12623 | /* 31750 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precr_sra_r_ph_w), |
| 12624 | /* 31755 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12625 | /* 31758 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12626 | /* 31761 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12627 | /* 31764 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12628 | /* 31768 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12629 | /* 31772 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12630 | /* 31776 */ // MIs[0] sa |
| 12631 | /* 31776 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12632 | /* 31779 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12633 | /* 31784 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8463:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (PRECR_SRA_R_PH_W:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12634 | /* 31784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECR_SRA_R_PH_W), |
| 12635 | /* 31787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12636 | /* 31789 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12637 | /* 31791 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12638 | /* 31793 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12639 | /* 31795 */ GIR_RootConstrainSelectedInstOperands, |
| 12640 | /* 31796 */ // GIR_Coverage, 553, |
| 12641 | /* 31796 */ GIR_EraseRootFromParent_Done, |
| 12642 | /* 31797 */ // Label 901: @31797 |
| 12643 | /* 31797 */ GIM_Try, /*On fail goto*//*Label 902*/ GIMT_Encode4(31852), // Rule ID 558 // |
| 12644 | /* 31802 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 12645 | /* 31805 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_append), |
| 12646 | /* 31810 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12647 | /* 31813 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12648 | /* 31816 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12649 | /* 31819 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12650 | /* 31823 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12651 | /* 31827 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12652 | /* 31831 */ // MIs[0] sa |
| 12653 | /* 31831 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12654 | /* 31834 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12655 | /* 31839 */ // (intrinsic_wo_chain:{ *:[i32] } 7975:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (APPEND:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12656 | /* 31839 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::APPEND), |
| 12657 | /* 31842 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12658 | /* 31844 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12659 | /* 31846 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12660 | /* 31848 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12661 | /* 31850 */ GIR_RootConstrainSelectedInstOperands, |
| 12662 | /* 31851 */ // GIR_Coverage, 558, |
| 12663 | /* 31851 */ GIR_EraseRootFromParent_Done, |
| 12664 | /* 31852 */ // Label 902: @31852 |
| 12665 | /* 31852 */ GIM_Try, /*On fail goto*//*Label 903*/ GIMT_Encode4(31907), // Rule ID 559 // |
| 12666 | /* 31857 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 12667 | /* 31860 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_balign), |
| 12668 | /* 31865 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12669 | /* 31868 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12670 | /* 31871 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12671 | /* 31874 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12672 | /* 31878 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12673 | /* 31882 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12674 | /* 31886 */ // MIs[0] sa |
| 12675 | /* 31886 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12676 | /* 31889 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt2), |
| 12677 | /* 31894 */ // (intrinsic_wo_chain:{ *:[i32] } 8000:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt2>>:$sa) => (BALIGN:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12678 | /* 31894 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BALIGN), |
| 12679 | /* 31897 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12680 | /* 31899 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12681 | /* 31901 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12682 | /* 31903 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12683 | /* 31905 */ GIR_RootConstrainSelectedInstOperands, |
| 12684 | /* 31906 */ // GIR_Coverage, 559, |
| 12685 | /* 31906 */ GIR_EraseRootFromParent_Done, |
| 12686 | /* 31907 */ // Label 903: @31907 |
| 12687 | /* 31907 */ GIM_Try, /*On fail goto*//*Label 904*/ GIMT_Encode4(31962), // Rule ID 560 // |
| 12688 | /* 31912 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 12689 | /* 31915 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_prepend), |
| 12690 | /* 31920 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12691 | /* 31923 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12692 | /* 31926 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12693 | /* 31929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12694 | /* 31933 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12695 | /* 31937 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12696 | /* 31941 */ // MIs[0] sa |
| 12697 | /* 31941 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12698 | /* 31944 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12699 | /* 31949 */ // (intrinsic_wo_chain:{ *:[i32] } 8468:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (PREPEND:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12700 | /* 31949 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PREPEND), |
| 12701 | /* 31952 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12702 | /* 31954 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12703 | /* 31956 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12704 | /* 31958 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12705 | /* 31960 */ GIR_RootConstrainSelectedInstOperands, |
| 12706 | /* 31961 */ // GIR_Coverage, 560, |
| 12707 | /* 31961 */ GIR_EraseRootFromParent_Done, |
| 12708 | /* 31962 */ // Label 904: @31962 |
| 12709 | /* 31962 */ GIM_Try, /*On fail goto*//*Label 905*/ GIMT_Encode4(32017), // Rule ID 1028 // |
| 12710 | /* 31967 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12711 | /* 31970 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sldi_b), |
| 12712 | /* 31975 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 12713 | /* 31978 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 12714 | /* 31981 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 12715 | /* 31984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 12716 | /* 31988 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 12717 | /* 31992 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 12718 | /* 31996 */ // MIs[0] n |
| 12719 | /* 31996 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12720 | /* 31999 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt4), |
| 12721 | /* 32004 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8500:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt4>>:$n) => (SLDI_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, (timm:{ *:[i32] }):$n) |
| 12722 | /* 32004 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLDI_B), |
| 12723 | /* 32007 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12724 | /* 32009 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12725 | /* 32011 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12726 | /* 32013 */ GIR_RootToRootCopy, /*OpIdx*/4, // n |
| 12727 | /* 32015 */ GIR_RootConstrainSelectedInstOperands, |
| 12728 | /* 32016 */ // GIR_Coverage, 1028, |
| 12729 | /* 32016 */ GIR_EraseRootFromParent_Done, |
| 12730 | /* 32017 */ // Label 905: @32017 |
| 12731 | /* 32017 */ GIM_Try, /*On fail goto*//*Label 906*/ GIMT_Encode4(32072), // Rule ID 1029 // |
| 12732 | /* 32022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12733 | /* 32025 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sldi_h), |
| 12734 | /* 32030 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 12735 | /* 32033 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 12736 | /* 32036 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 12737 | /* 32039 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 12738 | /* 32043 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 12739 | /* 32047 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 12740 | /* 32051 */ // MIs[0] n |
| 12741 | /* 32051 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12742 | /* 32054 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt3), |
| 12743 | /* 32059 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8502:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt3>>:$n) => (SLDI_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, (timm:{ *:[i32] }):$n) |
| 12744 | /* 32059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLDI_H), |
| 12745 | /* 32062 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12746 | /* 32064 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12747 | /* 32066 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12748 | /* 32068 */ GIR_RootToRootCopy, /*OpIdx*/4, // n |
| 12749 | /* 32070 */ GIR_RootConstrainSelectedInstOperands, |
| 12750 | /* 32071 */ // GIR_Coverage, 1029, |
| 12751 | /* 32071 */ GIR_EraseRootFromParent_Done, |
| 12752 | /* 32072 */ // Label 906: @32072 |
| 12753 | /* 32072 */ GIM_Try, /*On fail goto*//*Label 907*/ GIMT_Encode4(32127), // Rule ID 1030 // |
| 12754 | /* 32077 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12755 | /* 32080 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sldi_w), |
| 12756 | /* 32085 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 12757 | /* 32088 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 12758 | /* 32091 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 12759 | /* 32094 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12760 | /* 32098 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12761 | /* 32102 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12762 | /* 32106 */ // MIs[0] n |
| 12763 | /* 32106 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12764 | /* 32109 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt2), |
| 12765 | /* 32114 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8503:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt2>>:$n) => (SLDI_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, (timm:{ *:[i32] }):$n) |
| 12766 | /* 32114 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLDI_W), |
| 12767 | /* 32117 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12768 | /* 32119 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12769 | /* 32121 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12770 | /* 32123 */ GIR_RootToRootCopy, /*OpIdx*/4, // n |
| 12771 | /* 32125 */ GIR_RootConstrainSelectedInstOperands, |
| 12772 | /* 32126 */ // GIR_Coverage, 1030, |
| 12773 | /* 32126 */ GIR_EraseRootFromParent_Done, |
| 12774 | /* 32127 */ // Label 907: @32127 |
| 12775 | /* 32127 */ GIM_Try, /*On fail goto*//*Label 908*/ GIMT_Encode4(32182), // Rule ID 1031 // |
| 12776 | /* 32132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12777 | /* 32135 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sldi_d), |
| 12778 | /* 32140 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 12779 | /* 32143 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 12780 | /* 32146 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 12781 | /* 32149 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12782 | /* 32153 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12783 | /* 32157 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12784 | /* 32161 */ // MIs[0] n |
| 12785 | /* 32161 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12786 | /* 32164 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt1), |
| 12787 | /* 32169 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8501:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] })<<P:Predicate_timmZExt1>>:$n) => (SLDI_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, (timm:{ *:[i32] }):$n) |
| 12788 | /* 32169 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLDI_D), |
| 12789 | /* 32172 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12790 | /* 32174 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12791 | /* 32176 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12792 | /* 32178 */ GIR_RootToRootCopy, /*OpIdx*/4, // n |
| 12793 | /* 32180 */ GIR_RootConstrainSelectedInstOperands, |
| 12794 | /* 32181 */ // GIR_Coverage, 1031, |
| 12795 | /* 32181 */ GIR_EraseRootFromParent_Done, |
| 12796 | /* 32182 */ // Label 908: @32182 |
| 12797 | /* 32182 */ GIM_Try, /*On fail goto*//*Label 909*/ GIMT_Encode4(32237), // Rule ID 1424 // |
| 12798 | /* 32187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12799 | /* 32190 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precr_sra_ph_w), |
| 12800 | /* 32195 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12801 | /* 32198 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12802 | /* 32201 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12803 | /* 32204 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12804 | /* 32208 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12805 | /* 32212 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12806 | /* 32216 */ // MIs[0] sa |
| 12807 | /* 32216 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12808 | /* 32219 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12809 | /* 32224 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8462:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (PRECR_SRA_PH_W_MMR2:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12810 | /* 32224 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECR_SRA_PH_W_MMR2), |
| 12811 | /* 32227 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12812 | /* 32229 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12813 | /* 32231 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12814 | /* 32233 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12815 | /* 32235 */ GIR_RootConstrainSelectedInstOperands, |
| 12816 | /* 32236 */ // GIR_Coverage, 1424, |
| 12817 | /* 32236 */ GIR_EraseRootFromParent_Done, |
| 12818 | /* 32237 */ // Label 909: @32237 |
| 12819 | /* 32237 */ GIM_Try, /*On fail goto*//*Label 910*/ GIMT_Encode4(32292), // Rule ID 1425 // |
| 12820 | /* 32242 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12821 | /* 32245 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precr_sra_r_ph_w), |
| 12822 | /* 32250 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 12823 | /* 32253 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12824 | /* 32256 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12825 | /* 32259 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 12826 | /* 32263 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12827 | /* 32267 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12828 | /* 32271 */ // MIs[0] sa |
| 12829 | /* 32271 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12830 | /* 32274 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12831 | /* 32279 */ // (intrinsic_wo_chain:{ *:[v2i16] } 8463:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (PRECR_SRA_R_PH_W_MMR2:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12832 | /* 32279 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECR_SRA_R_PH_W_MMR2), |
| 12833 | /* 32282 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12834 | /* 32284 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12835 | /* 32286 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12836 | /* 32288 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12837 | /* 32290 */ GIR_RootConstrainSelectedInstOperands, |
| 12838 | /* 32291 */ // GIR_Coverage, 1425, |
| 12839 | /* 32291 */ GIR_EraseRootFromParent_Done, |
| 12840 | /* 32292 */ // Label 910: @32292 |
| 12841 | /* 32292 */ GIM_Try, /*On fail goto*//*Label 911*/ GIMT_Encode4(32347), // Rule ID 1426 // |
| 12842 | /* 32297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12843 | /* 32300 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_prepend), |
| 12844 | /* 32305 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12845 | /* 32308 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12846 | /* 32311 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12847 | /* 32314 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12848 | /* 32318 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12849 | /* 32322 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12850 | /* 32326 */ // MIs[0] sa |
| 12851 | /* 32326 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12852 | /* 32329 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12853 | /* 32334 */ // (intrinsic_wo_chain:{ *:[i32] } 8468:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (PREPEND_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12854 | /* 32334 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PREPEND_MMR2), |
| 12855 | /* 32337 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12856 | /* 32339 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12857 | /* 32341 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12858 | /* 32343 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12859 | /* 32345 */ GIR_RootConstrainSelectedInstOperands, |
| 12860 | /* 32346 */ // GIR_Coverage, 1426, |
| 12861 | /* 32346 */ GIR_EraseRootFromParent_Done, |
| 12862 | /* 32347 */ // Label 911: @32347 |
| 12863 | /* 32347 */ GIM_Try, /*On fail goto*//*Label 912*/ GIMT_Encode4(32402), // Rule ID 1427 // |
| 12864 | /* 32352 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12865 | /* 32355 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_append), |
| 12866 | /* 32360 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12867 | /* 32363 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12868 | /* 32366 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12869 | /* 32369 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12870 | /* 32373 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12871 | /* 32377 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12872 | /* 32381 */ // MIs[0] sa |
| 12873 | /* 32381 */ GIM_CheckIsImm, /*MI*/0, /*Op*/4, |
| 12874 | /* 32384 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt5), |
| 12875 | /* 32389 */ // (intrinsic_wo_chain:{ *:[i32] } 7975:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt5>>:$sa) => (APPEND_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$sa, GPR32Opnd:{ *:[i32] }:$src) |
| 12876 | /* 32389 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::APPEND_MMR2), |
| 12877 | /* 32392 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12878 | /* 32394 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12879 | /* 32396 */ GIR_RootToRootCopy, /*OpIdx*/4, // sa |
| 12880 | /* 32398 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12881 | /* 32400 */ GIR_RootConstrainSelectedInstOperands, |
| 12882 | /* 32401 */ // GIR_Coverage, 1427, |
| 12883 | /* 32401 */ GIR_EraseRootFromParent_Done, |
| 12884 | /* 32402 */ // Label 912: @32402 |
| 12885 | /* 32402 */ GIM_Try, /*On fail goto*//*Label 913*/ GIMT_Encode4(32464), // Rule ID 1402 // |
| 12886 | /* 32407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 12887 | /* 32410 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_balign), |
| 12888 | /* 32415 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 12889 | /* 32418 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 12890 | /* 32421 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 12891 | /* 32424 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12892 | /* 32428 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12893 | /* 32432 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 12894 | /* 32436 */ // MIs[0] bp |
| 12895 | /* 32436 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/4, // MIs[1] |
| 12896 | /* 32440 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 12897 | /* 32444 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt2), |
| 12898 | /* 32448 */ // MIs[1] Operand 1 |
| 12899 | /* 32448 */ // No operand predicates |
| 12900 | /* 32448 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 12901 | /* 32450 */ // (intrinsic_wo_chain:{ *:[i32] } 8000:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt2>>:$bp) => (BALIGN_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] }):$bp, GPR32Opnd:{ *:[i32] }:$src) |
| 12902 | /* 32450 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BALIGN_MMR2), |
| 12903 | /* 32453 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 12904 | /* 32455 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 12905 | /* 32457 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // bp |
| 12906 | /* 32460 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 12907 | /* 32462 */ GIR_RootConstrainSelectedInstOperands, |
| 12908 | /* 32463 */ // GIR_Coverage, 1402, |
| 12909 | /* 32463 */ GIR_EraseRootFromParent_Done, |
| 12910 | /* 32464 */ // Label 913: @32464 |
| 12911 | /* 32464 */ GIM_Try, /*On fail goto*//*Label 914*/ GIMT_Encode4(32518), // Rule ID 627 // |
| 12912 | /* 32469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12913 | /* 32472 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsl_b), |
| 12914 | /* 32477 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 12915 | /* 32480 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 12916 | /* 32483 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 12917 | /* 32486 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v16s8, |
| 12918 | /* 32489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 12919 | /* 32493 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 12920 | /* 32497 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 12921 | /* 32501 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 12922 | /* 32505 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8009:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (BINSL_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 12923 | /* 32505 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSL_B), |
| 12924 | /* 32508 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12925 | /* 32510 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12926 | /* 32512 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12927 | /* 32514 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 12928 | /* 32516 */ GIR_RootConstrainSelectedInstOperands, |
| 12929 | /* 32517 */ // GIR_Coverage, 627, |
| 12930 | /* 32517 */ GIR_EraseRootFromParent_Done, |
| 12931 | /* 32518 */ // Label 914: @32518 |
| 12932 | /* 32518 */ GIM_Try, /*On fail goto*//*Label 915*/ GIMT_Encode4(32572), // Rule ID 628 // |
| 12933 | /* 32523 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12934 | /* 32526 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsl_h), |
| 12935 | /* 32531 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 12936 | /* 32534 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 12937 | /* 32537 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 12938 | /* 32540 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 12939 | /* 32543 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 12940 | /* 32547 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 12941 | /* 32551 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 12942 | /* 32555 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 12943 | /* 32559 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8011:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (BINSL_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 12944 | /* 32559 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSL_H), |
| 12945 | /* 32562 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12946 | /* 32564 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12947 | /* 32566 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12948 | /* 32568 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 12949 | /* 32570 */ GIR_RootConstrainSelectedInstOperands, |
| 12950 | /* 32571 */ // GIR_Coverage, 628, |
| 12951 | /* 32571 */ GIR_EraseRootFromParent_Done, |
| 12952 | /* 32572 */ // Label 915: @32572 |
| 12953 | /* 32572 */ GIM_Try, /*On fail goto*//*Label 916*/ GIMT_Encode4(32626), // Rule ID 629 // |
| 12954 | /* 32577 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12955 | /* 32580 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsl_w), |
| 12956 | /* 32585 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 12957 | /* 32588 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 12958 | /* 32591 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 12959 | /* 32594 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 12960 | /* 32597 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12961 | /* 32601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12962 | /* 32605 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12963 | /* 32609 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 12964 | /* 32613 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8012:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (BINSL_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 12965 | /* 32613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSL_W), |
| 12966 | /* 32616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12967 | /* 32618 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12968 | /* 32620 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12969 | /* 32622 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 12970 | /* 32624 */ GIR_RootConstrainSelectedInstOperands, |
| 12971 | /* 32625 */ // GIR_Coverage, 629, |
| 12972 | /* 32625 */ GIR_EraseRootFromParent_Done, |
| 12973 | /* 32626 */ // Label 916: @32626 |
| 12974 | /* 32626 */ GIM_Try, /*On fail goto*//*Label 917*/ GIMT_Encode4(32680), // Rule ID 630 // |
| 12975 | /* 32631 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12976 | /* 32634 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsl_d), |
| 12977 | /* 32639 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 12978 | /* 32642 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 12979 | /* 32645 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 12980 | /* 32648 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 12981 | /* 32651 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12982 | /* 32655 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12983 | /* 32659 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12984 | /* 32663 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 12985 | /* 32667 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8010:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (BINSL_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 12986 | /* 32667 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSL_D), |
| 12987 | /* 32670 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 12988 | /* 32672 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 12989 | /* 32674 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 12990 | /* 32676 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 12991 | /* 32678 */ GIR_RootConstrainSelectedInstOperands, |
| 12992 | /* 32679 */ // GIR_Coverage, 630, |
| 12993 | /* 32679 */ GIR_EraseRootFromParent_Done, |
| 12994 | /* 32680 */ // Label 917: @32680 |
| 12995 | /* 32680 */ GIM_Try, /*On fail goto*//*Label 918*/ GIMT_Encode4(32734), // Rule ID 635 // |
| 12996 | /* 32685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 12997 | /* 32688 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsr_b), |
| 12998 | /* 32693 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 12999 | /* 32696 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 13000 | /* 32699 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 13001 | /* 32702 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v16s8, |
| 13002 | /* 32705 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13003 | /* 32709 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13004 | /* 32713 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13005 | /* 32717 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13006 | /* 32721 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8017:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (BINSR_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 13007 | /* 32721 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSR_B), |
| 13008 | /* 32724 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13009 | /* 32726 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13010 | /* 32728 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13011 | /* 32730 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13012 | /* 32732 */ GIR_RootConstrainSelectedInstOperands, |
| 13013 | /* 32733 */ // GIR_Coverage, 635, |
| 13014 | /* 32733 */ GIR_EraseRootFromParent_Done, |
| 13015 | /* 32734 */ // Label 918: @32734 |
| 13016 | /* 32734 */ GIM_Try, /*On fail goto*//*Label 919*/ GIMT_Encode4(32788), // Rule ID 636 // |
| 13017 | /* 32739 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13018 | /* 32742 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsr_h), |
| 13019 | /* 32747 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13020 | /* 32750 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13021 | /* 32753 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13022 | /* 32756 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13023 | /* 32759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13024 | /* 32763 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13025 | /* 32767 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13026 | /* 32771 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13027 | /* 32775 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8019:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (BINSR_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13028 | /* 32775 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSR_H), |
| 13029 | /* 32778 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13030 | /* 32780 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13031 | /* 32782 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13032 | /* 32784 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13033 | /* 32786 */ GIR_RootConstrainSelectedInstOperands, |
| 13034 | /* 32787 */ // GIR_Coverage, 636, |
| 13035 | /* 32787 */ GIR_EraseRootFromParent_Done, |
| 13036 | /* 32788 */ // Label 919: @32788 |
| 13037 | /* 32788 */ GIM_Try, /*On fail goto*//*Label 920*/ GIMT_Encode4(32842), // Rule ID 637 // |
| 13038 | /* 32793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13039 | /* 32796 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsr_w), |
| 13040 | /* 32801 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13041 | /* 32804 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13042 | /* 32807 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13043 | /* 32810 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13044 | /* 32813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13045 | /* 32817 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13046 | /* 32821 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13047 | /* 32825 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13048 | /* 32829 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8020:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (BINSR_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13049 | /* 32829 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSR_W), |
| 13050 | /* 32832 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13051 | /* 32834 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13052 | /* 32836 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13053 | /* 32838 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13054 | /* 32840 */ GIR_RootConstrainSelectedInstOperands, |
| 13055 | /* 32841 */ // GIR_Coverage, 637, |
| 13056 | /* 32841 */ GIR_EraseRootFromParent_Done, |
| 13057 | /* 32842 */ // Label 920: @32842 |
| 13058 | /* 32842 */ GIM_Try, /*On fail goto*//*Label 921*/ GIMT_Encode4(32896), // Rule ID 638 // |
| 13059 | /* 32847 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13060 | /* 32850 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_binsr_d), |
| 13061 | /* 32855 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 13062 | /* 32858 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 13063 | /* 32861 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 13064 | /* 32864 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v2s64, |
| 13065 | /* 32867 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13066 | /* 32871 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13067 | /* 32875 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13068 | /* 32879 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13069 | /* 32883 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8018:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (BINSR_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 13070 | /* 32883 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BINSR_D), |
| 13071 | /* 32886 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13072 | /* 32888 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13073 | /* 32890 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13074 | /* 32892 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13075 | /* 32894 */ GIR_RootConstrainSelectedInstOperands, |
| 13076 | /* 32895 */ // GIR_Coverage, 638, |
| 13077 | /* 32895 */ GIR_EraseRootFromParent_Done, |
| 13078 | /* 32896 */ // Label 921: @32896 |
| 13079 | /* 32896 */ GIM_Try, /*On fail goto*//*Label 922*/ GIMT_Encode4(32950), // Rule ID 733 // |
| 13080 | /* 32901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13081 | /* 32904 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpadd_s_h), |
| 13082 | /* 32909 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13083 | /* 32912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13084 | /* 32915 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 13085 | /* 32918 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v16s8, |
| 13086 | /* 32921 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13087 | /* 32925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13088 | /* 32929 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13089 | /* 32933 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13090 | /* 32937 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8138:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DPADD_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 13091 | /* 32937 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPADD_S_H), |
| 13092 | /* 32940 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13093 | /* 32942 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13094 | /* 32944 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13095 | /* 32946 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13096 | /* 32948 */ GIR_RootConstrainSelectedInstOperands, |
| 13097 | /* 32949 */ // GIR_Coverage, 733, |
| 13098 | /* 32949 */ GIR_EraseRootFromParent_Done, |
| 13099 | /* 32950 */ // Label 922: @32950 |
| 13100 | /* 32950 */ GIM_Try, /*On fail goto*//*Label 923*/ GIMT_Encode4(33004), // Rule ID 734 // |
| 13101 | /* 32955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13102 | /* 32958 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpadd_s_w), |
| 13103 | /* 32963 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13104 | /* 32966 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13105 | /* 32969 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13106 | /* 32972 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13107 | /* 32975 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13108 | /* 32979 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13109 | /* 32983 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13110 | /* 32987 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13111 | /* 32991 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8139:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DPADD_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13112 | /* 32991 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPADD_S_W), |
| 13113 | /* 32994 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13114 | /* 32996 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13115 | /* 32998 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13116 | /* 33000 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13117 | /* 33002 */ GIR_RootConstrainSelectedInstOperands, |
| 13118 | /* 33003 */ // GIR_Coverage, 734, |
| 13119 | /* 33003 */ GIR_EraseRootFromParent_Done, |
| 13120 | /* 33004 */ // Label 923: @33004 |
| 13121 | /* 33004 */ GIM_Try, /*On fail goto*//*Label 924*/ GIMT_Encode4(33058), // Rule ID 735 // |
| 13122 | /* 33009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13123 | /* 33012 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpadd_s_d), |
| 13124 | /* 33017 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 13125 | /* 33020 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 13126 | /* 33023 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13127 | /* 33026 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13128 | /* 33029 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13129 | /* 33033 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13130 | /* 33037 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13131 | /* 33041 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13132 | /* 33045 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8137:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DPADD_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13133 | /* 33045 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPADD_S_D), |
| 13134 | /* 33048 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13135 | /* 33050 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13136 | /* 33052 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13137 | /* 33054 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13138 | /* 33056 */ GIR_RootConstrainSelectedInstOperands, |
| 13139 | /* 33057 */ // GIR_Coverage, 735, |
| 13140 | /* 33057 */ GIR_EraseRootFromParent_Done, |
| 13141 | /* 33058 */ // Label 924: @33058 |
| 13142 | /* 33058 */ GIM_Try, /*On fail goto*//*Label 925*/ GIMT_Encode4(33112), // Rule ID 736 // |
| 13143 | /* 33063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13144 | /* 33066 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpadd_u_h), |
| 13145 | /* 33071 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13146 | /* 33074 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13147 | /* 33077 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 13148 | /* 33080 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v16s8, |
| 13149 | /* 33083 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13150 | /* 33087 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13151 | /* 33091 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13152 | /* 33095 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13153 | /* 33099 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8141:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DPADD_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 13154 | /* 33099 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPADD_U_H), |
| 13155 | /* 33102 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13156 | /* 33104 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13157 | /* 33106 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13158 | /* 33108 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13159 | /* 33110 */ GIR_RootConstrainSelectedInstOperands, |
| 13160 | /* 33111 */ // GIR_Coverage, 736, |
| 13161 | /* 33111 */ GIR_EraseRootFromParent_Done, |
| 13162 | /* 33112 */ // Label 925: @33112 |
| 13163 | /* 33112 */ GIM_Try, /*On fail goto*//*Label 926*/ GIMT_Encode4(33166), // Rule ID 737 // |
| 13164 | /* 33117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13165 | /* 33120 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpadd_u_w), |
| 13166 | /* 33125 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13167 | /* 33128 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13168 | /* 33131 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13169 | /* 33134 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13170 | /* 33137 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13171 | /* 33141 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13172 | /* 33145 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13173 | /* 33149 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13174 | /* 33153 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8142:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DPADD_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13175 | /* 33153 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPADD_U_W), |
| 13176 | /* 33156 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13177 | /* 33158 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13178 | /* 33160 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13179 | /* 33162 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13180 | /* 33164 */ GIR_RootConstrainSelectedInstOperands, |
| 13181 | /* 33165 */ // GIR_Coverage, 737, |
| 13182 | /* 33165 */ GIR_EraseRootFromParent_Done, |
| 13183 | /* 33166 */ // Label 926: @33166 |
| 13184 | /* 33166 */ GIM_Try, /*On fail goto*//*Label 927*/ GIMT_Encode4(33220), // Rule ID 738 // |
| 13185 | /* 33171 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13186 | /* 33174 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpadd_u_d), |
| 13187 | /* 33179 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 13188 | /* 33182 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 13189 | /* 33185 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13190 | /* 33188 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13191 | /* 33191 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13192 | /* 33195 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13193 | /* 33199 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13194 | /* 33203 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13195 | /* 33207 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8140:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DPADD_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13196 | /* 33207 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPADD_U_D), |
| 13197 | /* 33210 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13198 | /* 33212 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13199 | /* 33214 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13200 | /* 33216 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13201 | /* 33218 */ GIR_RootConstrainSelectedInstOperands, |
| 13202 | /* 33219 */ // GIR_Coverage, 738, |
| 13203 | /* 33219 */ GIR_EraseRootFromParent_Done, |
| 13204 | /* 33220 */ // Label 927: @33220 |
| 13205 | /* 33220 */ GIM_Try, /*On fail goto*//*Label 928*/ GIMT_Encode4(33274), // Rule ID 739 // |
| 13206 | /* 33225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13207 | /* 33228 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpsub_s_h), |
| 13208 | /* 33233 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13209 | /* 33236 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13210 | /* 33239 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 13211 | /* 33242 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v16s8, |
| 13212 | /* 33245 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13213 | /* 33249 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13214 | /* 33253 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13215 | /* 33257 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13216 | /* 33261 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8158:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DPSUB_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 13217 | /* 33261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPSUB_S_H), |
| 13218 | /* 33264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13219 | /* 33266 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13220 | /* 33268 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13221 | /* 33270 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13222 | /* 33272 */ GIR_RootConstrainSelectedInstOperands, |
| 13223 | /* 33273 */ // GIR_Coverage, 739, |
| 13224 | /* 33273 */ GIR_EraseRootFromParent_Done, |
| 13225 | /* 33274 */ // Label 928: @33274 |
| 13226 | /* 33274 */ GIM_Try, /*On fail goto*//*Label 929*/ GIMT_Encode4(33328), // Rule ID 740 // |
| 13227 | /* 33279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13228 | /* 33282 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpsub_s_w), |
| 13229 | /* 33287 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13230 | /* 33290 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13231 | /* 33293 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13232 | /* 33296 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13233 | /* 33299 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13234 | /* 33303 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13235 | /* 33307 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13236 | /* 33311 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13237 | /* 33315 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8159:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DPSUB_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13238 | /* 33315 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPSUB_S_W), |
| 13239 | /* 33318 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13240 | /* 33320 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13241 | /* 33322 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13242 | /* 33324 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13243 | /* 33326 */ GIR_RootConstrainSelectedInstOperands, |
| 13244 | /* 33327 */ // GIR_Coverage, 740, |
| 13245 | /* 33327 */ GIR_EraseRootFromParent_Done, |
| 13246 | /* 33328 */ // Label 929: @33328 |
| 13247 | /* 33328 */ GIM_Try, /*On fail goto*//*Label 930*/ GIMT_Encode4(33382), // Rule ID 741 // |
| 13248 | /* 33333 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13249 | /* 33336 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpsub_s_d), |
| 13250 | /* 33341 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 13251 | /* 33344 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 13252 | /* 33347 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13253 | /* 33350 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13254 | /* 33353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13255 | /* 33357 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13256 | /* 33361 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13257 | /* 33365 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13258 | /* 33369 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8157:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DPSUB_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13259 | /* 33369 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPSUB_S_D), |
| 13260 | /* 33372 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13261 | /* 33374 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13262 | /* 33376 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13263 | /* 33378 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13264 | /* 33380 */ GIR_RootConstrainSelectedInstOperands, |
| 13265 | /* 33381 */ // GIR_Coverage, 741, |
| 13266 | /* 33381 */ GIR_EraseRootFromParent_Done, |
| 13267 | /* 33382 */ // Label 930: @33382 |
| 13268 | /* 33382 */ GIM_Try, /*On fail goto*//*Label 931*/ GIMT_Encode4(33436), // Rule ID 742 // |
| 13269 | /* 33387 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13270 | /* 33390 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpsub_u_h), |
| 13271 | /* 33395 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13272 | /* 33398 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13273 | /* 33401 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 13274 | /* 33404 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v16s8, |
| 13275 | /* 33407 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13276 | /* 33411 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13277 | /* 33415 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13278 | /* 33419 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13279 | /* 33423 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8161:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (DPSUB_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 13280 | /* 33423 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPSUB_U_H), |
| 13281 | /* 33426 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13282 | /* 33428 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13283 | /* 33430 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13284 | /* 33432 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13285 | /* 33434 */ GIR_RootConstrainSelectedInstOperands, |
| 13286 | /* 33435 */ // GIR_Coverage, 742, |
| 13287 | /* 33435 */ GIR_EraseRootFromParent_Done, |
| 13288 | /* 33436 */ // Label 931: @33436 |
| 13289 | /* 33436 */ GIM_Try, /*On fail goto*//*Label 932*/ GIMT_Encode4(33490), // Rule ID 743 // |
| 13290 | /* 33441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13291 | /* 33444 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpsub_u_w), |
| 13292 | /* 33449 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13293 | /* 33452 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13294 | /* 33455 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13295 | /* 33458 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13296 | /* 33461 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13297 | /* 33465 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13298 | /* 33469 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13299 | /* 33473 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13300 | /* 33477 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8162:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (DPSUB_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13301 | /* 33477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPSUB_U_W), |
| 13302 | /* 33480 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13303 | /* 33482 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13304 | /* 33484 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13305 | /* 33486 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13306 | /* 33488 */ GIR_RootConstrainSelectedInstOperands, |
| 13307 | /* 33489 */ // GIR_Coverage, 743, |
| 13308 | /* 33489 */ GIR_EraseRootFromParent_Done, |
| 13309 | /* 33490 */ // Label 932: @33490 |
| 13310 | /* 33490 */ GIM_Try, /*On fail goto*//*Label 933*/ GIMT_Encode4(33544), // Rule ID 744 // |
| 13311 | /* 33495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13312 | /* 33498 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_dpsub_u_d), |
| 13313 | /* 33503 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 13314 | /* 33506 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 13315 | /* 33509 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13316 | /* 33512 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13317 | /* 33515 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13318 | /* 33519 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13319 | /* 33523 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13320 | /* 33527 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13321 | /* 33531 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8160:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (DPSUB_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13322 | /* 33531 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DPSUB_U_D), |
| 13323 | /* 33534 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13324 | /* 33536 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13325 | /* 33538 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13326 | /* 33540 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13327 | /* 33542 */ GIR_RootConstrainSelectedInstOperands, |
| 13328 | /* 33543 */ // GIR_Coverage, 744, |
| 13329 | /* 33543 */ GIR_EraseRootFromParent_Done, |
| 13330 | /* 33544 */ // Label 933: @33544 |
| 13331 | /* 33544 */ GIM_Try, /*On fail goto*//*Label 934*/ GIMT_Encode4(33598), // Rule ID 911 // |
| 13332 | /* 33549 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13333 | /* 33552 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_madd_q_h), |
| 13334 | /* 33557 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13335 | /* 33560 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13336 | /* 33563 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13337 | /* 33566 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13338 | /* 33569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13339 | /* 33573 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13340 | /* 33577 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13341 | /* 33581 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13342 | /* 33585 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8328:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MADD_Q_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13343 | /* 33585 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_Q_H), |
| 13344 | /* 33588 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13345 | /* 33590 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13346 | /* 33592 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13347 | /* 33594 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13348 | /* 33596 */ GIR_RootConstrainSelectedInstOperands, |
| 13349 | /* 33597 */ // GIR_Coverage, 911, |
| 13350 | /* 33597 */ GIR_EraseRootFromParent_Done, |
| 13351 | /* 33598 */ // Label 934: @33598 |
| 13352 | /* 33598 */ GIM_Try, /*On fail goto*//*Label 935*/ GIMT_Encode4(33652), // Rule ID 912 // |
| 13353 | /* 33603 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13354 | /* 33606 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_madd_q_w), |
| 13355 | /* 33611 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13356 | /* 33614 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13357 | /* 33617 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13358 | /* 33620 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13359 | /* 33623 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13360 | /* 33627 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13361 | /* 33631 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13362 | /* 33635 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13363 | /* 33639 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8329:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MADD_Q_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13364 | /* 33639 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_Q_W), |
| 13365 | /* 33642 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13366 | /* 33644 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13367 | /* 33646 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13368 | /* 33648 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13369 | /* 33650 */ GIR_RootConstrainSelectedInstOperands, |
| 13370 | /* 33651 */ // GIR_Coverage, 912, |
| 13371 | /* 33651 */ GIR_EraseRootFromParent_Done, |
| 13372 | /* 33652 */ // Label 935: @33652 |
| 13373 | /* 33652 */ GIM_Try, /*On fail goto*//*Label 936*/ GIMT_Encode4(33706), // Rule ID 913 // |
| 13374 | /* 33657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13375 | /* 33660 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_maddr_q_h), |
| 13376 | /* 33665 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13377 | /* 33668 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13378 | /* 33671 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13379 | /* 33674 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13380 | /* 33677 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13381 | /* 33681 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13382 | /* 33685 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13383 | /* 33689 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13384 | /* 33693 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8330:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MADDR_Q_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13385 | /* 33693 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDR_Q_H), |
| 13386 | /* 33696 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13387 | /* 33698 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13388 | /* 33700 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13389 | /* 33702 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13390 | /* 33704 */ GIR_RootConstrainSelectedInstOperands, |
| 13391 | /* 33705 */ // GIR_Coverage, 913, |
| 13392 | /* 33705 */ GIR_EraseRootFromParent_Done, |
| 13393 | /* 33706 */ // Label 936: @33706 |
| 13394 | /* 33706 */ GIM_Try, /*On fail goto*//*Label 937*/ GIMT_Encode4(33760), // Rule ID 914 // |
| 13395 | /* 33711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13396 | /* 33714 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_maddr_q_w), |
| 13397 | /* 33719 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13398 | /* 33722 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13399 | /* 33725 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13400 | /* 33728 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13401 | /* 33731 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13402 | /* 33735 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13403 | /* 33739 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13404 | /* 33743 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13405 | /* 33747 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8331:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MADDR_Q_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13406 | /* 33747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADDR_Q_W), |
| 13407 | /* 33750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13408 | /* 33752 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13409 | /* 33754 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13410 | /* 33756 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13411 | /* 33758 */ GIR_RootConstrainSelectedInstOperands, |
| 13412 | /* 33759 */ // GIR_Coverage, 914, |
| 13413 | /* 33759 */ GIR_EraseRootFromParent_Done, |
| 13414 | /* 33760 */ // Label 937: @33760 |
| 13415 | /* 33760 */ GIM_Try, /*On fail goto*//*Label 938*/ GIMT_Encode4(33814), // Rule ID 967 // |
| 13416 | /* 33765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13417 | /* 33768 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_msub_q_h), |
| 13418 | /* 33773 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13419 | /* 33776 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13420 | /* 33779 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13421 | /* 33782 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13422 | /* 33785 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13423 | /* 33789 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13424 | /* 33793 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13425 | /* 33797 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13426 | /* 33801 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8392:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MSUB_Q_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13427 | /* 33801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_Q_H), |
| 13428 | /* 33804 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13429 | /* 33806 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13430 | /* 33808 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13431 | /* 33810 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13432 | /* 33812 */ GIR_RootConstrainSelectedInstOperands, |
| 13433 | /* 33813 */ // GIR_Coverage, 967, |
| 13434 | /* 33813 */ GIR_EraseRootFromParent_Done, |
| 13435 | /* 33814 */ // Label 938: @33814 |
| 13436 | /* 33814 */ GIM_Try, /*On fail goto*//*Label 939*/ GIMT_Encode4(33868), // Rule ID 968 // |
| 13437 | /* 33819 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13438 | /* 33822 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_msub_q_w), |
| 13439 | /* 33827 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13440 | /* 33830 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13441 | /* 33833 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13442 | /* 33836 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13443 | /* 33839 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13444 | /* 33843 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13445 | /* 33847 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13446 | /* 33851 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13447 | /* 33855 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8393:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MSUB_Q_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13448 | /* 33855 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_Q_W), |
| 13449 | /* 33858 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13450 | /* 33860 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13451 | /* 33862 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13452 | /* 33864 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13453 | /* 33866 */ GIR_RootConstrainSelectedInstOperands, |
| 13454 | /* 33867 */ // GIR_Coverage, 968, |
| 13455 | /* 33867 */ GIR_EraseRootFromParent_Done, |
| 13456 | /* 33868 */ // Label 939: @33868 |
| 13457 | /* 33868 */ GIM_Try, /*On fail goto*//*Label 940*/ GIMT_Encode4(33922), // Rule ID 969 // |
| 13458 | /* 33873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13459 | /* 33876 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_msubr_q_h), |
| 13460 | /* 33881 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13461 | /* 33884 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13462 | /* 33887 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13463 | /* 33890 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v8s16, |
| 13464 | /* 33893 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13465 | /* 33897 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13466 | /* 33901 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13467 | /* 33905 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13468 | /* 33909 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8394:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MSUBR_Q_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 13469 | /* 33909 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUBR_Q_H), |
| 13470 | /* 33912 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13471 | /* 33914 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13472 | /* 33916 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13473 | /* 33918 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13474 | /* 33920 */ GIR_RootConstrainSelectedInstOperands, |
| 13475 | /* 33921 */ // GIR_Coverage, 969, |
| 13476 | /* 33921 */ GIR_EraseRootFromParent_Done, |
| 13477 | /* 33922 */ // Label 940: @33922 |
| 13478 | /* 33922 */ GIM_Try, /*On fail goto*//*Label 941*/ GIMT_Encode4(33976), // Rule ID 970 // |
| 13479 | /* 33927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13480 | /* 33930 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_msubr_q_w), |
| 13481 | /* 33935 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13482 | /* 33938 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13483 | /* 33941 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13484 | /* 33944 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_v4s32, |
| 13485 | /* 33947 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13486 | /* 33951 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13487 | /* 33955 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13488 | /* 33959 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13489 | /* 33963 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8395:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MSUBR_Q_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 13490 | /* 33963 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUBR_Q_W), |
| 13491 | /* 33966 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13492 | /* 33968 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13493 | /* 33970 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13494 | /* 33972 */ GIR_RootToRootCopy, /*OpIdx*/4, // wt |
| 13495 | /* 33974 */ GIR_RootConstrainSelectedInstOperands, |
| 13496 | /* 33975 */ // GIR_Coverage, 970, |
| 13497 | /* 33975 */ GIR_EraseRootFromParent_Done, |
| 13498 | /* 33976 */ // Label 941: @33976 |
| 13499 | /* 33976 */ GIM_Try, /*On fail goto*//*Label 942*/ GIMT_Encode4(34030), // Rule ID 1024 // |
| 13500 | /* 33981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13501 | /* 33984 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sld_b), |
| 13502 | /* 33989 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v16s8, |
| 13503 | /* 33992 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 13504 | /* 33995 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 13505 | /* 33998 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_s32, |
| 13506 | /* 34001 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13507 | /* 34005 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13508 | /* 34009 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 13509 | /* 34013 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13510 | /* 34017 */ // (intrinsic_wo_chain:{ *:[v16i8] } 8496:{ *:[iPTR] }, MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) => (SLD_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) |
| 13511 | /* 34017 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLD_B), |
| 13512 | /* 34020 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13513 | /* 34022 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13514 | /* 34024 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13515 | /* 34026 */ GIR_RootToRootCopy, /*OpIdx*/4, // rt |
| 13516 | /* 34028 */ GIR_RootConstrainSelectedInstOperands, |
| 13517 | /* 34029 */ // GIR_Coverage, 1024, |
| 13518 | /* 34029 */ GIR_EraseRootFromParent_Done, |
| 13519 | /* 34030 */ // Label 942: @34030 |
| 13520 | /* 34030 */ GIM_Try, /*On fail goto*//*Label 943*/ GIMT_Encode4(34084), // Rule ID 1025 // |
| 13521 | /* 34035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13522 | /* 34038 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sld_h), |
| 13523 | /* 34043 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v8s16, |
| 13524 | /* 34046 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 13525 | /* 34049 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 13526 | /* 34052 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_s32, |
| 13527 | /* 34055 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13528 | /* 34059 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13529 | /* 34063 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 13530 | /* 34067 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13531 | /* 34071 */ // (intrinsic_wo_chain:{ *:[v8i16] } 8498:{ *:[iPTR] }, MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) => (SLD_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) |
| 13532 | /* 34071 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLD_H), |
| 13533 | /* 34074 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13534 | /* 34076 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13535 | /* 34078 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13536 | /* 34080 */ GIR_RootToRootCopy, /*OpIdx*/4, // rt |
| 13537 | /* 34082 */ GIR_RootConstrainSelectedInstOperands, |
| 13538 | /* 34083 */ // GIR_Coverage, 1025, |
| 13539 | /* 34083 */ GIR_EraseRootFromParent_Done, |
| 13540 | /* 34084 */ // Label 943: @34084 |
| 13541 | /* 34084 */ GIM_Try, /*On fail goto*//*Label 944*/ GIMT_Encode4(34138), // Rule ID 1026 // |
| 13542 | /* 34089 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13543 | /* 34092 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sld_w), |
| 13544 | /* 34097 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 13545 | /* 34100 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 13546 | /* 34103 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 13547 | /* 34106 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_s32, |
| 13548 | /* 34109 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13549 | /* 34113 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13550 | /* 34117 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 13551 | /* 34121 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13552 | /* 34125 */ // (intrinsic_wo_chain:{ *:[v4i32] } 8499:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) => (SLD_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) |
| 13553 | /* 34125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLD_W), |
| 13554 | /* 34128 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13555 | /* 34130 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13556 | /* 34132 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13557 | /* 34134 */ GIR_RootToRootCopy, /*OpIdx*/4, // rt |
| 13558 | /* 34136 */ GIR_RootConstrainSelectedInstOperands, |
| 13559 | /* 34137 */ // GIR_Coverage, 1026, |
| 13560 | /* 34137 */ GIR_EraseRootFromParent_Done, |
| 13561 | /* 34138 */ // Label 944: @34138 |
| 13562 | /* 34138 */ GIM_Try, /*On fail goto*//*Label 945*/ GIMT_Encode4(34192), // Rule ID 1027 // |
| 13563 | /* 34143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 13564 | /* 34146 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_sld_d), |
| 13565 | /* 34151 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 13566 | /* 34154 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 13567 | /* 34157 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 13568 | /* 34160 */ GIM_RootCheckType, /*Op*/4, /*Type*/GILLT_s32, |
| 13569 | /* 34163 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13570 | /* 34167 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13571 | /* 34171 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 13572 | /* 34175 */ GIM_RootCheckRegBankForClass, /*Op*/4, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13573 | /* 34179 */ // (intrinsic_wo_chain:{ *:[v2i64] } 8497:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) => (SLD_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, GPR32Opnd:{ *:[i32] }:$rt) |
| 13574 | /* 34179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLD_D), |
| 13575 | /* 34182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 13576 | /* 34184 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 13577 | /* 34186 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 13578 | /* 34188 */ GIR_RootToRootCopy, /*OpIdx*/4, // rt |
| 13579 | /* 34190 */ GIR_RootConstrainSelectedInstOperands, |
| 13580 | /* 34191 */ // GIR_Coverage, 1027, |
| 13581 | /* 34191 */ GIR_EraseRootFromParent_Done, |
| 13582 | /* 34192 */ // Label 945: @34192 |
| 13583 | /* 34192 */ GIM_Reject, |
| 13584 | /* 34193 */ // Label 899: @34193 |
| 13585 | /* 34193 */ GIM_Reject, |
| 13586 | /* 34194 */ // Label 30: @34194 |
| 13587 | /* 34194 */ GIM_Try, /*On fail goto*//*Label 946*/ GIMT_Encode4(34225), // Rule ID 429 // |
| 13588 | /* 34199 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/2, |
| 13589 | /* 34202 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_bposge32), |
| 13590 | /* 34207 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 13591 | /* 34210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13592 | /* 34214 */ // (intrinsic_w_chain:{ *:[i32] } 8043:{ *:[iPTR] }) => (BPOSGE32_PSEUDO:{ *:[i32] }) |
| 13593 | /* 34214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BPOSGE32_PSEUDO), |
| 13594 | /* 34217 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 13595 | /* 34219 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13596 | /* 34223 */ GIR_RootConstrainSelectedInstOperands, |
| 13597 | /* 34224 */ // GIR_Coverage, 429, |
| 13598 | /* 34224 */ GIR_EraseRootFromParent_Done, |
| 13599 | /* 34225 */ // Label 946: @34225 |
| 13600 | /* 34225 */ GIM_Try, /*On fail goto*//*Label 947*/ GIMT_Encode4(35162), |
| 13601 | /* 34230 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/3, |
| 13602 | /* 34233 */ GIM_Try, /*On fail goto*//*Label 948*/ GIMT_Encode4(34274), // Rule ID 516 // |
| 13603 | /* 34238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13604 | /* 34241 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_rddsp), |
| 13605 | /* 34246 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 13606 | /* 34249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13607 | /* 34253 */ // MIs[0] mask |
| 13608 | /* 34253 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 13609 | /* 34256 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt10), |
| 13610 | /* 34261 */ // (intrinsic_w_chain:{ *:[i32] } 8470:{ *:[iPTR] }, (timm:{ *:[i32] })<<P:Predicate_timmZExt10>>:$mask) => (RDDSP:{ *:[i32] } (timm:{ *:[i32] }):$mask) |
| 13611 | /* 34261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::RDDSP), |
| 13612 | /* 34264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 13613 | /* 34266 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 13614 | /* 34268 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13615 | /* 34272 */ GIR_RootConstrainSelectedInstOperands, |
| 13616 | /* 34273 */ // GIR_Coverage, 516, |
| 13617 | /* 34273 */ GIR_EraseRootFromParent_Done, |
| 13618 | /* 34274 */ // Label 948: @34274 |
| 13619 | /* 34274 */ GIM_Try, /*On fail goto*//*Label 949*/ GIMT_Encode4(34310), // Rule ID 1362 // |
| 13620 | /* 34279 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13621 | /* 34282 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_rddsp), |
| 13622 | /* 34287 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 13623 | /* 34290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13624 | /* 34294 */ // MIs[0] mask |
| 13625 | /* 34294 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 13626 | /* 34297 */ // (intrinsic_w_chain:{ *:[i32] } 8470:{ *:[iPTR] }, (timm:{ *:[i32] })<<P:Predicate_timmZExt7>>:$mask) => (RDDSP_MM:{ *:[i32] } (timm:{ *:[i32] }):$mask) |
| 13627 | /* 34297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::RDDSP_MM), |
| 13628 | /* 34300 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 13629 | /* 34302 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 13630 | /* 34304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13631 | /* 34308 */ GIR_RootConstrainSelectedInstOperands, |
| 13632 | /* 34309 */ // GIR_Coverage, 1362, |
| 13633 | /* 34309 */ GIR_EraseRootFromParent_Done, |
| 13634 | /* 34310 */ // Label 949: @34310 |
| 13635 | /* 34310 */ GIM_Try, /*On fail goto*//*Label 950*/ GIMT_Encode4(34351), // Rule ID 517 // |
| 13636 | /* 34315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_NotInMicroMips), |
| 13637 | /* 34318 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_wrdsp), |
| 13638 | /* 34323 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 13639 | /* 34326 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13640 | /* 34330 */ // MIs[0] mask |
| 13641 | /* 34330 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 13642 | /* 34333 */ GIM_CheckImmOperandPredicate, /*MI*/0, /*MO*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_timmZExt10), |
| 13643 | /* 34338 */ // (intrinsic_void 8599:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] })<<P:Predicate_timmZExt10>>:$mask) => (WRDSP GPR32Opnd:{ *:[i32] }:$rs, (timm:{ *:[i32] }):$mask) |
| 13644 | /* 34338 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::WRDSP), |
| 13645 | /* 34341 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13646 | /* 34343 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 13647 | /* 34345 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13648 | /* 34349 */ GIR_RootConstrainSelectedInstOperands, |
| 13649 | /* 34350 */ // GIR_Coverage, 517, |
| 13650 | /* 34350 */ GIR_EraseRootFromParent_Done, |
| 13651 | /* 34351 */ // Label 950: @34351 |
| 13652 | /* 34351 */ GIM_Try, /*On fail goto*//*Label 951*/ GIMT_Encode4(34387), // Rule ID 1373 // |
| 13653 | /* 34356 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13654 | /* 34359 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_wrdsp), |
| 13655 | /* 34364 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 13656 | /* 34367 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13657 | /* 34371 */ // MIs[0] mask |
| 13658 | /* 34371 */ GIM_CheckIsImm, /*MI*/0, /*Op*/2, |
| 13659 | /* 34374 */ // (intrinsic_void 8599:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt, (timm:{ *:[i32] })<<P:Predicate_timmZExt7>>:$mask) => (WRDSP_MM GPR32Opnd:{ *:[i32] }:$rt, (timm:{ *:[i32] }):$mask) |
| 13660 | /* 34374 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::WRDSP_MM), |
| 13661 | /* 34377 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 13662 | /* 34379 */ GIR_RootToRootCopy, /*OpIdx*/2, // mask |
| 13663 | /* 34381 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13664 | /* 34385 */ GIR_RootConstrainSelectedInstOperands, |
| 13665 | /* 34386 */ // GIR_Coverage, 1373, |
| 13666 | /* 34386 */ GIR_EraseRootFromParent_Done, |
| 13667 | /* 34387 */ // Label 951: @34387 |
| 13668 | /* 34387 */ GIM_Try, /*On fail goto*//*Label 952*/ GIMT_Encode4(34430), // Rule ID 438 // |
| 13669 | /* 34392 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13670 | /* 34395 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_absq_s_ph), |
| 13671 | /* 34400 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 13672 | /* 34403 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13673 | /* 34406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13674 | /* 34410 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13675 | /* 34414 */ // (intrinsic_w_chain:{ *:[v2i16] } 7931:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt) => (ABSQ_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt) |
| 13676 | /* 34414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ABSQ_S_PH), |
| 13677 | /* 34417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 13678 | /* 34419 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13679 | /* 34421 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 13680 | /* 34424 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13681 | /* 34428 */ GIR_RootConstrainSelectedInstOperands, |
| 13682 | /* 34429 */ // GIR_Coverage, 438, |
| 13683 | /* 34429 */ GIR_EraseRootFromParent_Done, |
| 13684 | /* 34430 */ // Label 952: @34430 |
| 13685 | /* 34430 */ GIM_Try, /*On fail goto*//*Label 953*/ GIMT_Encode4(34473), // Rule ID 439 // |
| 13686 | /* 34435 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13687 | /* 34438 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_absq_s_w), |
| 13688 | /* 34443 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 13689 | /* 34446 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13690 | /* 34449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13691 | /* 34453 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13692 | /* 34457 */ // (intrinsic_w_chain:{ *:[i32] } 7933:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt) => (ABSQ_S_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 13693 | /* 34457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ABSQ_S_W), |
| 13694 | /* 34460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 13695 | /* 34462 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13696 | /* 34464 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 13697 | /* 34467 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13698 | /* 34471 */ GIR_RootConstrainSelectedInstOperands, |
| 13699 | /* 34472 */ // GIR_Coverage, 439, |
| 13700 | /* 34472 */ GIR_EraseRootFromParent_Done, |
| 13701 | /* 34473 */ // Label 953: @34473 |
| 13702 | /* 34473 */ GIM_Try, /*On fail goto*//*Label 954*/ GIMT_Encode4(34516), // Rule ID 525 // |
| 13703 | /* 34478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 13704 | /* 34481 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_absq_s_qb), |
| 13705 | /* 34486 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 13706 | /* 34489 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13707 | /* 34492 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13708 | /* 34496 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13709 | /* 34500 */ // (intrinsic_w_chain:{ *:[v4i8] } 7932:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt) => (ABSQ_S_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt) |
| 13710 | /* 34500 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ABSQ_S_QB), |
| 13711 | /* 34503 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 13712 | /* 34505 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13713 | /* 34507 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 13714 | /* 34510 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13715 | /* 34514 */ GIR_RootConstrainSelectedInstOperands, |
| 13716 | /* 34515 */ // GIR_Coverage, 525, |
| 13717 | /* 34515 */ GIR_EraseRootFromParent_Done, |
| 13718 | /* 34516 */ // Label 954: @34516 |
| 13719 | /* 34516 */ GIM_Try, /*On fail goto*//*Label 955*/ GIMT_Encode4(34559), // Rule ID 1305 // |
| 13720 | /* 34521 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13721 | /* 34524 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_absq_s_ph), |
| 13722 | /* 34529 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 13723 | /* 34532 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13724 | /* 34535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13725 | /* 34539 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13726 | /* 34543 */ // (intrinsic_w_chain:{ *:[v2i16] } 7931:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs) => (ABSQ_S_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs) |
| 13727 | /* 34543 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ABSQ_S_PH_MM), |
| 13728 | /* 34546 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 13729 | /* 34548 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 13730 | /* 34550 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 13731 | /* 34553 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13732 | /* 34557 */ GIR_RootConstrainSelectedInstOperands, |
| 13733 | /* 34558 */ // GIR_Coverage, 1305, |
| 13734 | /* 34558 */ GIR_EraseRootFromParent_Done, |
| 13735 | /* 34559 */ // Label 955: @34559 |
| 13736 | /* 34559 */ GIM_Try, /*On fail goto*//*Label 956*/ GIMT_Encode4(34602), // Rule ID 1306 // |
| 13737 | /* 34564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13738 | /* 34567 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_absq_s_w), |
| 13739 | /* 34572 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 13740 | /* 34575 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 13741 | /* 34578 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13742 | /* 34582 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 13743 | /* 34586 */ // (intrinsic_w_chain:{ *:[i32] } 7933:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs) => (ABSQ_S_W_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 13744 | /* 34586 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ABSQ_S_W_MM), |
| 13745 | /* 34589 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 13746 | /* 34591 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 13747 | /* 34593 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 13748 | /* 34596 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13749 | /* 34600 */ GIR_RootConstrainSelectedInstOperands, |
| 13750 | /* 34601 */ // GIR_Coverage, 1306, |
| 13751 | /* 34601 */ GIR_EraseRootFromParent_Done, |
| 13752 | /* 34602 */ // Label 956: @34602 |
| 13753 | /* 34602 */ GIM_Try, /*On fail goto*//*Label 957*/ GIMT_Encode4(34645), // Rule ID 1386 // |
| 13754 | /* 34607 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 13755 | /* 34610 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_absq_s_qb), |
| 13756 | /* 34615 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 13757 | /* 34618 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13758 | /* 34621 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13759 | /* 34625 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13760 | /* 34629 */ // (intrinsic_w_chain:{ *:[v4i8] } 7932:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs) => (ABSQ_S_QB_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs) |
| 13761 | /* 34629 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ABSQ_S_QB_MMR2), |
| 13762 | /* 34632 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 13763 | /* 34634 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 13764 | /* 34636 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 13765 | /* 34639 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13766 | /* 34643 */ GIR_RootConstrainSelectedInstOperands, |
| 13767 | /* 34644 */ // GIR_Coverage, 1386, |
| 13768 | /* 34644 */ GIR_EraseRootFromParent_Done, |
| 13769 | /* 34645 */ // Label 957: @34645 |
| 13770 | /* 34645 */ GIM_Try, /*On fail goto*//*Label 958*/ GIMT_Encode4(34688), // Rule ID 492 // |
| 13771 | /* 34650 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13772 | /* 34653 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmpu_eq_qb), |
| 13773 | /* 34658 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 13774 | /* 34661 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13775 | /* 34664 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13776 | /* 34668 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13777 | /* 34672 */ // (intrinsic_void 8109:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPU_EQ_QB DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 13778 | /* 34672 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPU_EQ_QB), |
| 13779 | /* 34675 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13780 | /* 34677 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13781 | /* 34679 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13782 | /* 34682 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13783 | /* 34686 */ GIR_RootConstrainSelectedInstOperands, |
| 13784 | /* 34687 */ // GIR_Coverage, 492, |
| 13785 | /* 34687 */ GIR_EraseRootFromParent_Done, |
| 13786 | /* 34688 */ // Label 958: @34688 |
| 13787 | /* 34688 */ GIM_Try, /*On fail goto*//*Label 959*/ GIMT_Encode4(34731), // Rule ID 493 // |
| 13788 | /* 34693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13789 | /* 34696 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmpu_lt_qb), |
| 13790 | /* 34701 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 13791 | /* 34704 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13792 | /* 34707 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13793 | /* 34711 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13794 | /* 34715 */ // (intrinsic_void 8111:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPU_LT_QB DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 13795 | /* 34715 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPU_LT_QB), |
| 13796 | /* 34718 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13797 | /* 34720 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13798 | /* 34722 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13799 | /* 34725 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13800 | /* 34729 */ GIR_RootConstrainSelectedInstOperands, |
| 13801 | /* 34730 */ // GIR_Coverage, 493, |
| 13802 | /* 34730 */ GIR_EraseRootFromParent_Done, |
| 13803 | /* 34731 */ // Label 959: @34731 |
| 13804 | /* 34731 */ GIM_Try, /*On fail goto*//*Label 960*/ GIMT_Encode4(34774), // Rule ID 494 // |
| 13805 | /* 34736 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13806 | /* 34739 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmpu_le_qb), |
| 13807 | /* 34744 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 13808 | /* 34747 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13809 | /* 34750 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13810 | /* 34754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13811 | /* 34758 */ // (intrinsic_void 8110:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPU_LE_QB DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 13812 | /* 34758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPU_LE_QB), |
| 13813 | /* 34761 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13814 | /* 34763 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13815 | /* 34765 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13816 | /* 34768 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13817 | /* 34772 */ GIR_RootConstrainSelectedInstOperands, |
| 13818 | /* 34773 */ // GIR_Coverage, 494, |
| 13819 | /* 34773 */ GIR_EraseRootFromParent_Done, |
| 13820 | /* 34774 */ // Label 960: @34774 |
| 13821 | /* 34774 */ GIM_Try, /*On fail goto*//*Label 961*/ GIMT_Encode4(34817), // Rule ID 498 // |
| 13822 | /* 34779 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13823 | /* 34782 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmp_eq_ph), |
| 13824 | /* 34787 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 13825 | /* 34790 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13826 | /* 34793 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13827 | /* 34797 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13828 | /* 34801 */ // (intrinsic_void 8100:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (CMP_EQ_PH DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 13829 | /* 34801 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_EQ_PH), |
| 13830 | /* 34804 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13831 | /* 34806 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13832 | /* 34808 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13833 | /* 34811 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13834 | /* 34815 */ GIR_RootConstrainSelectedInstOperands, |
| 13835 | /* 34816 */ // GIR_Coverage, 498, |
| 13836 | /* 34816 */ GIR_EraseRootFromParent_Done, |
| 13837 | /* 34817 */ // Label 961: @34817 |
| 13838 | /* 34817 */ GIM_Try, /*On fail goto*//*Label 962*/ GIMT_Encode4(34860), // Rule ID 499 // |
| 13839 | /* 34822 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13840 | /* 34825 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmp_lt_ph), |
| 13841 | /* 34830 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 13842 | /* 34833 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13843 | /* 34836 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13844 | /* 34840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13845 | /* 34844 */ // (intrinsic_void 8102:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (CMP_LT_PH DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 13846 | /* 34844 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LT_PH), |
| 13847 | /* 34847 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13848 | /* 34849 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13849 | /* 34851 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13850 | /* 34854 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13851 | /* 34858 */ GIR_RootConstrainSelectedInstOperands, |
| 13852 | /* 34859 */ // GIR_Coverage, 499, |
| 13853 | /* 34859 */ GIR_EraseRootFromParent_Done, |
| 13854 | /* 34860 */ // Label 962: @34860 |
| 13855 | /* 34860 */ GIM_Try, /*On fail goto*//*Label 963*/ GIMT_Encode4(34903), // Rule ID 500 // |
| 13856 | /* 34865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13857 | /* 34868 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmp_le_ph), |
| 13858 | /* 34873 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 13859 | /* 34876 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13860 | /* 34879 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13861 | /* 34883 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13862 | /* 34887 */ // (intrinsic_void 8101:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (CMP_LE_PH DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 13863 | /* 34887 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LE_PH), |
| 13864 | /* 34890 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13865 | /* 34892 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13866 | /* 34894 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13867 | /* 34897 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13868 | /* 34901 */ GIR_RootConstrainSelectedInstOperands, |
| 13869 | /* 34902 */ // GIR_Coverage, 500, |
| 13870 | /* 34902 */ GIR_EraseRootFromParent_Done, |
| 13871 | /* 34903 */ // Label 963: @34903 |
| 13872 | /* 34903 */ GIM_Try, /*On fail goto*//*Label 964*/ GIMT_Encode4(34946), // Rule ID 1377 // |
| 13873 | /* 34908 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13874 | /* 34911 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmp_eq_ph), |
| 13875 | /* 34916 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 13876 | /* 34919 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13877 | /* 34922 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13878 | /* 34926 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13879 | /* 34930 */ // (intrinsic_void 8100:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (CMP_EQ_PH_MM DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 13880 | /* 34930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_EQ_PH_MM), |
| 13881 | /* 34933 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13882 | /* 34935 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13883 | /* 34937 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13884 | /* 34940 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13885 | /* 34944 */ GIR_RootConstrainSelectedInstOperands, |
| 13886 | /* 34945 */ // GIR_Coverage, 1377, |
| 13887 | /* 34945 */ GIR_EraseRootFromParent_Done, |
| 13888 | /* 34946 */ // Label 964: @34946 |
| 13889 | /* 34946 */ GIM_Try, /*On fail goto*//*Label 965*/ GIMT_Encode4(34989), // Rule ID 1378 // |
| 13890 | /* 34951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13891 | /* 34954 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmp_lt_ph), |
| 13892 | /* 34959 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 13893 | /* 34962 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13894 | /* 34965 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13895 | /* 34969 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13896 | /* 34973 */ // (intrinsic_void 8102:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (CMP_LT_PH_MM DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 13897 | /* 34973 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LT_PH_MM), |
| 13898 | /* 34976 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13899 | /* 34978 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13900 | /* 34980 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13901 | /* 34983 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13902 | /* 34987 */ GIR_RootConstrainSelectedInstOperands, |
| 13903 | /* 34988 */ // GIR_Coverage, 1378, |
| 13904 | /* 34988 */ GIR_EraseRootFromParent_Done, |
| 13905 | /* 34989 */ // Label 965: @34989 |
| 13906 | /* 34989 */ GIM_Try, /*On fail goto*//*Label 966*/ GIMT_Encode4(35032), // Rule ID 1379 // |
| 13907 | /* 34994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13908 | /* 34997 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmp_le_ph), |
| 13909 | /* 35002 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s16, |
| 13910 | /* 35005 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13911 | /* 35008 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13912 | /* 35012 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13913 | /* 35016 */ // (intrinsic_void 8101:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (CMP_LE_PH_MM DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 13914 | /* 35016 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LE_PH_MM), |
| 13915 | /* 35019 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13916 | /* 35021 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13917 | /* 35023 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13918 | /* 35026 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13919 | /* 35030 */ GIR_RootConstrainSelectedInstOperands, |
| 13920 | /* 35031 */ // GIR_Coverage, 1379, |
| 13921 | /* 35031 */ GIR_EraseRootFromParent_Done, |
| 13922 | /* 35032 */ // Label 966: @35032 |
| 13923 | /* 35032 */ GIM_Try, /*On fail goto*//*Label 967*/ GIMT_Encode4(35075), // Rule ID 1383 // |
| 13924 | /* 35037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13925 | /* 35040 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmpu_eq_qb), |
| 13926 | /* 35045 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 13927 | /* 35048 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13928 | /* 35051 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13929 | /* 35055 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13930 | /* 35059 */ // (intrinsic_void 8109:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPU_EQ_QB_MM DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 13931 | /* 35059 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPU_EQ_QB_MM), |
| 13932 | /* 35062 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13933 | /* 35064 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13934 | /* 35066 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13935 | /* 35069 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13936 | /* 35073 */ GIR_RootConstrainSelectedInstOperands, |
| 13937 | /* 35074 */ // GIR_Coverage, 1383, |
| 13938 | /* 35074 */ GIR_EraseRootFromParent_Done, |
| 13939 | /* 35075 */ // Label 967: @35075 |
| 13940 | /* 35075 */ GIM_Try, /*On fail goto*//*Label 968*/ GIMT_Encode4(35118), // Rule ID 1384 // |
| 13941 | /* 35080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13942 | /* 35083 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmpu_lt_qb), |
| 13943 | /* 35088 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 13944 | /* 35091 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13945 | /* 35094 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13946 | /* 35098 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13947 | /* 35102 */ // (intrinsic_void 8111:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPU_LT_QB_MM DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 13948 | /* 35102 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPU_LT_QB_MM), |
| 13949 | /* 35105 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13950 | /* 35107 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13951 | /* 35109 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13952 | /* 35112 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13953 | /* 35116 */ GIR_RootConstrainSelectedInstOperands, |
| 13954 | /* 35117 */ // GIR_Coverage, 1384, |
| 13955 | /* 35117 */ GIR_EraseRootFromParent_Done, |
| 13956 | /* 35118 */ // Label 968: @35118 |
| 13957 | /* 35118 */ GIM_Try, /*On fail goto*//*Label 969*/ GIMT_Encode4(35161), // Rule ID 1385 // |
| 13958 | /* 35123 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 13959 | /* 35126 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_cmpu_le_qb), |
| 13960 | /* 35131 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s8, |
| 13961 | /* 35134 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 13962 | /* 35137 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13963 | /* 35141 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13964 | /* 35145 */ // (intrinsic_void 8110:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPU_LE_QB_MM DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 13965 | /* 35145 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPU_LE_QB_MM), |
| 13966 | /* 35148 */ GIR_RootToRootCopy, /*OpIdx*/1, // rs |
| 13967 | /* 35150 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13968 | /* 35152 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 13969 | /* 35155 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 13970 | /* 35159 */ GIR_RootConstrainSelectedInstOperands, |
| 13971 | /* 35160 */ // GIR_Coverage, 1385, |
| 13972 | /* 35160 */ GIR_EraseRootFromParent_Done, |
| 13973 | /* 35161 */ // Label 969: @35161 |
| 13974 | /* 35161 */ GIM_Reject, |
| 13975 | /* 35162 */ // Label 947: @35162 |
| 13976 | /* 35162 */ GIM_Try, /*On fail goto*//*Label 970*/ GIMT_Encode4(39287), |
| 13977 | /* 35167 */ GIM_CheckNumOperands, /*MI*/0, /*Expected*/4, |
| 13978 | /* 35170 */ GIM_Try, /*On fail goto*//*Label 971*/ GIMT_Encode4(35234), // Rule ID 457 // |
| 13979 | /* 35175 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 13980 | /* 35178 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_ph), |
| 13981 | /* 35183 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 13982 | /* 35186 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 13983 | /* 35189 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 13984 | /* 35192 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13985 | /* 35196 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 13986 | /* 35200 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 13987 | /* 35204 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 13988 | /* 35208 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 13989 | /* 35212 */ // MIs[1] Operand 1 |
| 13990 | /* 35212 */ // No operand predicates |
| 13991 | /* 35212 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 13992 | /* 35214 */ // (intrinsic_w_chain:{ *:[v2i16] } 8487:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$rs_sa) => (SHLL_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, (imm:{ *:[i32] }):$rs_sa) |
| 13993 | /* 35214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLL_S_PH), |
| 13994 | /* 35217 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 13995 | /* 35219 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 13996 | /* 35221 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // rs_sa |
| 13997 | /* 35224 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 13998 | /* 35227 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 13999 | /* 35232 */ GIR_RootConstrainSelectedInstOperands, |
| 14000 | /* 35233 */ // GIR_Coverage, 457, |
| 14001 | /* 35233 */ GIR_EraseRootFromParent_Done, |
| 14002 | /* 35234 */ // Label 971: @35234 |
| 14003 | /* 35234 */ GIM_Try, /*On fail goto*//*Label 972*/ GIMT_Encode4(35298), // Rule ID 462 // |
| 14004 | /* 35239 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14005 | /* 35242 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_w), |
| 14006 | /* 35247 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14007 | /* 35250 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14008 | /* 35253 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14009 | /* 35256 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14010 | /* 35260 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14011 | /* 35264 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 14012 | /* 35268 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 14013 | /* 35272 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 14014 | /* 35276 */ // MIs[1] Operand 1 |
| 14015 | /* 35276 */ // No operand predicates |
| 14016 | /* 35276 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14017 | /* 35278 */ // (intrinsic_w_chain:{ *:[i32] } 8488:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$rs_sa) => (SHLL_S_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$rs_sa) |
| 14018 | /* 35278 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLL_S_W), |
| 14019 | /* 35281 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14020 | /* 35283 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14021 | /* 35285 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // rs_sa |
| 14022 | /* 35288 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14023 | /* 35291 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14024 | /* 35296 */ GIR_RootConstrainSelectedInstOperands, |
| 14025 | /* 35297 */ // GIR_Coverage, 462, |
| 14026 | /* 35297 */ GIR_EraseRootFromParent_Done, |
| 14027 | /* 35298 */ // Label 972: @35298 |
| 14028 | /* 35298 */ GIM_Try, /*On fail goto*//*Label 973*/ GIMT_Encode4(35362), // Rule ID 1314 // |
| 14029 | /* 35303 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14030 | /* 35306 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_ph), |
| 14031 | /* 35311 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14032 | /* 35314 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14033 | /* 35317 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14034 | /* 35320 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14035 | /* 35324 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14036 | /* 35328 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 14037 | /* 35332 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 14038 | /* 35336 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 14039 | /* 35340 */ // MIs[1] Operand 1 |
| 14040 | /* 35340 */ // No operand predicates |
| 14041 | /* 35340 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14042 | /* 35342 */ // (intrinsic_w_chain:{ *:[v2i16] } 8487:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$sa) => (SHLL_S_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, (imm:{ *:[i32] }):$sa) |
| 14043 | /* 35342 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLL_S_PH_MM), |
| 14044 | /* 35345 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 14045 | /* 35347 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14046 | /* 35349 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // sa |
| 14047 | /* 35352 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14048 | /* 35355 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14049 | /* 35360 */ GIR_RootConstrainSelectedInstOperands, |
| 14050 | /* 35361 */ // GIR_Coverage, 1314, |
| 14051 | /* 35361 */ GIR_EraseRootFromParent_Done, |
| 14052 | /* 35362 */ // Label 973: @35362 |
| 14053 | /* 35362 */ GIM_Try, /*On fail goto*//*Label 974*/ GIMT_Encode4(35426), // Rule ID 1319 // |
| 14054 | /* 35367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14055 | /* 35370 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_w), |
| 14056 | /* 35375 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14057 | /* 35378 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14058 | /* 35381 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14059 | /* 35384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14060 | /* 35388 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14061 | /* 35392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 14062 | /* 35396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 14063 | /* 35400 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 14064 | /* 35404 */ // MIs[1] Operand 1 |
| 14065 | /* 35404 */ // No operand predicates |
| 14066 | /* 35404 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14067 | /* 35406 */ // (intrinsic_w_chain:{ *:[i32] } 8488:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$sa) => (SHLL_S_W_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, (imm:{ *:[i32] }):$sa) |
| 14068 | /* 35406 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLL_S_W_MM), |
| 14069 | /* 35409 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 14070 | /* 35411 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14071 | /* 35413 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // sa |
| 14072 | /* 35416 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14073 | /* 35419 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/2, /*MergeInsnID's*/0, 1, |
| 14074 | /* 35424 */ GIR_RootConstrainSelectedInstOperands, |
| 14075 | /* 35425 */ // GIR_Coverage, 1319, |
| 14076 | /* 35425 */ GIR_EraseRootFromParent_Done, |
| 14077 | /* 35426 */ // Label 974: @35426 |
| 14078 | /* 35426 */ GIM_Try, /*On fail goto*//*Label 975*/ GIMT_Encode4(35481), // Rule ID 2069 // |
| 14079 | /* 35431 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14080 | /* 35434 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_ph), |
| 14081 | /* 35439 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14082 | /* 35442 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14083 | /* 35445 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14084 | /* 35448 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14085 | /* 35452 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 14086 | /* 35456 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 14087 | /* 35460 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 14088 | /* 35464 */ // MIs[1] Operand 1 |
| 14089 | /* 35464 */ // No operand predicates |
| 14090 | /* 35464 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14091 | /* 35466 */ // (intrinsic_w_chain:{ *:[v2i16] } 8485:{ *:[iPTR] }, v2i16:{ *:[v2i16] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$shamt) => (SHLL_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$shamt) |
| 14092 | /* 35466 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLL_PH), |
| 14093 | /* 35469 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14094 | /* 35471 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 14095 | /* 35473 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 14096 | /* 35476 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14097 | /* 35479 */ GIR_RootConstrainSelectedInstOperands, |
| 14098 | /* 35480 */ // GIR_Coverage, 2069, |
| 14099 | /* 35480 */ GIR_EraseRootFromParent_Done, |
| 14100 | /* 35481 */ // Label 975: @35481 |
| 14101 | /* 35481 */ GIM_Try, /*On fail goto*//*Label 976*/ GIMT_Encode4(35536), // Rule ID 2075 // |
| 14102 | /* 35486 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14103 | /* 35489 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_qb), |
| 14104 | /* 35494 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 14105 | /* 35497 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14106 | /* 35500 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14107 | /* 35503 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14108 | /* 35507 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/3, // MIs[1] |
| 14109 | /* 35511 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 14110 | /* 35515 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt3), |
| 14111 | /* 35519 */ // MIs[1] Operand 1 |
| 14112 | /* 35519 */ // No operand predicates |
| 14113 | /* 35519 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 14114 | /* 35521 */ // (intrinsic_w_chain:{ *:[v4i8] } 8486:{ *:[iPTR] }, v4i8:{ *:[v4i8] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$shamt) => (SHLL_QB:{ *:[v4i8] } v4i8:{ *:[v4i8] }:$a, (imm:{ *:[i32] })<<P:Predicate_immZExt3>>:$shamt) |
| 14115 | /* 35521 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLL_QB), |
| 14116 | /* 35524 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14117 | /* 35526 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 14118 | /* 35528 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 14119 | /* 35531 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14120 | /* 35534 */ GIR_RootConstrainSelectedInstOperands, |
| 14121 | /* 35535 */ // GIR_Coverage, 2075, |
| 14122 | /* 35535 */ GIR_EraseRootFromParent_Done, |
| 14123 | /* 35536 */ // Label 976: @35536 |
| 14124 | /* 35536 */ GIM_Try, /*On fail goto*//*Label 977*/ GIMT_Encode4(35588), // Rule ID 434 // |
| 14125 | /* 35541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14126 | /* 35544 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addq_s_w), |
| 14127 | /* 35549 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14128 | /* 35552 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14129 | /* 35555 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14130 | /* 35558 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14131 | /* 35562 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14132 | /* 35566 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14133 | /* 35570 */ // (intrinsic_w_chain:{ *:[i32] } 7940:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDQ_S_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 14134 | /* 35570 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQ_S_W), |
| 14135 | /* 35573 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14136 | /* 35575 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14137 | /* 35577 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14138 | /* 35579 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14139 | /* 35582 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14140 | /* 35586 */ GIR_RootConstrainSelectedInstOperands, |
| 14141 | /* 35587 */ // GIR_Coverage, 434, |
| 14142 | /* 35587 */ GIR_EraseRootFromParent_Done, |
| 14143 | /* 35588 */ // Label 977: @35588 |
| 14144 | /* 35588 */ GIM_Try, /*On fail goto*//*Label 978*/ GIMT_Encode4(35640), // Rule ID 435 // |
| 14145 | /* 35593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14146 | /* 35596 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subq_s_w), |
| 14147 | /* 35601 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14148 | /* 35604 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14149 | /* 35607 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14150 | /* 35610 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14151 | /* 35614 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14152 | /* 35618 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14153 | /* 35622 */ // (intrinsic_w_chain:{ *:[i32] } 8560:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBQ_S_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 14154 | /* 35622 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQ_S_W), |
| 14155 | /* 35625 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14156 | /* 35627 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14157 | /* 35629 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14158 | /* 35631 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14159 | /* 35634 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14160 | /* 35638 */ GIR_RootConstrainSelectedInstOperands, |
| 14161 | /* 35639 */ // GIR_Coverage, 435, |
| 14162 | /* 35639 */ GIR_EraseRootFromParent_Done, |
| 14163 | /* 35640 */ // Label 978: @35640 |
| 14164 | /* 35640 */ GIM_Try, /*On fail goto*//*Label 979*/ GIMT_Encode4(35692), // Rule ID 442 // |
| 14165 | /* 35645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14166 | /* 35648 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrq_rs_ph_w), |
| 14167 | /* 35653 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14168 | /* 35656 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14169 | /* 35659 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14170 | /* 35662 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14171 | /* 35666 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14172 | /* 35670 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14173 | /* 35674 */ // (intrinsic_w_chain:{ *:[v2i16] } 8466:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (PRECRQ_RS_PH_W:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 14174 | /* 35674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQ_RS_PH_W), |
| 14175 | /* 35677 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14176 | /* 35679 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14177 | /* 35681 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14178 | /* 35683 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14179 | /* 35686 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14180 | /* 35690 */ GIR_RootConstrainSelectedInstOperands, |
| 14181 | /* 35691 */ // GIR_Coverage, 442, |
| 14182 | /* 35691 */ GIR_EraseRootFromParent_Done, |
| 14183 | /* 35692 */ // Label 979: @35692 |
| 14184 | /* 35692 */ GIM_Try, /*On fail goto*//*Label 980*/ GIMT_Encode4(35744), // Rule ID 443 // |
| 14185 | /* 35697 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14186 | /* 35700 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrqu_s_qb_ph), |
| 14187 | /* 35705 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 14188 | /* 35708 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14189 | /* 35711 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14190 | /* 35714 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14191 | /* 35718 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14192 | /* 35722 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14193 | /* 35726 */ // (intrinsic_w_chain:{ *:[v4i8] } 8467:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECRQU_S_QB_PH:{ *:[v4i8] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14194 | /* 35726 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQU_S_QB_PH), |
| 14195 | /* 35729 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14196 | /* 35731 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14197 | /* 35733 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14198 | /* 35735 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14199 | /* 35738 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14200 | /* 35742 */ GIR_RootConstrainSelectedInstOperands, |
| 14201 | /* 35743 */ // GIR_Coverage, 443, |
| 14202 | /* 35743 */ GIR_EraseRootFromParent_Done, |
| 14203 | /* 35744 */ // Label 980: @35744 |
| 14204 | /* 35744 */ GIM_Try, /*On fail goto*//*Label 981*/ GIMT_Encode4(35796), // Rule ID 454 // |
| 14205 | /* 35749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14206 | /* 35752 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_qb), |
| 14207 | /* 35757 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 14208 | /* 35760 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14209 | /* 35763 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14210 | /* 35766 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14211 | /* 35770 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14212 | /* 35774 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14213 | /* 35778 */ // (intrinsic_w_chain:{ *:[v4i8] } 8486:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHLLV_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 14214 | /* 35778 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_QB), |
| 14215 | /* 35781 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14216 | /* 35783 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14217 | /* 35785 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 14218 | /* 35787 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14219 | /* 35790 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14220 | /* 35794 */ GIR_RootConstrainSelectedInstOperands, |
| 14221 | /* 35795 */ // GIR_Coverage, 454, |
| 14222 | /* 35795 */ GIR_EraseRootFromParent_Done, |
| 14223 | /* 35796 */ // Label 981: @35796 |
| 14224 | /* 35796 */ GIM_Try, /*On fail goto*//*Label 982*/ GIMT_Encode4(35848), // Rule ID 456 // |
| 14225 | /* 35801 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14226 | /* 35804 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_ph), |
| 14227 | /* 35809 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14228 | /* 35812 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14229 | /* 35815 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14230 | /* 35818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14231 | /* 35822 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14232 | /* 35826 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14233 | /* 35830 */ // (intrinsic_w_chain:{ *:[v2i16] } 8485:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHLLV_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 14234 | /* 35830 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_PH), |
| 14235 | /* 35833 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14236 | /* 35835 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14237 | /* 35837 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 14238 | /* 35839 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14239 | /* 35842 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14240 | /* 35846 */ GIR_RootConstrainSelectedInstOperands, |
| 14241 | /* 35847 */ // GIR_Coverage, 456, |
| 14242 | /* 35847 */ GIR_EraseRootFromParent_Done, |
| 14243 | /* 35848 */ // Label 982: @35848 |
| 14244 | /* 35848 */ GIM_Try, /*On fail goto*//*Label 983*/ GIMT_Encode4(35900), // Rule ID 458 // |
| 14245 | /* 35853 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14246 | /* 35856 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_ph), |
| 14247 | /* 35861 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14248 | /* 35864 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14249 | /* 35867 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14250 | /* 35870 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14251 | /* 35874 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14252 | /* 35878 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14253 | /* 35882 */ // (intrinsic_w_chain:{ *:[v2i16] } 8487:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHLLV_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 14254 | /* 35882 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_S_PH), |
| 14255 | /* 35885 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14256 | /* 35887 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14257 | /* 35889 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 14258 | /* 35891 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14259 | /* 35894 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14260 | /* 35898 */ GIR_RootConstrainSelectedInstOperands, |
| 14261 | /* 35899 */ // GIR_Coverage, 458, |
| 14262 | /* 35899 */ GIR_EraseRootFromParent_Done, |
| 14263 | /* 35900 */ // Label 983: @35900 |
| 14264 | /* 35900 */ GIM_Try, /*On fail goto*//*Label 984*/ GIMT_Encode4(35952), // Rule ID 463 // |
| 14265 | /* 35905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14266 | /* 35908 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_w), |
| 14267 | /* 35913 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14268 | /* 35916 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14269 | /* 35919 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14270 | /* 35922 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14271 | /* 35926 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14272 | /* 35930 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14273 | /* 35934 */ // (intrinsic_w_chain:{ *:[i32] } 8488:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) => (SHLLV_S_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs_sa) |
| 14274 | /* 35934 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_S_W), |
| 14275 | /* 35937 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14276 | /* 35939 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14277 | /* 35941 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs_sa |
| 14278 | /* 35943 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14279 | /* 35946 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14280 | /* 35950 */ GIR_RootConstrainSelectedInstOperands, |
| 14281 | /* 35951 */ // GIR_Coverage, 463, |
| 14282 | /* 35951 */ GIR_EraseRootFromParent_Done, |
| 14283 | /* 35952 */ // Label 984: @35952 |
| 14284 | /* 35952 */ GIM_Try, /*On fail goto*//*Label 985*/ GIMT_Encode4(36004), // Rule ID 466 // |
| 14285 | /* 35957 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14286 | /* 35960 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleu_s_ph_qbl), |
| 14287 | /* 35965 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14288 | /* 35968 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14289 | /* 35971 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14290 | /* 35974 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14291 | /* 35978 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14292 | /* 35982 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14293 | /* 35986 */ // (intrinsic_w_chain:{ *:[v2i16] } 8408:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEU_S_PH_QBL:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14294 | /* 35986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEU_S_PH_QBL), |
| 14295 | /* 35989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14296 | /* 35991 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14297 | /* 35993 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14298 | /* 35995 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14299 | /* 35998 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14300 | /* 36002 */ GIR_RootConstrainSelectedInstOperands, |
| 14301 | /* 36003 */ // GIR_Coverage, 466, |
| 14302 | /* 36003 */ GIR_EraseRootFromParent_Done, |
| 14303 | /* 36004 */ // Label 985: @36004 |
| 14304 | /* 36004 */ GIM_Try, /*On fail goto*//*Label 986*/ GIMT_Encode4(36056), // Rule ID 467 // |
| 14305 | /* 36009 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14306 | /* 36012 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleu_s_ph_qbr), |
| 14307 | /* 36017 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14308 | /* 36020 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14309 | /* 36023 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14310 | /* 36026 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14311 | /* 36030 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14312 | /* 36034 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14313 | /* 36038 */ // (intrinsic_w_chain:{ *:[v2i16] } 8409:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEU_S_PH_QBR:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14314 | /* 36038 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEU_S_PH_QBR), |
| 14315 | /* 36041 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14316 | /* 36043 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14317 | /* 36045 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14318 | /* 36047 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14319 | /* 36050 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14320 | /* 36054 */ GIR_RootConstrainSelectedInstOperands, |
| 14321 | /* 36055 */ // GIR_Coverage, 467, |
| 14322 | /* 36055 */ GIR_EraseRootFromParent_Done, |
| 14323 | /* 36056 */ // Label 986: @36056 |
| 14324 | /* 36056 */ GIM_Try, /*On fail goto*//*Label 987*/ GIMT_Encode4(36108), // Rule ID 468 // |
| 14325 | /* 36061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14326 | /* 36064 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleq_s_w_phl), |
| 14327 | /* 36069 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14328 | /* 36072 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14329 | /* 36075 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14330 | /* 36078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14331 | /* 36082 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14332 | /* 36086 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14333 | /* 36090 */ // (intrinsic_w_chain:{ *:[i32] } 8406:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEQ_S_W_PHL:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14334 | /* 36090 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEQ_S_W_PHL), |
| 14335 | /* 36093 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14336 | /* 36095 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14337 | /* 36097 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14338 | /* 36099 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14339 | /* 36102 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14340 | /* 36106 */ GIR_RootConstrainSelectedInstOperands, |
| 14341 | /* 36107 */ // GIR_Coverage, 468, |
| 14342 | /* 36107 */ GIR_EraseRootFromParent_Done, |
| 14343 | /* 36108 */ // Label 987: @36108 |
| 14344 | /* 36108 */ GIM_Try, /*On fail goto*//*Label 988*/ GIMT_Encode4(36160), // Rule ID 469 // |
| 14345 | /* 36113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14346 | /* 36116 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleq_s_w_phr), |
| 14347 | /* 36121 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14348 | /* 36124 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14349 | /* 36127 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14350 | /* 36130 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14351 | /* 36134 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14352 | /* 36138 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14353 | /* 36142 */ // (intrinsic_w_chain:{ *:[i32] } 8407:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEQ_S_W_PHR:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14354 | /* 36142 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEQ_S_W_PHR), |
| 14355 | /* 36145 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14356 | /* 36147 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14357 | /* 36149 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14358 | /* 36151 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14359 | /* 36154 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14360 | /* 36158 */ GIR_RootConstrainSelectedInstOperands, |
| 14361 | /* 36159 */ // GIR_Coverage, 469, |
| 14362 | /* 36159 */ GIR_EraseRootFromParent_Done, |
| 14363 | /* 36160 */ // Label 988: @36160 |
| 14364 | /* 36160 */ GIM_Try, /*On fail goto*//*Label 989*/ GIMT_Encode4(36212), // Rule ID 470 // |
| 14365 | /* 36165 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14366 | /* 36168 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_rs_ph), |
| 14367 | /* 36173 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14368 | /* 36176 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14369 | /* 36179 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14370 | /* 36182 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14371 | /* 36186 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14372 | /* 36190 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14373 | /* 36194 */ // (intrinsic_w_chain:{ *:[v2i16] } 8410:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULQ_RS_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14374 | /* 36194 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_RS_PH), |
| 14375 | /* 36197 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14376 | /* 36199 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14377 | /* 36201 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14378 | /* 36203 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14379 | /* 36206 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14380 | /* 36210 */ GIR_RootConstrainSelectedInstOperands, |
| 14381 | /* 36211 */ // GIR_Coverage, 470, |
| 14382 | /* 36211 */ GIR_EraseRootFromParent_Done, |
| 14383 | /* 36212 */ // Label 989: @36212 |
| 14384 | /* 36212 */ GIM_Try, /*On fail goto*//*Label 990*/ GIMT_Encode4(36261), // Rule ID 495 // |
| 14385 | /* 36217 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14386 | /* 36220 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgu_eq_qb), |
| 14387 | /* 36225 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14388 | /* 36228 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14389 | /* 36231 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 14390 | /* 36234 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14391 | /* 36238 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14392 | /* 36242 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14393 | /* 36246 */ // (intrinsic_w_chain:{ *:[i32] } 8106:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGU_EQ_QB:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 14394 | /* 36246 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGU_EQ_QB), |
| 14395 | /* 36249 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14396 | /* 36251 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14397 | /* 36253 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14398 | /* 36255 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14399 | /* 36259 */ GIR_RootConstrainSelectedInstOperands, |
| 14400 | /* 36260 */ // GIR_Coverage, 495, |
| 14401 | /* 36260 */ GIR_EraseRootFromParent_Done, |
| 14402 | /* 36261 */ // Label 990: @36261 |
| 14403 | /* 36261 */ GIM_Try, /*On fail goto*//*Label 991*/ GIMT_Encode4(36310), // Rule ID 496 // |
| 14404 | /* 36266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14405 | /* 36269 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgu_lt_qb), |
| 14406 | /* 36274 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14407 | /* 36277 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14408 | /* 36280 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 14409 | /* 36283 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14410 | /* 36287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14411 | /* 36291 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14412 | /* 36295 */ // (intrinsic_w_chain:{ *:[i32] } 8108:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGU_LT_QB:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 14413 | /* 36295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGU_LT_QB), |
| 14414 | /* 36298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14415 | /* 36300 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14416 | /* 36302 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14417 | /* 36304 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14418 | /* 36308 */ GIR_RootConstrainSelectedInstOperands, |
| 14419 | /* 36309 */ // GIR_Coverage, 496, |
| 14420 | /* 36309 */ GIR_EraseRootFromParent_Done, |
| 14421 | /* 36310 */ // Label 991: @36310 |
| 14422 | /* 36310 */ GIM_Try, /*On fail goto*//*Label 992*/ GIMT_Encode4(36359), // Rule ID 497 // |
| 14423 | /* 36315 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14424 | /* 36318 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgu_le_qb), |
| 14425 | /* 36323 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14426 | /* 36326 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14427 | /* 36329 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 14428 | /* 36332 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14429 | /* 36336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14430 | /* 36340 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14431 | /* 36344 */ // (intrinsic_w_chain:{ *:[i32] } 8107:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGU_LE_QB:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 14432 | /* 36344 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGU_LE_QB), |
| 14433 | /* 36347 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14434 | /* 36349 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14435 | /* 36351 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14436 | /* 36353 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14437 | /* 36357 */ GIR_RootConstrainSelectedInstOperands, |
| 14438 | /* 36358 */ // GIR_Coverage, 497, |
| 14439 | /* 36358 */ GIR_EraseRootFromParent_Done, |
| 14440 | /* 36359 */ // Label 992: @36359 |
| 14441 | /* 36359 */ GIM_Try, /*On fail goto*//*Label 993*/ GIMT_Encode4(36408), // Rule ID 507 // |
| 14442 | /* 36364 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14443 | /* 36367 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_pick_qb), |
| 14444 | /* 36372 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 14445 | /* 36375 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14446 | /* 36378 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 14447 | /* 36381 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14448 | /* 36385 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14449 | /* 36389 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14450 | /* 36393 */ // (intrinsic_w_chain:{ *:[v4i8] } 8450:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (PICK_QB:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 14451 | /* 36393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PICK_QB), |
| 14452 | /* 36396 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14453 | /* 36398 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14454 | /* 36400 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14455 | /* 36402 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14456 | /* 36406 */ GIR_RootConstrainSelectedInstOperands, |
| 14457 | /* 36407 */ // GIR_Coverage, 507, |
| 14458 | /* 36407 */ GIR_EraseRootFromParent_Done, |
| 14459 | /* 36408 */ // Label 993: @36408 |
| 14460 | /* 36408 */ GIM_Try, /*On fail goto*//*Label 994*/ GIMT_Encode4(36457), // Rule ID 508 // |
| 14461 | /* 36413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14462 | /* 36416 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_pick_ph), |
| 14463 | /* 36421 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14464 | /* 36424 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14465 | /* 36427 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14466 | /* 36430 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14467 | /* 36434 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14468 | /* 36438 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14469 | /* 36442 */ // (intrinsic_w_chain:{ *:[v2i16] } 8449:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PICK_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14470 | /* 36442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PICK_PH), |
| 14471 | /* 36445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14472 | /* 36447 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14473 | /* 36449 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14474 | /* 36451 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14475 | /* 36455 */ GIR_RootConstrainSelectedInstOperands, |
| 14476 | /* 36456 */ // GIR_Coverage, 508, |
| 14477 | /* 36456 */ GIR_EraseRootFromParent_Done, |
| 14478 | /* 36457 */ // Label 994: @36457 |
| 14479 | /* 36457 */ GIM_Try, /*On fail goto*//*Label 995*/ GIMT_Encode4(36506), // Rule ID 512 // |
| 14480 | /* 36462 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 14481 | /* 36465 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_insv), |
| 14482 | /* 36470 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14483 | /* 36473 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14484 | /* 36476 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14485 | /* 36479 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14486 | /* 36483 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14487 | /* 36487 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14488 | /* 36491 */ // (intrinsic_w_chain:{ *:[i32] } 8308:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs) => (INSV:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs) |
| 14489 | /* 36491 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSV), |
| 14490 | /* 36494 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 14491 | /* 36496 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 14492 | /* 36498 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 14493 | /* 36500 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14494 | /* 36504 */ GIR_RootConstrainSelectedInstOperands, |
| 14495 | /* 36505 */ // GIR_Coverage, 512, |
| 14496 | /* 36505 */ GIR_EraseRootFromParent_Done, |
| 14497 | /* 36506 */ // Label 995: @36506 |
| 14498 | /* 36506 */ GIM_Try, /*On fail goto*//*Label 996*/ GIMT_Encode4(36558), // Rule ID 518 // |
| 14499 | /* 36511 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14500 | /* 36514 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addu_ph), |
| 14501 | /* 36519 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14502 | /* 36522 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14503 | /* 36525 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14504 | /* 36528 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14505 | /* 36532 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14506 | /* 36536 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14507 | /* 36540 */ // (intrinsic_w_chain:{ *:[v2i16] } 7958:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDU_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14508 | /* 36540 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDU_PH), |
| 14509 | /* 36543 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14510 | /* 36545 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14511 | /* 36547 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14512 | /* 36549 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14513 | /* 36552 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14514 | /* 36556 */ GIR_RootConstrainSelectedInstOperands, |
| 14515 | /* 36557 */ // GIR_Coverage, 518, |
| 14516 | /* 36557 */ GIR_EraseRootFromParent_Done, |
| 14517 | /* 36558 */ // Label 996: @36558 |
| 14518 | /* 36558 */ GIM_Try, /*On fail goto*//*Label 997*/ GIMT_Encode4(36610), // Rule ID 519 // |
| 14519 | /* 36563 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14520 | /* 36566 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addu_s_ph), |
| 14521 | /* 36571 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14522 | /* 36574 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14523 | /* 36577 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14524 | /* 36580 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14525 | /* 36584 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14526 | /* 36588 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14527 | /* 36592 */ // (intrinsic_w_chain:{ *:[v2i16] } 7960:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDU_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14528 | /* 36592 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDU_S_PH), |
| 14529 | /* 36595 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14530 | /* 36597 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14531 | /* 36599 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14532 | /* 36601 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14533 | /* 36604 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14534 | /* 36608 */ GIR_RootConstrainSelectedInstOperands, |
| 14535 | /* 36609 */ // GIR_Coverage, 519, |
| 14536 | /* 36609 */ GIR_EraseRootFromParent_Done, |
| 14537 | /* 36610 */ // Label 997: @36610 |
| 14538 | /* 36610 */ GIM_Try, /*On fail goto*//*Label 998*/ GIMT_Encode4(36662), // Rule ID 520 // |
| 14539 | /* 36615 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14540 | /* 36618 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subu_ph), |
| 14541 | /* 36623 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14542 | /* 36626 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14543 | /* 36629 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14544 | /* 36632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14545 | /* 36636 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14546 | /* 36640 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14547 | /* 36644 */ // (intrinsic_w_chain:{ *:[v2i16] } 8581:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBU_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14548 | /* 36644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBU_PH), |
| 14549 | /* 36647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14550 | /* 36649 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14551 | /* 36651 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14552 | /* 36653 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14553 | /* 36656 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14554 | /* 36660 */ GIR_RootConstrainSelectedInstOperands, |
| 14555 | /* 36661 */ // GIR_Coverage, 520, |
| 14556 | /* 36661 */ GIR_EraseRootFromParent_Done, |
| 14557 | /* 36662 */ // Label 998: @36662 |
| 14558 | /* 36662 */ GIM_Try, /*On fail goto*//*Label 999*/ GIMT_Encode4(36714), // Rule ID 521 // |
| 14559 | /* 36667 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14560 | /* 36670 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subu_s_ph), |
| 14561 | /* 36675 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14562 | /* 36678 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14563 | /* 36681 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14564 | /* 36684 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14565 | /* 36688 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14566 | /* 36692 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14567 | /* 36696 */ // (intrinsic_w_chain:{ *:[v2i16] } 8583:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBU_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14568 | /* 36696 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBU_S_PH), |
| 14569 | /* 36699 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14570 | /* 36701 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14571 | /* 36703 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14572 | /* 36705 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14573 | /* 36708 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14574 | /* 36712 */ GIR_RootConstrainSelectedInstOperands, |
| 14575 | /* 36713 */ // GIR_Coverage, 521, |
| 14576 | /* 36713 */ GIR_EraseRootFromParent_Done, |
| 14577 | /* 36714 */ // Label 999: @36714 |
| 14578 | /* 36714 */ GIM_Try, /*On fail goto*//*Label 1000*/ GIMT_Encode4(36766), // Rule ID 522 // |
| 14579 | /* 36719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14580 | /* 36722 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgdu_eq_qb), |
| 14581 | /* 36727 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14582 | /* 36730 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14583 | /* 36733 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 14584 | /* 36736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14585 | /* 36740 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14586 | /* 36744 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14587 | /* 36748 */ // (intrinsic_w_chain:{ *:[i32] } 8103:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGDU_EQ_QB:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 14588 | /* 36748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGDU_EQ_QB), |
| 14589 | /* 36751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14590 | /* 36753 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14591 | /* 36755 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14592 | /* 36757 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 14593 | /* 36760 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14594 | /* 36764 */ GIR_RootConstrainSelectedInstOperands, |
| 14595 | /* 36765 */ // GIR_Coverage, 522, |
| 14596 | /* 36765 */ GIR_EraseRootFromParent_Done, |
| 14597 | /* 36766 */ // Label 1000: @36766 |
| 14598 | /* 36766 */ GIM_Try, /*On fail goto*//*Label 1001*/ GIMT_Encode4(36818), // Rule ID 523 // |
| 14599 | /* 36771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14600 | /* 36774 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgdu_lt_qb), |
| 14601 | /* 36779 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14602 | /* 36782 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14603 | /* 36785 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 14604 | /* 36788 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14605 | /* 36792 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14606 | /* 36796 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14607 | /* 36800 */ // (intrinsic_w_chain:{ *:[i32] } 8105:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGDU_LT_QB:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 14608 | /* 36800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGDU_LT_QB), |
| 14609 | /* 36803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14610 | /* 36805 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14611 | /* 36807 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14612 | /* 36809 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 14613 | /* 36812 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14614 | /* 36816 */ GIR_RootConstrainSelectedInstOperands, |
| 14615 | /* 36817 */ // GIR_Coverage, 523, |
| 14616 | /* 36817 */ GIR_EraseRootFromParent_Done, |
| 14617 | /* 36818 */ // Label 1001: @36818 |
| 14618 | /* 36818 */ GIM_Try, /*On fail goto*//*Label 1002*/ GIMT_Encode4(36870), // Rule ID 524 // |
| 14619 | /* 36823 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14620 | /* 36826 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgdu_le_qb), |
| 14621 | /* 36831 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14622 | /* 36834 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14623 | /* 36837 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 14624 | /* 36840 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14625 | /* 36844 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14626 | /* 36848 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14627 | /* 36852 */ // (intrinsic_w_chain:{ *:[i32] } 8104:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGDU_LE_QB:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 14628 | /* 36852 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGDU_LE_QB), |
| 14629 | /* 36855 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14630 | /* 36857 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14631 | /* 36859 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14632 | /* 36861 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 14633 | /* 36864 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14634 | /* 36868 */ GIR_RootConstrainSelectedInstOperands, |
| 14635 | /* 36869 */ // GIR_Coverage, 524, |
| 14636 | /* 36869 */ GIR_EraseRootFromParent_Done, |
| 14637 | /* 36870 */ // Label 1002: @36870 |
| 14638 | /* 36870 */ GIM_Try, /*On fail goto*//*Label 1003*/ GIMT_Encode4(36922), // Rule ID 538 // |
| 14639 | /* 36875 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14640 | /* 36878 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mul_s_ph), |
| 14641 | /* 36883 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14642 | /* 36886 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14643 | /* 36889 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14644 | /* 36892 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14645 | /* 36896 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14646 | /* 36900 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14647 | /* 36904 */ // (intrinsic_w_chain:{ *:[v2i16] } 8405:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MUL_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14648 | /* 36904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MUL_S_PH), |
| 14649 | /* 36907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14650 | /* 36909 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14651 | /* 36911 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14652 | /* 36913 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14653 | /* 36916 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14654 | /* 36920 */ GIR_RootConstrainSelectedInstOperands, |
| 14655 | /* 36921 */ // GIR_Coverage, 538, |
| 14656 | /* 36921 */ GIR_EraseRootFromParent_Done, |
| 14657 | /* 36922 */ // Label 1003: @36922 |
| 14658 | /* 36922 */ GIM_Try, /*On fail goto*//*Label 1004*/ GIMT_Encode4(36974), // Rule ID 539 // |
| 14659 | /* 36927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14660 | /* 36930 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_s_w), |
| 14661 | /* 36935 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14662 | /* 36938 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14663 | /* 36941 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14664 | /* 36944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14665 | /* 36948 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14666 | /* 36952 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14667 | /* 36956 */ // (intrinsic_w_chain:{ *:[i32] } 8413:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MULQ_S_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 14668 | /* 36956 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_S_W), |
| 14669 | /* 36959 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14670 | /* 36961 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14671 | /* 36963 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14672 | /* 36965 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14673 | /* 36968 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14674 | /* 36972 */ GIR_RootConstrainSelectedInstOperands, |
| 14675 | /* 36973 */ // GIR_Coverage, 539, |
| 14676 | /* 36973 */ GIR_EraseRootFromParent_Done, |
| 14677 | /* 36974 */ // Label 1004: @36974 |
| 14678 | /* 36974 */ GIM_Try, /*On fail goto*//*Label 1005*/ GIMT_Encode4(37026), // Rule ID 540 // |
| 14679 | /* 36979 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14680 | /* 36982 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_rs_w), |
| 14681 | /* 36987 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14682 | /* 36990 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14683 | /* 36993 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14684 | /* 36996 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14685 | /* 37000 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14686 | /* 37004 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14687 | /* 37008 */ // (intrinsic_w_chain:{ *:[i32] } 8411:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MULQ_RS_W:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 14688 | /* 37008 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_RS_W), |
| 14689 | /* 37011 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14690 | /* 37013 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14691 | /* 37015 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14692 | /* 37017 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14693 | /* 37020 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14694 | /* 37024 */ GIR_RootConstrainSelectedInstOperands, |
| 14695 | /* 37025 */ // GIR_Coverage, 540, |
| 14696 | /* 37025 */ GIR_EraseRootFromParent_Done, |
| 14697 | /* 37026 */ // Label 1005: @37026 |
| 14698 | /* 37026 */ GIM_Try, /*On fail goto*//*Label 1006*/ GIMT_Encode4(37078), // Rule ID 541 // |
| 14699 | /* 37031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14700 | /* 37034 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_s_ph), |
| 14701 | /* 37039 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14702 | /* 37042 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14703 | /* 37045 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14704 | /* 37048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14705 | /* 37052 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14706 | /* 37056 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14707 | /* 37060 */ // (intrinsic_w_chain:{ *:[v2i16] } 8412:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULQ_S_PH:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14708 | /* 37060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_S_PH), |
| 14709 | /* 37063 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14710 | /* 37065 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14711 | /* 37067 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14712 | /* 37069 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14713 | /* 37072 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14714 | /* 37076 */ GIR_RootConstrainSelectedInstOperands, |
| 14715 | /* 37077 */ // GIR_Coverage, 541, |
| 14716 | /* 37077 */ GIR_EraseRootFromParent_Done, |
| 14717 | /* 37078 */ // Label 1006: @37078 |
| 14718 | /* 37078 */ GIM_Try, /*On fail goto*//*Label 1007*/ GIMT_Encode4(37127), // Rule ID 551 // |
| 14719 | /* 37083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 14720 | /* 37086 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precr_qb_ph), |
| 14721 | /* 37091 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 14722 | /* 37094 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14723 | /* 37097 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14724 | /* 37100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14725 | /* 37104 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14726 | /* 37108 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14727 | /* 37112 */ // (intrinsic_w_chain:{ *:[v4i8] } 8461:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECR_QB_PH:{ *:[v4i8] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14728 | /* 37112 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECR_QB_PH), |
| 14729 | /* 37115 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14730 | /* 37117 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14731 | /* 37119 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14732 | /* 37121 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14733 | /* 37125 */ GIR_RootConstrainSelectedInstOperands, |
| 14734 | /* 37126 */ // GIR_Coverage, 551, |
| 14735 | /* 37126 */ GIR_EraseRootFromParent_Done, |
| 14736 | /* 37127 */ // Label 1007: @37127 |
| 14737 | /* 37127 */ GIM_Try, /*On fail goto*//*Label 1008*/ GIMT_Encode4(37179), // Rule ID 1299 // |
| 14738 | /* 37132 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14739 | /* 37135 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addq_s_w), |
| 14740 | /* 37140 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14741 | /* 37143 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14742 | /* 37146 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14743 | /* 37149 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14744 | /* 37153 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14745 | /* 37157 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14746 | /* 37161 */ // (intrinsic_w_chain:{ *:[i32] } 7940:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (ADDQ_S_W_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 14747 | /* 37161 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDQ_S_W_MM), |
| 14748 | /* 37164 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14749 | /* 37166 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14750 | /* 37168 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14751 | /* 37170 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14752 | /* 37173 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14753 | /* 37177 */ GIR_RootConstrainSelectedInstOperands, |
| 14754 | /* 37178 */ // GIR_Coverage, 1299, |
| 14755 | /* 37178 */ GIR_EraseRootFromParent_Done, |
| 14756 | /* 37179 */ // Label 1008: @37179 |
| 14757 | /* 37179 */ GIM_Try, /*On fail goto*//*Label 1009*/ GIMT_Encode4(37228), // Rule ID 1307 // |
| 14758 | /* 37184 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14759 | /* 37187 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_insv), |
| 14760 | /* 37192 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14761 | /* 37195 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14762 | /* 37198 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14763 | /* 37201 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14764 | /* 37205 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14765 | /* 37209 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14766 | /* 37213 */ // (intrinsic_w_chain:{ *:[i32] } 8308:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs) => (INSV_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$src, GPR32Opnd:{ *:[i32] }:$rs) |
| 14767 | /* 37213 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSV_MM), |
| 14768 | /* 37216 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 14769 | /* 37218 */ GIR_RootToRootCopy, /*OpIdx*/2, // src |
| 14770 | /* 37220 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 14771 | /* 37222 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14772 | /* 37226 */ GIR_RootConstrainSelectedInstOperands, |
| 14773 | /* 37227 */ // GIR_Coverage, 1307, |
| 14774 | /* 37227 */ GIR_EraseRootFromParent_Done, |
| 14775 | /* 37228 */ // Label 1009: @37228 |
| 14776 | /* 37228 */ GIM_Try, /*On fail goto*//*Label 1010*/ GIMT_Encode4(37280), // Rule ID 1315 // |
| 14777 | /* 37233 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14778 | /* 37236 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_ph), |
| 14779 | /* 37241 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14780 | /* 37244 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14781 | /* 37247 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14782 | /* 37250 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14783 | /* 37254 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14784 | /* 37258 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14785 | /* 37262 */ // (intrinsic_w_chain:{ *:[v2i16] } 8485:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHLLV_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 14786 | /* 37262 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_PH_MM), |
| 14787 | /* 37265 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14788 | /* 37267 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14789 | /* 37269 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 14790 | /* 37271 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14791 | /* 37274 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14792 | /* 37278 */ GIR_RootConstrainSelectedInstOperands, |
| 14793 | /* 37279 */ // GIR_Coverage, 1315, |
| 14794 | /* 37279 */ GIR_EraseRootFromParent_Done, |
| 14795 | /* 37280 */ // Label 1010: @37280 |
| 14796 | /* 37280 */ GIM_Try, /*On fail goto*//*Label 1011*/ GIMT_Encode4(37332), // Rule ID 1316 // |
| 14797 | /* 37285 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14798 | /* 37288 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_ph), |
| 14799 | /* 37293 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14800 | /* 37296 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14801 | /* 37299 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14802 | /* 37302 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14803 | /* 37306 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14804 | /* 37310 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14805 | /* 37314 */ // (intrinsic_w_chain:{ *:[v2i16] } 8487:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHLLV_S_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 14806 | /* 37314 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_S_PH_MM), |
| 14807 | /* 37317 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14808 | /* 37319 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14809 | /* 37321 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 14810 | /* 37323 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14811 | /* 37326 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14812 | /* 37330 */ GIR_RootConstrainSelectedInstOperands, |
| 14813 | /* 37331 */ // GIR_Coverage, 1316, |
| 14814 | /* 37331 */ GIR_EraseRootFromParent_Done, |
| 14815 | /* 37332 */ // Label 1011: @37332 |
| 14816 | /* 37332 */ GIM_Try, /*On fail goto*//*Label 1012*/ GIMT_Encode4(37384), // Rule ID 1317 // |
| 14817 | /* 37337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14818 | /* 37340 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_qb), |
| 14819 | /* 37345 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 14820 | /* 37348 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14821 | /* 37351 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14822 | /* 37354 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14823 | /* 37358 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14824 | /* 37362 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14825 | /* 37366 */ // (intrinsic_w_chain:{ *:[v4i8] } 8486:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHLLV_QB_MM:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 14826 | /* 37366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_QB_MM), |
| 14827 | /* 37369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14828 | /* 37371 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14829 | /* 37373 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 14830 | /* 37375 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14831 | /* 37378 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14832 | /* 37382 */ GIR_RootConstrainSelectedInstOperands, |
| 14833 | /* 37383 */ // GIR_Coverage, 1317, |
| 14834 | /* 37383 */ GIR_EraseRootFromParent_Done, |
| 14835 | /* 37384 */ // Label 1012: @37384 |
| 14836 | /* 37384 */ GIM_Try, /*On fail goto*//*Label 1013*/ GIMT_Encode4(37436), // Rule ID 1318 // |
| 14837 | /* 37389 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14838 | /* 37392 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_shll_s_w), |
| 14839 | /* 37397 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14840 | /* 37400 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14841 | /* 37403 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14842 | /* 37406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14843 | /* 37410 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14844 | /* 37414 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14845 | /* 37418 */ // (intrinsic_w_chain:{ *:[i32] } 8488:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SHLLV_S_W_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 14846 | /* 37418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SHLLV_S_W_MM), |
| 14847 | /* 37421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14848 | /* 37423 */ GIR_RootToRootCopy, /*OpIdx*/2, // rt |
| 14849 | /* 37425 */ GIR_RootToRootCopy, /*OpIdx*/3, // rs |
| 14850 | /* 37427 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14851 | /* 37430 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14852 | /* 37434 */ GIR_RootConstrainSelectedInstOperands, |
| 14853 | /* 37435 */ // GIR_Coverage, 1318, |
| 14854 | /* 37435 */ GIR_EraseRootFromParent_Done, |
| 14855 | /* 37436 */ // Label 1013: @37436 |
| 14856 | /* 37436 */ GIM_Try, /*On fail goto*//*Label 1014*/ GIMT_Encode4(37488), // Rule ID 1337 // |
| 14857 | /* 37441 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14858 | /* 37444 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subq_s_w), |
| 14859 | /* 37449 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14860 | /* 37452 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 14861 | /* 37455 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 14862 | /* 37458 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14863 | /* 37462 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14864 | /* 37466 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14865 | /* 37470 */ // (intrinsic_w_chain:{ *:[i32] } 8560:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (SUBQ_S_W_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 14866 | /* 37470 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBQ_S_W_MM), |
| 14867 | /* 37473 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14868 | /* 37475 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14869 | /* 37477 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14870 | /* 37479 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 14871 | /* 37482 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14872 | /* 37486 */ GIR_RootConstrainSelectedInstOperands, |
| 14873 | /* 37487 */ // GIR_Coverage, 1337, |
| 14874 | /* 37487 */ GIR_EraseRootFromParent_Done, |
| 14875 | /* 37488 */ // Label 1014: @37488 |
| 14876 | /* 37488 */ GIM_Try, /*On fail goto*//*Label 1015*/ GIMT_Encode4(37540), // Rule ID 1343 // |
| 14877 | /* 37493 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14878 | /* 37496 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleq_s_w_phl), |
| 14879 | /* 37501 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14880 | /* 37504 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14881 | /* 37507 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14882 | /* 37510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14883 | /* 37514 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14884 | /* 37518 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14885 | /* 37522 */ // (intrinsic_w_chain:{ *:[i32] } 8406:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEQ_S_W_PHL_MM:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14886 | /* 37522 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEQ_S_W_PHL_MM), |
| 14887 | /* 37525 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14888 | /* 37527 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14889 | /* 37529 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14890 | /* 37531 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14891 | /* 37534 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14892 | /* 37538 */ GIR_RootConstrainSelectedInstOperands, |
| 14893 | /* 37539 */ // GIR_Coverage, 1343, |
| 14894 | /* 37539 */ GIR_EraseRootFromParent_Done, |
| 14895 | /* 37540 */ // Label 1015: @37540 |
| 14896 | /* 37540 */ GIM_Try, /*On fail goto*//*Label 1016*/ GIMT_Encode4(37592), // Rule ID 1344 // |
| 14897 | /* 37545 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14898 | /* 37548 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleq_s_w_phr), |
| 14899 | /* 37553 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 14900 | /* 37556 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14901 | /* 37559 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14902 | /* 37562 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 14903 | /* 37566 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14904 | /* 37570 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14905 | /* 37574 */ // (intrinsic_w_chain:{ *:[i32] } 8407:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEQ_S_W_PHR_MM:{ *:[i32] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14906 | /* 37574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEQ_S_W_PHR_MM), |
| 14907 | /* 37577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14908 | /* 37579 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14909 | /* 37581 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14910 | /* 37583 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14911 | /* 37586 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14912 | /* 37590 */ GIR_RootConstrainSelectedInstOperands, |
| 14913 | /* 37591 */ // GIR_Coverage, 1344, |
| 14914 | /* 37591 */ GIR_EraseRootFromParent_Done, |
| 14915 | /* 37592 */ // Label 1016: @37592 |
| 14916 | /* 37592 */ GIM_Try, /*On fail goto*//*Label 1017*/ GIMT_Encode4(37644), // Rule ID 1345 // |
| 14917 | /* 37597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14918 | /* 37600 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleu_s_ph_qbl), |
| 14919 | /* 37605 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14920 | /* 37608 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14921 | /* 37611 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14922 | /* 37614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14923 | /* 37618 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14924 | /* 37622 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14925 | /* 37626 */ // (intrinsic_w_chain:{ *:[v2i16] } 8408:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEU_S_PH_QBL_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14926 | /* 37626 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEU_S_PH_QBL_MM), |
| 14927 | /* 37629 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14928 | /* 37631 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14929 | /* 37633 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14930 | /* 37635 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14931 | /* 37638 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14932 | /* 37642 */ GIR_RootConstrainSelectedInstOperands, |
| 14933 | /* 37643 */ // GIR_Coverage, 1345, |
| 14934 | /* 37643 */ GIR_EraseRootFromParent_Done, |
| 14935 | /* 37644 */ // Label 1017: @37644 |
| 14936 | /* 37644 */ GIM_Try, /*On fail goto*//*Label 1018*/ GIMT_Encode4(37696), // Rule ID 1346 // |
| 14937 | /* 37649 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14938 | /* 37652 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_muleu_s_ph_qbr), |
| 14939 | /* 37657 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14940 | /* 37660 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 14941 | /* 37663 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14942 | /* 37666 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14943 | /* 37670 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14944 | /* 37674 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14945 | /* 37678 */ // (intrinsic_w_chain:{ *:[v2i16] } 8409:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULEU_S_PH_QBR_MM:{ *:[v2i16] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14946 | /* 37678 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULEU_S_PH_QBR_MM), |
| 14947 | /* 37681 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14948 | /* 37683 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14949 | /* 37685 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14950 | /* 37687 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14951 | /* 37690 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14952 | /* 37694 */ GIR_RootConstrainSelectedInstOperands, |
| 14953 | /* 37695 */ // GIR_Coverage, 1346, |
| 14954 | /* 37695 */ GIR_EraseRootFromParent_Done, |
| 14955 | /* 37696 */ // Label 1018: @37696 |
| 14956 | /* 37696 */ GIM_Try, /*On fail goto*//*Label 1019*/ GIMT_Encode4(37748), // Rule ID 1347 // |
| 14957 | /* 37701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14958 | /* 37704 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_rs_ph), |
| 14959 | /* 37709 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 14960 | /* 37712 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14961 | /* 37715 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14962 | /* 37718 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14963 | /* 37722 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14964 | /* 37726 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14965 | /* 37730 */ // (intrinsic_w_chain:{ *:[v2i16] } 8410:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULQ_RS_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14966 | /* 37730 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_RS_PH_MM), |
| 14967 | /* 37733 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14968 | /* 37735 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14969 | /* 37737 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14970 | /* 37739 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 14971 | /* 37742 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14972 | /* 37746 */ GIR_RootConstrainSelectedInstOperands, |
| 14973 | /* 37747 */ // GIR_Coverage, 1347, |
| 14974 | /* 37747 */ GIR_EraseRootFromParent_Done, |
| 14975 | /* 37748 */ // Label 1019: @37748 |
| 14976 | /* 37748 */ GIM_Try, /*On fail goto*//*Label 1020*/ GIMT_Encode4(37800), // Rule ID 1350 // |
| 14977 | /* 37753 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14978 | /* 37756 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrqu_s_qb_ph), |
| 14979 | /* 37761 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 14980 | /* 37764 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 14981 | /* 37767 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 14982 | /* 37770 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14983 | /* 37774 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14984 | /* 37778 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 14985 | /* 37782 */ // (intrinsic_w_chain:{ *:[v4i8] } 8467:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECRQU_S_QB_PH_MM:{ *:[v4i8] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 14986 | /* 37782 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQU_S_QB_PH_MM), |
| 14987 | /* 37785 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 14988 | /* 37787 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 14989 | /* 37789 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 14990 | /* 37791 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 14991 | /* 37794 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 14992 | /* 37798 */ GIR_RootConstrainSelectedInstOperands, |
| 14993 | /* 37799 */ // GIR_Coverage, 1350, |
| 14994 | /* 37799 */ GIR_EraseRootFromParent_Done, |
| 14995 | /* 37800 */ // Label 1020: @37800 |
| 14996 | /* 37800 */ GIM_Try, /*On fail goto*//*Label 1021*/ GIMT_Encode4(37852), // Rule ID 1351 // |
| 14997 | /* 37805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 14998 | /* 37808 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precrq_rs_ph_w), |
| 14999 | /* 37813 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15000 | /* 37816 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 15001 | /* 37819 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15002 | /* 37822 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15003 | /* 37826 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15004 | /* 37830 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15005 | /* 37834 */ // (intrinsic_w_chain:{ *:[v2i16] } 8466:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (PRECRQ_RS_PH_W_MM:{ *:[v2i16] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 15006 | /* 37834 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECRQ_RS_PH_W_MM), |
| 15007 | /* 37837 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15008 | /* 37839 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15009 | /* 37841 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15010 | /* 37843 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag22*/0, |
| 15011 | /* 37846 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15012 | /* 37850 */ GIR_RootConstrainSelectedInstOperands, |
| 15013 | /* 37851 */ // GIR_Coverage, 1351, |
| 15014 | /* 37851 */ GIR_EraseRootFromParent_Done, |
| 15015 | /* 37852 */ // Label 1021: @37852 |
| 15016 | /* 37852 */ GIM_Try, /*On fail goto*//*Label 1022*/ GIMT_Encode4(37901), // Rule ID 1369 // |
| 15017 | /* 37857 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15018 | /* 37860 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_pick_ph), |
| 15019 | /* 37865 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15020 | /* 37868 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15021 | /* 37871 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15022 | /* 37874 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15023 | /* 37878 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15024 | /* 37882 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15025 | /* 37886 */ // (intrinsic_w_chain:{ *:[v2i16] } 8449:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PICK_PH_MM:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15026 | /* 37886 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PICK_PH_MM), |
| 15027 | /* 37889 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15028 | /* 37891 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15029 | /* 37893 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15030 | /* 37895 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15031 | /* 37899 */ GIR_RootConstrainSelectedInstOperands, |
| 15032 | /* 37900 */ // GIR_Coverage, 1369, |
| 15033 | /* 37900 */ GIR_EraseRootFromParent_Done, |
| 15034 | /* 37901 */ // Label 1022: @37901 |
| 15035 | /* 37901 */ GIM_Try, /*On fail goto*//*Label 1023*/ GIMT_Encode4(37950), // Rule ID 1370 // |
| 15036 | /* 37906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15037 | /* 37909 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_pick_qb), |
| 15038 | /* 37914 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 15039 | /* 37917 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 15040 | /* 37920 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 15041 | /* 37923 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15042 | /* 37927 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15043 | /* 37931 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15044 | /* 37935 */ // (intrinsic_w_chain:{ *:[v4i8] } 8450:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (PICK_QB_MM:{ *:[v4i8] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 15045 | /* 37935 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PICK_QB_MM), |
| 15046 | /* 37938 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15047 | /* 37940 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15048 | /* 37942 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15049 | /* 37944 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15050 | /* 37948 */ GIR_RootConstrainSelectedInstOperands, |
| 15051 | /* 37949 */ // GIR_Coverage, 1370, |
| 15052 | /* 37949 */ GIR_EraseRootFromParent_Done, |
| 15053 | /* 37950 */ // Label 1023: @37950 |
| 15054 | /* 37950 */ GIM_Try, /*On fail goto*//*Label 1024*/ GIMT_Encode4(37999), // Rule ID 1380 // |
| 15055 | /* 37955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15056 | /* 37958 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgu_eq_qb), |
| 15057 | /* 37963 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15058 | /* 37966 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 15059 | /* 37969 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 15060 | /* 37972 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15061 | /* 37976 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15062 | /* 37980 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15063 | /* 37984 */ // (intrinsic_w_chain:{ *:[i32] } 8106:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGU_EQ_QB_MM:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 15064 | /* 37984 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGU_EQ_QB_MM), |
| 15065 | /* 37987 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15066 | /* 37989 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15067 | /* 37991 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15068 | /* 37993 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15069 | /* 37997 */ GIR_RootConstrainSelectedInstOperands, |
| 15070 | /* 37998 */ // GIR_Coverage, 1380, |
| 15071 | /* 37998 */ GIR_EraseRootFromParent_Done, |
| 15072 | /* 37999 */ // Label 1024: @37999 |
| 15073 | /* 37999 */ GIM_Try, /*On fail goto*//*Label 1025*/ GIMT_Encode4(38048), // Rule ID 1381 // |
| 15074 | /* 38004 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15075 | /* 38007 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgu_lt_qb), |
| 15076 | /* 38012 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15077 | /* 38015 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 15078 | /* 38018 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 15079 | /* 38021 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15080 | /* 38025 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15081 | /* 38029 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15082 | /* 38033 */ // (intrinsic_w_chain:{ *:[i32] } 8108:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGU_LT_QB_MM:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 15083 | /* 38033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGU_LT_QB_MM), |
| 15084 | /* 38036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15085 | /* 38038 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15086 | /* 38040 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15087 | /* 38042 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15088 | /* 38046 */ GIR_RootConstrainSelectedInstOperands, |
| 15089 | /* 38047 */ // GIR_Coverage, 1381, |
| 15090 | /* 38047 */ GIR_EraseRootFromParent_Done, |
| 15091 | /* 38048 */ // Label 1025: @38048 |
| 15092 | /* 38048 */ GIM_Try, /*On fail goto*//*Label 1026*/ GIMT_Encode4(38097), // Rule ID 1382 // |
| 15093 | /* 38053 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15094 | /* 38056 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgu_le_qb), |
| 15095 | /* 38061 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15096 | /* 38064 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 15097 | /* 38067 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 15098 | /* 38070 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15099 | /* 38074 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15100 | /* 38078 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15101 | /* 38082 */ // (intrinsic_w_chain:{ *:[i32] } 8107:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGU_LE_QB_MM:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 15102 | /* 38082 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGU_LE_QB_MM), |
| 15103 | /* 38085 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15104 | /* 38087 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15105 | /* 38089 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15106 | /* 38091 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15107 | /* 38095 */ GIR_RootConstrainSelectedInstOperands, |
| 15108 | /* 38096 */ // GIR_Coverage, 1382, |
| 15109 | /* 38096 */ GIR_EraseRootFromParent_Done, |
| 15110 | /* 38097 */ // Label 1026: @38097 |
| 15111 | /* 38097 */ GIM_Try, /*On fail goto*//*Label 1027*/ GIMT_Encode4(38149), // Rule ID 1391 // |
| 15112 | /* 38102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15113 | /* 38105 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addu_ph), |
| 15114 | /* 38110 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15115 | /* 38113 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15116 | /* 38116 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15117 | /* 38119 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15118 | /* 38123 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15119 | /* 38127 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15120 | /* 38131 */ // (intrinsic_w_chain:{ *:[v2i16] } 7958:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDU_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15121 | /* 38131 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDU_PH_MMR2), |
| 15122 | /* 38134 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15123 | /* 38136 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15124 | /* 38138 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15125 | /* 38140 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 15126 | /* 38143 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15127 | /* 38147 */ GIR_RootConstrainSelectedInstOperands, |
| 15128 | /* 38148 */ // GIR_Coverage, 1391, |
| 15129 | /* 38148 */ GIR_EraseRootFromParent_Done, |
| 15130 | /* 38149 */ // Label 1027: @38149 |
| 15131 | /* 38149 */ GIM_Try, /*On fail goto*//*Label 1028*/ GIMT_Encode4(38201), // Rule ID 1392 // |
| 15132 | /* 38154 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15133 | /* 38157 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addu_s_ph), |
| 15134 | /* 38162 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15135 | /* 38165 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15136 | /* 38168 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15137 | /* 38171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15138 | /* 38175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15139 | /* 38179 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15140 | /* 38183 */ // (intrinsic_w_chain:{ *:[v2i16] } 7960:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (ADDU_S_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15141 | /* 38183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDU_S_PH_MMR2), |
| 15142 | /* 38186 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15143 | /* 38188 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15144 | /* 38190 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15145 | /* 38192 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 15146 | /* 38195 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15147 | /* 38199 */ GIR_RootConstrainSelectedInstOperands, |
| 15148 | /* 38200 */ // GIR_Coverage, 1392, |
| 15149 | /* 38200 */ GIR_EraseRootFromParent_Done, |
| 15150 | /* 38201 */ // Label 1028: @38201 |
| 15151 | /* 38201 */ GIM_Try, /*On fail goto*//*Label 1029*/ GIMT_Encode4(38253), // Rule ID 1403 // |
| 15152 | /* 38206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15153 | /* 38209 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgdu_eq_qb), |
| 15154 | /* 38214 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15155 | /* 38217 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 15156 | /* 38220 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 15157 | /* 38223 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15158 | /* 38227 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15159 | /* 38231 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15160 | /* 38235 */ // (intrinsic_w_chain:{ *:[i32] } 8103:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGDU_EQ_QB_MMR2:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 15161 | /* 38235 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGDU_EQ_QB_MMR2), |
| 15162 | /* 38238 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15163 | /* 38240 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15164 | /* 38242 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15165 | /* 38244 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 15166 | /* 38247 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15167 | /* 38251 */ GIR_RootConstrainSelectedInstOperands, |
| 15168 | /* 38252 */ // GIR_Coverage, 1403, |
| 15169 | /* 38252 */ GIR_EraseRootFromParent_Done, |
| 15170 | /* 38253 */ // Label 1029: @38253 |
| 15171 | /* 38253 */ GIM_Try, /*On fail goto*//*Label 1030*/ GIMT_Encode4(38305), // Rule ID 1404 // |
| 15172 | /* 38258 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15173 | /* 38261 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgdu_lt_qb), |
| 15174 | /* 38266 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15175 | /* 38269 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 15176 | /* 38272 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 15177 | /* 38275 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15178 | /* 38279 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15179 | /* 38283 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15180 | /* 38287 */ // (intrinsic_w_chain:{ *:[i32] } 8105:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGDU_LT_QB_MMR2:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 15181 | /* 38287 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGDU_LT_QB_MMR2), |
| 15182 | /* 38290 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15183 | /* 38292 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15184 | /* 38294 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15185 | /* 38296 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 15186 | /* 38299 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15187 | /* 38303 */ GIR_RootConstrainSelectedInstOperands, |
| 15188 | /* 38304 */ // GIR_Coverage, 1404, |
| 15189 | /* 38304 */ GIR_EraseRootFromParent_Done, |
| 15190 | /* 38305 */ // Label 1030: @38305 |
| 15191 | /* 38305 */ GIM_Try, /*On fail goto*//*Label 1031*/ GIMT_Encode4(38357), // Rule ID 1405 // |
| 15192 | /* 38310 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15193 | /* 38313 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_cmpgdu_le_qb), |
| 15194 | /* 38318 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15195 | /* 38321 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s8, |
| 15196 | /* 38324 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s8, |
| 15197 | /* 38327 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15198 | /* 38331 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15199 | /* 38335 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15200 | /* 38339 */ // (intrinsic_w_chain:{ *:[i32] } 8104:{ *:[iPTR] }, DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) => (CMPGDU_LE_QB_MMR2:{ *:[i32] } DSPROpnd:{ *:[v4i8] }:$rs, DSPROpnd:{ *:[v4i8] }:$rt) |
| 15201 | /* 38339 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMPGDU_LE_QB_MMR2), |
| 15202 | /* 38342 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15203 | /* 38344 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15204 | /* 38346 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15205 | /* 38348 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCCond*/0, |
| 15206 | /* 38351 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15207 | /* 38355 */ GIR_RootConstrainSelectedInstOperands, |
| 15208 | /* 38356 */ // GIR_Coverage, 1405, |
| 15209 | /* 38356 */ GIR_EraseRootFromParent_Done, |
| 15210 | /* 38357 */ // Label 1031: @38357 |
| 15211 | /* 38357 */ GIM_Try, /*On fail goto*//*Label 1032*/ GIMT_Encode4(38409), // Rule ID 1411 // |
| 15212 | /* 38362 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15213 | /* 38365 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subu_ph), |
| 15214 | /* 38370 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15215 | /* 38373 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15216 | /* 38376 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15217 | /* 38379 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15218 | /* 38383 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15219 | /* 38387 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15220 | /* 38391 */ // (intrinsic_w_chain:{ *:[v2i16] } 8581:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBU_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15221 | /* 38391 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBU_PH_MMR2), |
| 15222 | /* 38394 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15223 | /* 38396 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15224 | /* 38398 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15225 | /* 38400 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 15226 | /* 38403 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15227 | /* 38407 */ GIR_RootConstrainSelectedInstOperands, |
| 15228 | /* 38408 */ // GIR_Coverage, 1411, |
| 15229 | /* 38408 */ GIR_EraseRootFromParent_Done, |
| 15230 | /* 38409 */ // Label 1032: @38409 |
| 15231 | /* 38409 */ GIM_Try, /*On fail goto*//*Label 1033*/ GIMT_Encode4(38461), // Rule ID 1412 // |
| 15232 | /* 38414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15233 | /* 38417 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_subu_s_ph), |
| 15234 | /* 38422 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15235 | /* 38425 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15236 | /* 38428 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15237 | /* 38431 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15238 | /* 38435 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15239 | /* 38439 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15240 | /* 38443 */ // (intrinsic_w_chain:{ *:[v2i16] } 8583:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (SUBU_S_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15241 | /* 38443 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SUBU_S_PH_MMR2), |
| 15242 | /* 38446 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15243 | /* 38448 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15244 | /* 38450 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15245 | /* 38452 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 15246 | /* 38455 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15247 | /* 38459 */ GIR_RootConstrainSelectedInstOperands, |
| 15248 | /* 38460 */ // GIR_Coverage, 1412, |
| 15249 | /* 38460 */ GIR_EraseRootFromParent_Done, |
| 15250 | /* 38461 */ // Label 1033: @38461 |
| 15251 | /* 38461 */ GIM_Try, /*On fail goto*//*Label 1034*/ GIMT_Encode4(38513), // Rule ID 1419 // |
| 15252 | /* 38466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15253 | /* 38469 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mul_s_ph), |
| 15254 | /* 38474 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15255 | /* 38477 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15256 | /* 38480 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15257 | /* 38483 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15258 | /* 38487 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15259 | /* 38491 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15260 | /* 38495 */ // (intrinsic_w_chain:{ *:[v2i16] } 8405:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MUL_S_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15261 | /* 38495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MUL_S_PH_MMR2), |
| 15262 | /* 38498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15263 | /* 38500 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15264 | /* 38502 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15265 | /* 38504 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 15266 | /* 38507 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15267 | /* 38511 */ GIR_RootConstrainSelectedInstOperands, |
| 15268 | /* 38512 */ // GIR_Coverage, 1419, |
| 15269 | /* 38512 */ GIR_EraseRootFromParent_Done, |
| 15270 | /* 38513 */ // Label 1034: @38513 |
| 15271 | /* 38513 */ GIM_Try, /*On fail goto*//*Label 1035*/ GIMT_Encode4(38565), // Rule ID 1420 // |
| 15272 | /* 38518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15273 | /* 38521 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_rs_w), |
| 15274 | /* 38526 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15275 | /* 38529 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 15276 | /* 38532 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15277 | /* 38535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15278 | /* 38539 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15279 | /* 38543 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15280 | /* 38547 */ // (intrinsic_w_chain:{ *:[i32] } 8411:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MULQ_RS_W_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 15281 | /* 38547 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_RS_W_MMR2), |
| 15282 | /* 38550 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15283 | /* 38552 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15284 | /* 38554 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15285 | /* 38556 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 15286 | /* 38559 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15287 | /* 38563 */ GIR_RootConstrainSelectedInstOperands, |
| 15288 | /* 38564 */ // GIR_Coverage, 1420, |
| 15289 | /* 38564 */ GIR_EraseRootFromParent_Done, |
| 15290 | /* 38565 */ // Label 1035: @38565 |
| 15291 | /* 38565 */ GIM_Try, /*On fail goto*//*Label 1036*/ GIMT_Encode4(38617), // Rule ID 1421 // |
| 15292 | /* 38570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15293 | /* 38573 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_s_ph), |
| 15294 | /* 38578 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15295 | /* 38581 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15296 | /* 38584 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15297 | /* 38587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15298 | /* 38591 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15299 | /* 38595 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15300 | /* 38599 */ // (intrinsic_w_chain:{ *:[v2i16] } 8412:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (MULQ_S_PH_MMR2:{ *:[v2i16] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15301 | /* 38599 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_S_PH_MMR2), |
| 15302 | /* 38602 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15303 | /* 38604 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15304 | /* 38606 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15305 | /* 38608 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 15306 | /* 38611 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15307 | /* 38615 */ GIR_RootConstrainSelectedInstOperands, |
| 15308 | /* 38616 */ // GIR_Coverage, 1421, |
| 15309 | /* 38616 */ GIR_EraseRootFromParent_Done, |
| 15310 | /* 38617 */ // Label 1036: @38617 |
| 15311 | /* 38617 */ GIM_Try, /*On fail goto*//*Label 1037*/ GIMT_Encode4(38669), // Rule ID 1422 // |
| 15312 | /* 38622 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15313 | /* 38625 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mulq_s_w), |
| 15314 | /* 38630 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15315 | /* 38633 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 15316 | /* 38636 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15317 | /* 38639 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15318 | /* 38643 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15319 | /* 38647 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15320 | /* 38651 */ // (intrinsic_w_chain:{ *:[i32] } 8413:{ *:[iPTR] }, GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MULQ_S_W_MMR2:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 15321 | /* 38651 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MULQ_S_W_MMR2), |
| 15322 | /* 38654 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15323 | /* 38656 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15324 | /* 38658 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15325 | /* 38660 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 15326 | /* 38663 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15327 | /* 38667 */ GIR_RootConstrainSelectedInstOperands, |
| 15328 | /* 38668 */ // GIR_Coverage, 1422, |
| 15329 | /* 38668 */ GIR_EraseRootFromParent_Done, |
| 15330 | /* 38669 */ // Label 1037: @38669 |
| 15331 | /* 38669 */ GIM_Try, /*On fail goto*//*Label 1038*/ GIMT_Encode4(38718), // Rule ID 1423 // |
| 15332 | /* 38674 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2_InMicroMips), |
| 15333 | /* 38677 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_precr_qb_ph), |
| 15334 | /* 38682 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s8, |
| 15335 | /* 38685 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15336 | /* 38688 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15337 | /* 38691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15338 | /* 38695 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15339 | /* 38699 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15340 | /* 38703 */ // (intrinsic_w_chain:{ *:[v4i8] } 8461:{ *:[iPTR] }, DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) => (PRECR_QB_PH_MMR2:{ *:[v4i8] } DSPROpnd:{ *:[v2i16] }:$rs, DSPROpnd:{ *:[v2i16] }:$rt) |
| 15341 | /* 38703 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::PRECR_QB_PH_MMR2), |
| 15342 | /* 38706 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15343 | /* 38708 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 15344 | /* 38710 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 15345 | /* 38712 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15346 | /* 38716 */ GIR_RootConstrainSelectedInstOperands, |
| 15347 | /* 38717 */ // GIR_Coverage, 1423, |
| 15348 | /* 38717 */ GIR_EraseRootFromParent_Done, |
| 15349 | /* 38718 */ // Label 1038: @38718 |
| 15350 | /* 38718 */ GIM_Try, /*On fail goto*//*Label 1039*/ GIMT_Encode4(38762), // Rule ID 2056 // |
| 15351 | /* 38723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSPR2), |
| 15352 | /* 38726 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_mul_ph), |
| 15353 | /* 38731 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s16, |
| 15354 | /* 38734 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s16, |
| 15355 | /* 38737 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s16, |
| 15356 | /* 38740 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::DSPRRegClassID), |
| 15357 | /* 38744 */ // (intrinsic_w_chain:{ *:[v2i16] } 8402:{ *:[iPTR] }, v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) => (MUL_PH:{ *:[v2i16] } v2i16:{ *:[v2i16] }:$a, v2i16:{ *:[v2i16] }:$b) |
| 15358 | /* 38744 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MUL_PH), |
| 15359 | /* 38747 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15360 | /* 38749 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 15361 | /* 38751 */ GIR_RootToRootCopy, /*OpIdx*/3, // b |
| 15362 | /* 38753 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag21*/0, |
| 15363 | /* 38756 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15364 | /* 38760 */ GIR_RootConstrainSelectedInstOperands, |
| 15365 | /* 38761 */ // GIR_Coverage, 2056, |
| 15366 | /* 38761 */ GIR_EraseRootFromParent_Done, |
| 15367 | /* 38762 */ // Label 1039: @38762 |
| 15368 | /* 38762 */ GIM_Try, /*On fail goto*//*Label 1040*/ GIMT_Encode4(38806), // Rule ID 2062 // |
| 15369 | /* 38767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 15370 | /* 38770 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addsc), |
| 15371 | /* 38775 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15372 | /* 38778 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 15373 | /* 38781 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15374 | /* 38784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15375 | /* 38788 */ // (intrinsic_w_chain:{ *:[i32] } 7957:{ *:[iPTR] }, i32:{ *:[i32] }:$a, i32:{ *:[i32] }:$b) => (ADDSC:{ *:[i32] } i32:{ *:[i32] }:$a, i32:{ *:[i32] }:$b) |
| 15376 | /* 38788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDSC), |
| 15377 | /* 38791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15378 | /* 38793 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 15379 | /* 38795 */ GIR_RootToRootCopy, /*OpIdx*/3, // b |
| 15380 | /* 38797 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPCarry*/0, |
| 15381 | /* 38800 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15382 | /* 38804 */ GIR_RootConstrainSelectedInstOperands, |
| 15383 | /* 38805 */ // GIR_Coverage, 2062, |
| 15384 | /* 38805 */ GIR_EraseRootFromParent_Done, |
| 15385 | /* 38806 */ // Label 1040: @38806 |
| 15386 | /* 38806 */ GIM_Try, /*On fail goto*//*Label 1041*/ GIMT_Encode4(38850), // Rule ID 2064 // |
| 15387 | /* 38811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 15388 | /* 38814 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_addwc), |
| 15389 | /* 38819 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15390 | /* 38822 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 15391 | /* 38825 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15392 | /* 38828 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15393 | /* 38832 */ // (intrinsic_w_chain:{ *:[i32] } 7972:{ *:[iPTR] }, i32:{ *:[i32] }:$a, i32:{ *:[i32] }:$b) => (ADDWC:{ *:[i32] } i32:{ *:[i32] }:$a, i32:{ *:[i32] }:$b) |
| 15394 | /* 38832 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ADDWC), |
| 15395 | /* 38835 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15396 | /* 38837 */ GIR_RootToRootCopy, /*OpIdx*/2, // a |
| 15397 | /* 38839 */ GIR_RootToRootCopy, /*OpIdx*/3, // b |
| 15398 | /* 38841 */ GIR_SetImplicitDefDead, /*InsnID*/0, /*OpIdx for Mips::DSPOutFlag20*/0, |
| 15399 | /* 38844 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15400 | /* 38848 */ GIR_RootConstrainSelectedInstOperands, |
| 15401 | /* 38849 */ // GIR_Coverage, 2064, |
| 15402 | /* 38849 */ GIR_EraseRootFromParent_Done, |
| 15403 | /* 38850 */ // Label 1041: @38850 |
| 15404 | /* 38850 */ GIM_Try, /*On fail goto*//*Label 1042*/ GIMT_Encode4(38896), // Rule ID 562 // |
| 15405 | /* 38855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 15406 | /* 38858 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ldr_d), |
| 15407 | /* 38863 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v2s64, |
| 15408 | /* 38866 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15409 | /* 38869 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 15410 | /* 38873 */ // MIs[0] ptr |
| 15411 | /* 38873 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15412 | /* 38877 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15413 | /* 38881 */ // (intrinsic_w_chain:{ *:[v2i64] } 8322:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) => (LDR_D:{ *:[v2i64] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) |
| 15414 | /* 38881 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LDR_D), |
| 15415 | /* 38884 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15416 | /* 38886 */ GIR_RootToRootCopy, /*OpIdx*/2, // ptr |
| 15417 | /* 38888 */ GIR_RootToRootCopy, /*OpIdx*/3, // imm |
| 15418 | /* 38890 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15419 | /* 38894 */ GIR_RootConstrainSelectedInstOperands, |
| 15420 | /* 38895 */ // GIR_Coverage, 562, |
| 15421 | /* 38895 */ GIR_EraseRootFromParent_Done, |
| 15422 | /* 38896 */ // Label 1042: @38896 |
| 15423 | /* 38896 */ GIM_Try, /*On fail goto*//*Label 1043*/ GIMT_Encode4(38942), // Rule ID 563 // |
| 15424 | /* 38901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 15425 | /* 38904 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_ldr_w), |
| 15426 | /* 38909 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_v4s32, |
| 15427 | /* 38912 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15428 | /* 38915 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 15429 | /* 38919 */ // MIs[0] ptr |
| 15430 | /* 38919 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15431 | /* 38923 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15432 | /* 38927 */ // (intrinsic_w_chain:{ *:[v4i32] } 8323:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) => (LDR_W:{ *:[v4i32] } iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) |
| 15433 | /* 38927 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LDR_W), |
| 15434 | /* 38930 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15435 | /* 38932 */ GIR_RootToRootCopy, /*OpIdx*/2, // ptr |
| 15436 | /* 38934 */ GIR_RootToRootCopy, /*OpIdx*/3, // imm |
| 15437 | /* 38936 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15438 | /* 38940 */ GIR_RootConstrainSelectedInstOperands, |
| 15439 | /* 38941 */ // GIR_Coverage, 563, |
| 15440 | /* 38941 */ GIR_EraseRootFromParent_Done, |
| 15441 | /* 38942 */ // Label 1043: @38942 |
| 15442 | /* 38942 */ GIM_Try, /*On fail goto*//*Label 1044*/ GIMT_Encode4(38984), // Rule ID 509 // |
| 15443 | /* 38947 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 15444 | /* 38950 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_lwx), |
| 15445 | /* 38955 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15446 | /* 38958 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15447 | /* 38961 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15448 | /* 38965 */ // MIs[0] base |
| 15449 | /* 38965 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15450 | /* 38969 */ // (intrinsic_w_chain:{ *:[i32] } 8326:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) => (LWX:{ *:[i32] } iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) |
| 15451 | /* 38969 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LWX), |
| 15452 | /* 38972 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15453 | /* 38974 */ GIR_RootToRootCopy, /*OpIdx*/2, // base |
| 15454 | /* 38976 */ GIR_RootToRootCopy, /*OpIdx*/3, // index |
| 15455 | /* 38978 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15456 | /* 38982 */ GIR_RootConstrainSelectedInstOperands, |
| 15457 | /* 38983 */ // GIR_Coverage, 509, |
| 15458 | /* 38983 */ GIR_EraseRootFromParent_Done, |
| 15459 | /* 38984 */ // Label 1044: @38984 |
| 15460 | /* 38984 */ GIM_Try, /*On fail goto*//*Label 1045*/ GIMT_Encode4(39026), // Rule ID 510 // |
| 15461 | /* 38989 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 15462 | /* 38992 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_lhx), |
| 15463 | /* 38997 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15464 | /* 39000 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15465 | /* 39003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15466 | /* 39007 */ // MIs[0] base |
| 15467 | /* 39007 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15468 | /* 39011 */ // (intrinsic_w_chain:{ *:[i32] } 8324:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) => (LHX:{ *:[i32] } iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) |
| 15469 | /* 39011 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LHX), |
| 15470 | /* 39014 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15471 | /* 39016 */ GIR_RootToRootCopy, /*OpIdx*/2, // base |
| 15472 | /* 39018 */ GIR_RootToRootCopy, /*OpIdx*/3, // index |
| 15473 | /* 39020 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15474 | /* 39024 */ GIR_RootConstrainSelectedInstOperands, |
| 15475 | /* 39025 */ // GIR_Coverage, 510, |
| 15476 | /* 39025 */ GIR_EraseRootFromParent_Done, |
| 15477 | /* 39026 */ // Label 1045: @39026 |
| 15478 | /* 39026 */ GIM_Try, /*On fail goto*//*Label 1046*/ GIMT_Encode4(39068), // Rule ID 511 // |
| 15479 | /* 39031 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP), |
| 15480 | /* 39034 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_lbux), |
| 15481 | /* 39039 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15482 | /* 39042 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15483 | /* 39045 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15484 | /* 39049 */ // MIs[0] base |
| 15485 | /* 39049 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15486 | /* 39053 */ // (intrinsic_w_chain:{ *:[i32] } 8313:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) => (LBUX:{ *:[i32] } iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) |
| 15487 | /* 39053 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LBUX), |
| 15488 | /* 39056 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15489 | /* 39058 */ GIR_RootToRootCopy, /*OpIdx*/2, // base |
| 15490 | /* 39060 */ GIR_RootToRootCopy, /*OpIdx*/3, // index |
| 15491 | /* 39062 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15492 | /* 39066 */ GIR_RootConstrainSelectedInstOperands, |
| 15493 | /* 39067 */ // GIR_Coverage, 511, |
| 15494 | /* 39067 */ GIR_EraseRootFromParent_Done, |
| 15495 | /* 39068 */ // Label 1046: @39068 |
| 15496 | /* 39068 */ GIM_Try, /*On fail goto*//*Label 1047*/ GIMT_Encode4(39110), // Rule ID 1352 // |
| 15497 | /* 39073 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15498 | /* 39076 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_lbux), |
| 15499 | /* 39081 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15500 | /* 39084 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15501 | /* 39087 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15502 | /* 39091 */ // MIs[0] base |
| 15503 | /* 39091 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15504 | /* 39095 */ // (intrinsic_w_chain:{ *:[i32] } 8313:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) => (LBUX_MM:{ *:[i32] } iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) |
| 15505 | /* 39095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LBUX_MM), |
| 15506 | /* 39098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15507 | /* 39100 */ GIR_RootToRootCopy, /*OpIdx*/2, // base |
| 15508 | /* 39102 */ GIR_RootToRootCopy, /*OpIdx*/3, // index |
| 15509 | /* 39104 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15510 | /* 39108 */ GIR_RootConstrainSelectedInstOperands, |
| 15511 | /* 39109 */ // GIR_Coverage, 1352, |
| 15512 | /* 39109 */ GIR_EraseRootFromParent_Done, |
| 15513 | /* 39110 */ // Label 1047: @39110 |
| 15514 | /* 39110 */ GIM_Try, /*On fail goto*//*Label 1048*/ GIMT_Encode4(39152), // Rule ID 1353 // |
| 15515 | /* 39115 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15516 | /* 39118 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_lhx), |
| 15517 | /* 39123 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15518 | /* 39126 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15519 | /* 39129 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15520 | /* 39133 */ // MIs[0] base |
| 15521 | /* 39133 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15522 | /* 39137 */ // (intrinsic_w_chain:{ *:[i32] } 8324:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) => (LHX_MM:{ *:[i32] } iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) |
| 15523 | /* 39137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LHX_MM), |
| 15524 | /* 39140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15525 | /* 39142 */ GIR_RootToRootCopy, /*OpIdx*/2, // base |
| 15526 | /* 39144 */ GIR_RootToRootCopy, /*OpIdx*/3, // index |
| 15527 | /* 39146 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15528 | /* 39150 */ GIR_RootConstrainSelectedInstOperands, |
| 15529 | /* 39151 */ // GIR_Coverage, 1353, |
| 15530 | /* 39151 */ GIR_EraseRootFromParent_Done, |
| 15531 | /* 39152 */ // Label 1048: @39152 |
| 15532 | /* 39152 */ GIM_Try, /*On fail goto*//*Label 1049*/ GIMT_Encode4(39194), // Rule ID 1354 // |
| 15533 | /* 39157 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasDSP_InMicroMips), |
| 15534 | /* 39160 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/1, GIMT_Encode2(Intrinsic::mips_lwx), |
| 15535 | /* 39165 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15536 | /* 39168 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15537 | /* 39171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15538 | /* 39175 */ // MIs[0] base |
| 15539 | /* 39175 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15540 | /* 39179 */ // (intrinsic_w_chain:{ *:[i32] } 8326:{ *:[iPTR] }, iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) => (LWX_MM:{ *:[i32] } iPTR:{ *:[iPTR] }:$base, iPTR:{ *:[i32] }:$index) |
| 15541 | /* 39179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LWX_MM), |
| 15542 | /* 39182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15543 | /* 39184 */ GIR_RootToRootCopy, /*OpIdx*/2, // base |
| 15544 | /* 39186 */ GIR_RootToRootCopy, /*OpIdx*/3, // index |
| 15545 | /* 39188 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15546 | /* 39192 */ GIR_RootConstrainSelectedInstOperands, |
| 15547 | /* 39193 */ // GIR_Coverage, 1354, |
| 15548 | /* 39193 */ GIR_EraseRootFromParent_Done, |
| 15549 | /* 39194 */ // Label 1049: @39194 |
| 15550 | /* 39194 */ GIM_Try, /*On fail goto*//*Label 1050*/ GIMT_Encode4(39240), // Rule ID 564 // |
| 15551 | /* 39199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 15552 | /* 39202 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_str_d), |
| 15553 | /* 39207 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 15554 | /* 39210 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15555 | /* 39213 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 15556 | /* 39217 */ // MIs[0] ptr |
| 15557 | /* 39217 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15558 | /* 39221 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15559 | /* 39225 */ // (intrinsic_void 8556:{ *:[iPTR] }, MSA128DOpnd:{ *:[v2i64] }:$dst, iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) => (STR_D MSA128DOpnd:{ *:[v2i64] }:$dst, iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) |
| 15560 | /* 39225 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::STR_D), |
| 15561 | /* 39228 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 15562 | /* 39230 */ GIR_RootToRootCopy, /*OpIdx*/2, // ptr |
| 15563 | /* 39232 */ GIR_RootToRootCopy, /*OpIdx*/3, // imm |
| 15564 | /* 39234 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15565 | /* 39238 */ GIR_RootConstrainSelectedInstOperands, |
| 15566 | /* 39239 */ // GIR_Coverage, 564, |
| 15567 | /* 39239 */ GIR_EraseRootFromParent_Done, |
| 15568 | /* 39240 */ // Label 1050: @39240 |
| 15569 | /* 39240 */ GIM_Try, /*On fail goto*//*Label 1051*/ GIMT_Encode4(39286), // Rule ID 565 // |
| 15570 | /* 39245 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotInMips16Mode), |
| 15571 | /* 39248 */ GIM_CheckIntrinsicID, /*MI*/0, /*Op*/0, GIMT_Encode2(Intrinsic::mips_str_w), |
| 15572 | /* 39253 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 15573 | /* 39256 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 15574 | /* 39259 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 15575 | /* 39263 */ // MIs[0] ptr |
| 15576 | /* 39263 */ GIM_CheckPointerToAny, /*MI*/0, /*Op*/2, /*SizeInBits*/0, |
| 15577 | /* 39267 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15578 | /* 39271 */ // (intrinsic_void 8557:{ *:[iPTR] }, MSA128WOpnd:{ *:[v4i32] }:$dst, iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) => (STR_W MSA128WOpnd:{ *:[v4i32] }:$dst, iPTR:{ *:[iPTR] }:$ptr, GPR32:{ *:[i32] }:$imm) |
| 15579 | /* 39271 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::STR_W), |
| 15580 | /* 39274 */ GIR_RootToRootCopy, /*OpIdx*/1, // dst |
| 15581 | /* 39276 */ GIR_RootToRootCopy, /*OpIdx*/2, // ptr |
| 15582 | /* 39278 */ GIR_RootToRootCopy, /*OpIdx*/3, // imm |
| 15583 | /* 39280 */ GIR_MergeMemOperands, /*InsnID*/0, /*NumInsns*/1, /*MergeInsnID's*/0, |
| 15584 | /* 39284 */ GIR_RootConstrainSelectedInstOperands, |
| 15585 | /* 39285 */ // GIR_Coverage, 565, |
| 15586 | /* 39285 */ GIR_EraseRootFromParent_Done, |
| 15587 | /* 39286 */ // Label 1051: @39286 |
| 15588 | /* 39286 */ GIM_Reject, |
| 15589 | /* 39287 */ // Label 970: @39287 |
| 15590 | /* 39287 */ GIM_Reject, |
| 15591 | /* 39288 */ // Label 31: @39288 |
| 15592 | /* 39288 */ GIM_Try, /*On fail goto*//*Label 1052*/ GIMT_Encode4(39353), // Rule ID 1685 // |
| 15593 | /* 39293 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 15594 | /* 39296 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 15595 | /* 39299 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 15596 | /* 39302 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 15597 | /* 39306 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15598 | /* 39310 */ // (anyext:{ *:[i64] } GPR32:{ *:[i32] }:$src) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), GPR32:{ *:[i32] }:$src, sub_32:{ *:[i32] }) |
| 15599 | /* 39310 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15600 | /* 39313 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15601 | /* 39317 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15602 | /* 39322 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15603 | /* 39324 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15604 | /* 39327 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15605 | /* 39329 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15606 | /* 39332 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 15607 | /* 39334 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15608 | /* 39337 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15609 | /* 39342 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15610 | /* 39347 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15611 | /* 39352 */ // GIR_Coverage, 1685, |
| 15612 | /* 39352 */ GIR_EraseRootFromParent_Done, |
| 15613 | /* 39353 */ // Label 1052: @39353 |
| 15614 | /* 39353 */ GIM_Reject, |
| 15615 | /* 39354 */ // Label 32: @39354 |
| 15616 | /* 39354 */ GIM_Try, /*On fail goto*//*Label 1053*/ GIMT_Encode4(39417), // Rule ID 1678 // |
| 15617 | /* 39359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 15618 | /* 39362 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15619 | /* 39365 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 15620 | /* 39368 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15621 | /* 39372 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 15622 | /* 39376 */ // (trunc:{ *:[i32] } GPR64:{ *:[i64] }:$src) => (SLL:{ *:[i32] } (EXTRACT_SUBREG:{ *:[i32] } GPR64:{ *:[i64] }:$src, sub_32:{ *:[i32] }), 0:{ *:[i32] }) |
| 15623 | /* 39376 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 15624 | /* 39379 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 15625 | /* 39383 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15626 | /* 39388 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // src |
| 15627 | /* 39394 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 15628 | /* 39399 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15629 | /* 39404 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL), |
| 15630 | /* 39407 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15631 | /* 39409 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15632 | /* 39412 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 15633 | /* 39415 */ GIR_RootConstrainSelectedInstOperands, |
| 15634 | /* 39416 */ // GIR_Coverage, 1678, |
| 15635 | /* 39416 */ GIR_EraseRootFromParent_Done, |
| 15636 | /* 39417 */ // Label 1053: @39417 |
| 15637 | /* 39417 */ GIM_Reject, |
| 15638 | /* 39418 */ // Label 33: @39418 |
| 15639 | /* 39418 */ GIM_Try, /*On fail goto*//*Label 1054*/ GIMT_Encode4(39478), |
| 15640 | /* 39423 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 15641 | /* 39426 */ GIM_Try, /*On fail goto*//*Label 1055*/ GIMT_Encode4(39452), // Rule ID 2289 // |
| 15642 | /* 39431 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 15643 | /* 39434 */ GIM_CheckI64ImmPredicate, /*MI*/0, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immLi16), |
| 15644 | /* 39438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 15645 | /* 39442 */ // MIs[0] Operand 1 |
| 15646 | /* 39442 */ // No operand predicates |
| 15647 | /* 39442 */ // (imm:{ *:[i32] })<<P:Predicate_immLi16>>:$imm => (LI16_MM:{ *:[i32] } (imm:{ *:[i32] })<<P:Predicate_immLi16>>:$imm) |
| 15648 | /* 39442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LI16_MM), |
| 15649 | /* 39445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 15650 | /* 39447 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // imm |
| 15651 | /* 39450 */ GIR_RootConstrainSelectedInstOperands, |
| 15652 | /* 39451 */ // GIR_Coverage, 2289, |
| 15653 | /* 39451 */ GIR_EraseRootFromParent_Done, |
| 15654 | /* 39452 */ // Label 1055: @39452 |
| 15655 | /* 39452 */ GIM_Try, /*On fail goto*//*Label 1056*/ GIMT_Encode4(39477), // Rule ID 1980 // |
| 15656 | /* 39457 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 15657 | /* 39460 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 15658 | /* 39464 */ // MIs[0] Operand 1 |
| 15659 | /* 39464 */ // No operand predicates |
| 15660 | /* 39464 */ // (imm:{ *:[i32] }):$imm => (LwConstant32:{ *:[i32] } (imm:{ *:[i32] }):$imm, -1:{ *:[i32] }) |
| 15661 | /* 39464 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::LwConstant32), |
| 15662 | /* 39467 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 15663 | /* 39469 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/0, // imm |
| 15664 | /* 39472 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/255, |
| 15665 | /* 39475 */ GIR_RootConstrainSelectedInstOperands, |
| 15666 | /* 39476 */ // GIR_Coverage, 1980, |
| 15667 | /* 39476 */ GIR_EraseRootFromParent_Done, |
| 15668 | /* 39477 */ // Label 1056: @39477 |
| 15669 | /* 39477 */ GIM_Reject, |
| 15670 | /* 39478 */ // Label 1054: @39478 |
| 15671 | /* 39478 */ GIM_Reject, |
| 15672 | /* 39479 */ // Label 34: @39479 |
| 15673 | /* 39479 */ GIM_Try, /*On fail goto*//*Label 1057*/ GIMT_Encode4(40942), |
| 15674 | /* 39484 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 15675 | /* 39487 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 15676 | /* 39490 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 15677 | /* 39494 */ GIM_Try, /*On fail goto*//*Label 1058*/ GIMT_Encode4(39599), // Rule ID 1734 // |
| 15678 | /* 39499 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15679 | /* 39503 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 15680 | /* 39507 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15681 | /* 39511 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15682 | /* 39515 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15683 | /* 39520 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15684 | /* 39524 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 15685 | /* 39528 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 15686 | /* 39532 */ // MIs[2] Operand 1 |
| 15687 | /* 39532 */ // No operand predicates |
| 15688 | /* 39532 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15689 | /* 39534 */ // (sext:{ *:[i64] } (sra:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm5)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (SRA:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm5), sub_32:{ *:[i32] }) |
| 15690 | /* 39534 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15691 | /* 39537 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SRA), |
| 15692 | /* 39541 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15693 | /* 39546 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15694 | /* 39550 */ GIR_CopyConstantAsSImm, /*NewInsnID*/2, /*OldInsnID*/2, // imm5 |
| 15695 | /* 39553 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15696 | /* 39555 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15697 | /* 39558 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15698 | /* 39562 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15699 | /* 39567 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15700 | /* 39569 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15701 | /* 39572 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15702 | /* 39574 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15703 | /* 39577 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15704 | /* 39580 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15705 | /* 39583 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15706 | /* 39588 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15707 | /* 39593 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15708 | /* 39598 */ // GIR_Coverage, 1734, |
| 15709 | /* 39598 */ GIR_EraseRootFromParent_Done, |
| 15710 | /* 39599 */ // Label 1058: @39599 |
| 15711 | /* 39599 */ GIM_Try, /*On fail goto*//*Label 1059*/ GIMT_Encode4(39704), // Rule ID 1730 // |
| 15712 | /* 39604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15713 | /* 39608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 15714 | /* 39612 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15715 | /* 39616 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15716 | /* 39620 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15717 | /* 39625 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15718 | /* 39629 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 15719 | /* 39633 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 15720 | /* 39637 */ // MIs[2] Operand 1 |
| 15721 | /* 39637 */ // No operand predicates |
| 15722 | /* 39637 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15723 | /* 39639 */ // (sext:{ *:[i64] } (srl:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm5)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (SRL:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm5), sub_32:{ *:[i32] }) |
| 15724 | /* 39639 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15725 | /* 39642 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SRL), |
| 15726 | /* 39646 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15727 | /* 39651 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15728 | /* 39655 */ GIR_CopyConstantAsSImm, /*NewInsnID*/2, /*OldInsnID*/2, // imm5 |
| 15729 | /* 39658 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15730 | /* 39660 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15731 | /* 39663 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15732 | /* 39667 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15733 | /* 39672 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15734 | /* 39674 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15735 | /* 39677 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15736 | /* 39679 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15737 | /* 39682 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15738 | /* 39685 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15739 | /* 39688 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15740 | /* 39693 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15741 | /* 39698 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15742 | /* 39703 */ // GIR_Coverage, 1730, |
| 15743 | /* 39703 */ GIR_EraseRootFromParent_Done, |
| 15744 | /* 39704 */ // Label 1059: @39704 |
| 15745 | /* 39704 */ GIM_Try, /*On fail goto*//*Label 1060*/ GIMT_Encode4(39809), // Rule ID 1726 // |
| 15746 | /* 39709 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15747 | /* 39713 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 15748 | /* 39717 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15749 | /* 39721 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15750 | /* 39725 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15751 | /* 39730 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 15752 | /* 39734 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 15753 | /* 39738 */ GIM_CheckI64ImmPredicate, /*MI*/2, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 15754 | /* 39742 */ // MIs[2] Operand 1 |
| 15755 | /* 39742 */ // No operand predicates |
| 15756 | /* 39742 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 15757 | /* 39744 */ // (sext:{ *:[i64] } (shl:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm5)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (SLL:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm5), sub_32:{ *:[i32] }) |
| 15758 | /* 39744 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15759 | /* 39747 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SLL), |
| 15760 | /* 39751 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15761 | /* 39756 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15762 | /* 39760 */ GIR_CopyConstantAsSImm, /*NewInsnID*/2, /*OldInsnID*/2, // imm5 |
| 15763 | /* 39763 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15764 | /* 39765 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15765 | /* 39768 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15766 | /* 39772 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15767 | /* 39777 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15768 | /* 39779 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15769 | /* 39782 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15770 | /* 39784 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15771 | /* 39787 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15772 | /* 39790 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15773 | /* 39793 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15774 | /* 39798 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15775 | /* 39803 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15776 | /* 39808 */ // GIR_Coverage, 1726, |
| 15777 | /* 39808 */ GIR_EraseRootFromParent_Done, |
| 15778 | /* 39809 */ // Label 1060: @39809 |
| 15779 | /* 39809 */ GIM_Try, /*On fail goto*//*Label 1061*/ GIMT_Encode4(39908), // Rule ID 1716 // |
| 15780 | /* 39814 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15781 | /* 39818 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ADD), |
| 15782 | /* 39822 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15783 | /* 39826 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15784 | /* 39830 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15785 | /* 39835 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15786 | /* 39840 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15787 | /* 39842 */ // (sext:{ *:[i64] } (add:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (ADDu:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 15788 | /* 39842 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15789 | /* 39845 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::ADDu), |
| 15790 | /* 39849 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15791 | /* 39854 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15792 | /* 39858 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15793 | /* 39862 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15794 | /* 39864 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15795 | /* 39867 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15796 | /* 39871 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15797 | /* 39876 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15798 | /* 39878 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15799 | /* 39881 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15800 | /* 39883 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15801 | /* 39886 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15802 | /* 39889 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15803 | /* 39892 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15804 | /* 39897 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15805 | /* 39902 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15806 | /* 39907 */ // GIR_Coverage, 1716, |
| 15807 | /* 39907 */ GIR_EraseRootFromParent_Done, |
| 15808 | /* 39908 */ // Label 1061: @39908 |
| 15809 | /* 39908 */ GIM_Try, /*On fail goto*//*Label 1062*/ GIMT_Encode4(40007), // Rule ID 1736 // |
| 15810 | /* 39913 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15811 | /* 39917 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ASHR), |
| 15812 | /* 39921 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15813 | /* 39925 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15814 | /* 39929 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15815 | /* 39934 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15816 | /* 39939 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15817 | /* 39941 */ // (sext:{ *:[i64] } (sra:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (SRAV:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 15818 | /* 39941 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15819 | /* 39944 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SRAV), |
| 15820 | /* 39948 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15821 | /* 39953 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15822 | /* 39957 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15823 | /* 39961 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15824 | /* 39963 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15825 | /* 39966 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15826 | /* 39970 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15827 | /* 39975 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15828 | /* 39977 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15829 | /* 39980 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15830 | /* 39982 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15831 | /* 39985 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15832 | /* 39988 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15833 | /* 39991 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15834 | /* 39996 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15835 | /* 40001 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15836 | /* 40006 */ // GIR_Coverage, 1736, |
| 15837 | /* 40006 */ GIR_EraseRootFromParent_Done, |
| 15838 | /* 40007 */ // Label 1062: @40007 |
| 15839 | /* 40007 */ GIM_Try, /*On fail goto*//*Label 1063*/ GIMT_Encode4(40106), // Rule ID 1732 // |
| 15840 | /* 40012 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15841 | /* 40016 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_LSHR), |
| 15842 | /* 40020 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15843 | /* 40024 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15844 | /* 40028 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15845 | /* 40033 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15846 | /* 40038 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15847 | /* 40040 */ // (sext:{ *:[i64] } (srl:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (SRLV:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 15848 | /* 40040 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15849 | /* 40043 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SRLV), |
| 15850 | /* 40047 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15851 | /* 40052 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15852 | /* 40056 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15853 | /* 40060 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15854 | /* 40062 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15855 | /* 40065 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15856 | /* 40069 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15857 | /* 40074 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15858 | /* 40076 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15859 | /* 40079 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15860 | /* 40081 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15861 | /* 40084 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15862 | /* 40087 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15863 | /* 40090 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15864 | /* 40095 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15865 | /* 40100 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15866 | /* 40105 */ // GIR_Coverage, 1732, |
| 15867 | /* 40105 */ GIR_EraseRootFromParent_Done, |
| 15868 | /* 40106 */ // Label 1063: @40106 |
| 15869 | /* 40106 */ GIM_Try, /*On fail goto*//*Label 1064*/ GIMT_Encode4(40214), // Rule ID 1720 // |
| 15870 | /* 40111 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32_HasStdEnc_NotMips32r6_NotMips64r6), |
| 15871 | /* 40114 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15872 | /* 40118 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 15873 | /* 40122 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15874 | /* 40126 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15875 | /* 40130 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15876 | /* 40135 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15877 | /* 40140 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15878 | /* 40142 */ // (sext:{ *:[i64] } (mul:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (MUL:{ *:[i32] }:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 15879 | /* 40142 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15880 | /* 40145 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::MUL), |
| 15881 | /* 40149 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15882 | /* 40154 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15883 | /* 40158 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15884 | /* 40162 */ GIR_SetImplicitDefDead, /*InsnID*/2, /*OpIdx for Mips::HI0*/0, |
| 15885 | /* 40165 */ GIR_SetImplicitDefDead, /*InsnID*/2, /*OpIdx for Mips::LO0*/1, |
| 15886 | /* 40168 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15887 | /* 40170 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15888 | /* 40173 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15889 | /* 40177 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15890 | /* 40182 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15891 | /* 40184 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15892 | /* 40187 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15893 | /* 40189 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15894 | /* 40192 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15895 | /* 40195 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15896 | /* 40198 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15897 | /* 40203 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15898 | /* 40208 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15899 | /* 40213 */ // GIR_Coverage, 1720, |
| 15900 | /* 40213 */ GIR_EraseRootFromParent_Done, |
| 15901 | /* 40214 */ // Label 1064: @40214 |
| 15902 | /* 40214 */ GIM_Try, /*On fail goto*//*Label 1065*/ GIMT_Encode4(40316), // Rule ID 1931 // |
| 15903 | /* 40219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc), |
| 15904 | /* 40222 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15905 | /* 40226 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_MUL), |
| 15906 | /* 40230 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15907 | /* 40234 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15908 | /* 40238 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15909 | /* 40243 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15910 | /* 40248 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15911 | /* 40250 */ // (sext:{ *:[i64] } (mul:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (MUL_R6:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 15912 | /* 40250 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15913 | /* 40253 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::MUL_R6), |
| 15914 | /* 40257 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15915 | /* 40262 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15916 | /* 40266 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15917 | /* 40270 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15918 | /* 40272 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15919 | /* 40275 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15920 | /* 40279 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15921 | /* 40284 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15922 | /* 40286 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15923 | /* 40289 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15924 | /* 40291 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15925 | /* 40294 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15926 | /* 40297 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15927 | /* 40300 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15928 | /* 40305 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15929 | /* 40310 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15930 | /* 40315 */ // GIR_Coverage, 1931, |
| 15931 | /* 40315 */ GIR_EraseRootFromParent_Done, |
| 15932 | /* 40316 */ // Label 1065: @40316 |
| 15933 | /* 40316 */ GIM_Try, /*On fail goto*//*Label 1066*/ GIMT_Encode4(40418), // Rule ID 1932 // |
| 15934 | /* 40321 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc), |
| 15935 | /* 40324 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15936 | /* 40328 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SDIV), |
| 15937 | /* 40332 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15938 | /* 40336 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15939 | /* 40340 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15940 | /* 40345 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15941 | /* 40350 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15942 | /* 40352 */ // (sext:{ *:[i64] } (sdiv:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (DIV:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 15943 | /* 40352 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15944 | /* 40355 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::DIV), |
| 15945 | /* 40359 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15946 | /* 40364 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15947 | /* 40368 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15948 | /* 40372 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15949 | /* 40374 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15950 | /* 40377 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15951 | /* 40381 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15952 | /* 40386 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15953 | /* 40388 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15954 | /* 40391 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15955 | /* 40393 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15956 | /* 40396 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15957 | /* 40399 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15958 | /* 40402 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15959 | /* 40407 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15960 | /* 40412 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15961 | /* 40417 */ // GIR_Coverage, 1932, |
| 15962 | /* 40417 */ GIR_EraseRootFromParent_Done, |
| 15963 | /* 40418 */ // Label 1066: @40418 |
| 15964 | /* 40418 */ GIM_Try, /*On fail goto*//*Label 1067*/ GIMT_Encode4(40517), // Rule ID 1728 // |
| 15965 | /* 40423 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15966 | /* 40427 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SHL), |
| 15967 | /* 40431 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15968 | /* 40435 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 15969 | /* 40439 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15970 | /* 40444 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 15971 | /* 40449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 15972 | /* 40451 */ // (sext:{ *:[i64] } (shl:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (SLLV:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 15973 | /* 40451 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 15974 | /* 40454 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SLLV), |
| 15975 | /* 40458 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15976 | /* 40463 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 15977 | /* 40467 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 15978 | /* 40471 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 15979 | /* 40473 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 15980 | /* 40476 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 15981 | /* 40480 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 15982 | /* 40485 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 15983 | /* 40487 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 15984 | /* 40490 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 15985 | /* 40492 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 15986 | /* 40495 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 15987 | /* 40498 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 15988 | /* 40501 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15989 | /* 40506 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 15990 | /* 40511 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 15991 | /* 40516 */ // GIR_Coverage, 1728, |
| 15992 | /* 40516 */ GIR_EraseRootFromParent_Done, |
| 15993 | /* 40517 */ // Label 1067: @40517 |
| 15994 | /* 40517 */ GIM_Try, /*On fail goto*//*Label 1068*/ GIMT_Encode4(40619), // Rule ID 1934 // |
| 15995 | /* 40522 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc), |
| 15996 | /* 40525 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 15997 | /* 40529 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SREM), |
| 15998 | /* 40533 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 15999 | /* 40537 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 16000 | /* 40541 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16001 | /* 40546 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16002 | /* 40551 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16003 | /* 40553 */ // (sext:{ *:[i64] } (srem:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (MOD:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 16004 | /* 40553 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 16005 | /* 40556 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::MOD), |
| 16006 | /* 40560 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16007 | /* 40565 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 16008 | /* 40569 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 16009 | /* 40573 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 16010 | /* 40575 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 16011 | /* 40578 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16012 | /* 40582 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16013 | /* 40587 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16014 | /* 40589 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16015 | /* 40592 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16016 | /* 40594 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 16017 | /* 40597 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 16018 | /* 40600 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 16019 | /* 40603 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16020 | /* 40608 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16021 | /* 40613 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 16022 | /* 40618 */ // GIR_Coverage, 1934, |
| 16023 | /* 40618 */ GIR_EraseRootFromParent_Done, |
| 16024 | /* 40619 */ // Label 1068: @40619 |
| 16025 | /* 40619 */ GIM_Try, /*On fail goto*//*Label 1069*/ GIMT_Encode4(40718), // Rule ID 1718 // |
| 16026 | /* 40624 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16027 | /* 40628 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_SUB), |
| 16028 | /* 40632 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 16029 | /* 40636 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 16030 | /* 40640 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16031 | /* 40645 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16032 | /* 40650 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16033 | /* 40652 */ // (sext:{ *:[i64] } (sub:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (SUBu:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 16034 | /* 40652 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 16035 | /* 40655 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SUBu), |
| 16036 | /* 40659 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16037 | /* 40664 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 16038 | /* 40668 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 16039 | /* 40672 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 16040 | /* 40674 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 16041 | /* 40677 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16042 | /* 40681 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16043 | /* 40686 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16044 | /* 40688 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16045 | /* 40691 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16046 | /* 40693 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 16047 | /* 40696 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 16048 | /* 40699 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 16049 | /* 40702 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16050 | /* 40707 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16051 | /* 40712 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 16052 | /* 40717 */ // GIR_Coverage, 1718, |
| 16053 | /* 40717 */ GIR_EraseRootFromParent_Done, |
| 16054 | /* 40718 */ // Label 1069: @40718 |
| 16055 | /* 40718 */ GIM_Try, /*On fail goto*//*Label 1070*/ GIMT_Encode4(40820), // Rule ID 1933 // |
| 16056 | /* 40723 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc), |
| 16057 | /* 40726 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16058 | /* 40730 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_UDIV), |
| 16059 | /* 40734 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 16060 | /* 40738 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 16061 | /* 40742 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16062 | /* 40747 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16063 | /* 40752 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16064 | /* 40754 */ // (sext:{ *:[i64] } (udiv:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (DIVU:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 16065 | /* 40754 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 16066 | /* 40757 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::DIVU), |
| 16067 | /* 40761 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16068 | /* 40766 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 16069 | /* 40770 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 16070 | /* 40774 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 16071 | /* 40776 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 16072 | /* 40779 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16073 | /* 40783 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16074 | /* 40788 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16075 | /* 40790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16076 | /* 40793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16077 | /* 40795 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 16078 | /* 40798 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 16079 | /* 40801 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 16080 | /* 40804 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16081 | /* 40809 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16082 | /* 40814 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 16083 | /* 40819 */ // GIR_Coverage, 1933, |
| 16084 | /* 40819 */ GIR_EraseRootFromParent_Done, |
| 16085 | /* 40820 */ // Label 1070: @40820 |
| 16086 | /* 40820 */ GIM_Try, /*On fail goto*//*Label 1071*/ GIMT_Encode4(40922), // Rule ID 1935 // |
| 16087 | /* 40825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc), |
| 16088 | /* 40828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16089 | /* 40832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_UREM), |
| 16090 | /* 40836 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 16091 | /* 40840 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 16092 | /* 40844 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16093 | /* 40849 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16094 | /* 40854 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16095 | /* 40856 */ // (sext:{ *:[i64] } (urem:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2)) => (INSERT_SUBREG:{ *:[i64] } (IMPLICIT_DEF:{ *:[i64] }), (MODU:{ *:[i32] } GPR32:{ *:[i32] }:$src, GPR32:{ *:[i32] }:$src2), sub_32:{ *:[i32] }) |
| 16096 | /* 40856 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 16097 | /* 40859 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::MODU), |
| 16098 | /* 40863 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16099 | /* 40868 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/1, // src |
| 16100 | /* 40872 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/1, /*OpIdx*/2, // src2 |
| 16101 | /* 40876 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 16102 | /* 40878 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 16103 | /* 40881 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::IMPLICIT_DEF), |
| 16104 | /* 40885 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16105 | /* 40890 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16106 | /* 40892 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::INSERT_SUBREG), |
| 16107 | /* 40895 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 16108 | /* 40897 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 16109 | /* 40900 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 16110 | /* 40903 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 16111 | /* 40906 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16112 | /* 40911 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16113 | /* 40916 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/2, GIMT_Encode2(Mips::GPR32RegClassID), |
| 16114 | /* 40921 */ // GIR_Coverage, 1935, |
| 16115 | /* 40921 */ GIR_EraseRootFromParent_Done, |
| 16116 | /* 40922 */ // Label 1071: @40922 |
| 16117 | /* 40922 */ GIM_Try, /*On fail goto*//*Label 1072*/ GIMT_Encode4(40941), // Rule ID 1688 // |
| 16118 | /* 40927 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 16119 | /* 40930 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16120 | /* 40934 */ // (sext:{ *:[i64] } GPR32:{ *:[i32] }:$src) => (SLL64_32:{ *:[i64] } GPR32:{ *:[i32] }:$src) |
| 16121 | /* 40934 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SLL64_32), |
| 16122 | /* 40939 */ GIR_RootConstrainSelectedInstOperands, |
| 16123 | /* 40940 */ // GIR_Coverage, 1688, |
| 16124 | /* 40940 */ GIR_Done, |
| 16125 | /* 40941 */ // Label 1072: @40941 |
| 16126 | /* 40941 */ GIM_Reject, |
| 16127 | /* 40942 */ // Label 1057: @40942 |
| 16128 | /* 40942 */ GIM_Reject, |
| 16129 | /* 40943 */ // Label 35: @40943 |
| 16130 | /* 40943 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1075*/ GIMT_Encode4(41290), |
| 16131 | /* 40954 */ /*GILLT_s32*//*Label 1073*/ GIMT_Encode4(40962), |
| 16132 | /* 40958 */ /*GILLT_s64*//*Label 1074*/ GIMT_Encode4(41188), |
| 16133 | /* 40962 */ // Label 1073: @40962 |
| 16134 | /* 40962 */ GIM_Try, /*On fail goto*//*Label 1076*/ GIMT_Encode4(41187), |
| 16135 | /* 40967 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 16136 | /* 40970 */ GIM_Try, /*On fail goto*//*Label 1077*/ GIMT_Encode4(41006), // Rule ID 106 // |
| 16137 | /* 40975 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r2_HasStdEnc_NotInMicroMips), |
| 16138 | /* 40978 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16139 | /* 40982 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16140 | /* 40986 */ // MIs[0] Operand 2 |
| 16141 | /* 40986 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 16142 | /* 40997 */ // (sext_inreg:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, i8:{ *:[Other] }) => (SEB:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 16143 | /* 40997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEB), |
| 16144 | /* 41000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16145 | /* 41002 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16146 | /* 41004 */ GIR_RootConstrainSelectedInstOperands, |
| 16147 | /* 41005 */ // GIR_Coverage, 106, |
| 16148 | /* 41005 */ GIR_EraseRootFromParent_Done, |
| 16149 | /* 41006 */ // Label 1077: @41006 |
| 16150 | /* 41006 */ GIM_Try, /*On fail goto*//*Label 1078*/ GIMT_Encode4(41042), // Rule ID 107 // |
| 16151 | /* 41011 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r2_HasStdEnc_NotInMicroMips), |
| 16152 | /* 41014 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16153 | /* 41018 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16154 | /* 41022 */ // MIs[0] Operand 2 |
| 16155 | /* 41022 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 16156 | /* 41033 */ // (sext_inreg:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, i16:{ *:[Other] }) => (SEH:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 16157 | /* 41033 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEH), |
| 16158 | /* 41036 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16159 | /* 41038 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16160 | /* 41040 */ GIR_RootConstrainSelectedInstOperands, |
| 16161 | /* 41041 */ // GIR_Coverage, 107, |
| 16162 | /* 41041 */ GIR_EraseRootFromParent_Done, |
| 16163 | /* 41042 */ // Label 1078: @41042 |
| 16164 | /* 41042 */ GIM_Try, /*On fail goto*//*Label 1079*/ GIMT_Encode4(41078), // Rule ID 1176 // |
| 16165 | /* 41047 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 16166 | /* 41050 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16167 | /* 41054 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16168 | /* 41058 */ // MIs[0] Operand 2 |
| 16169 | /* 41058 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 16170 | /* 41069 */ // (sext_inreg:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, i8:{ *:[Other] }) => (SEB_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 16171 | /* 41069 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEB_MM), |
| 16172 | /* 41072 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16173 | /* 41074 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16174 | /* 41076 */ GIR_RootConstrainSelectedInstOperands, |
| 16175 | /* 41077 */ // GIR_Coverage, 1176, |
| 16176 | /* 41077 */ GIR_EraseRootFromParent_Done, |
| 16177 | /* 41078 */ // Label 1079: @41078 |
| 16178 | /* 41078 */ GIM_Try, /*On fail goto*//*Label 1080*/ GIMT_Encode4(41114), // Rule ID 1177 // |
| 16179 | /* 41083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 16180 | /* 41086 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16181 | /* 41090 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16182 | /* 41094 */ // MIs[0] Operand 2 |
| 16183 | /* 41094 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 16184 | /* 41105 */ // (sext_inreg:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, i16:{ *:[Other] }) => (SEH_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt) |
| 16185 | /* 41105 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEH_MM), |
| 16186 | /* 41108 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16187 | /* 41110 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16188 | /* 41112 */ GIR_RootConstrainSelectedInstOperands, |
| 16189 | /* 41113 */ // GIR_Coverage, 1177, |
| 16190 | /* 41113 */ GIR_EraseRootFromParent_Done, |
| 16191 | /* 41114 */ // Label 1080: @41114 |
| 16192 | /* 41114 */ GIM_Try, /*On fail goto*//*Label 1081*/ GIMT_Encode4(41150), // Rule ID 2038 // |
| 16193 | /* 41119 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 16194 | /* 41122 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16195 | /* 41126 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16196 | /* 41130 */ // MIs[0] Operand 2 |
| 16197 | /* 41130 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 16198 | /* 41141 */ // (sext_inreg:{ *:[i32] } CPU16Regs:{ *:[i32] }:$val, i8:{ *:[Other] }) => (SebRx16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$val) |
| 16199 | /* 41141 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SebRx16), |
| 16200 | /* 41144 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 16201 | /* 41146 */ GIR_RootToRootCopy, /*OpIdx*/1, // val |
| 16202 | /* 41148 */ GIR_RootConstrainSelectedInstOperands, |
| 16203 | /* 41149 */ // GIR_Coverage, 2038, |
| 16204 | /* 41149 */ GIR_EraseRootFromParent_Done, |
| 16205 | /* 41150 */ // Label 1081: @41150 |
| 16206 | /* 41150 */ GIM_Try, /*On fail goto*//*Label 1082*/ GIMT_Encode4(41186), // Rule ID 2039 // |
| 16207 | /* 41155 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 16208 | /* 41158 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16209 | /* 41162 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16210 | /* 41166 */ // MIs[0] Operand 2 |
| 16211 | /* 41166 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 16212 | /* 41177 */ // (sext_inreg:{ *:[i32] } CPU16Regs:{ *:[i32] }:$val, i16:{ *:[Other] }) => (SehRx16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$val) |
| 16213 | /* 41177 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SehRx16), |
| 16214 | /* 41180 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 16215 | /* 41182 */ GIR_RootToRootCopy, /*OpIdx*/1, // val |
| 16216 | /* 41184 */ GIR_RootConstrainSelectedInstOperands, |
| 16217 | /* 41185 */ // GIR_Coverage, 2039, |
| 16218 | /* 41185 */ GIR_EraseRootFromParent_Done, |
| 16219 | /* 41186 */ // Label 1082: @41186 |
| 16220 | /* 41186 */ GIM_Reject, |
| 16221 | /* 41187 */ // Label 1076: @41187 |
| 16222 | /* 41187 */ GIM_Reject, |
| 16223 | /* 41188 */ // Label 1074: @41188 |
| 16224 | /* 41188 */ GIM_Try, /*On fail goto*//*Label 1083*/ GIMT_Encode4(41289), |
| 16225 | /* 41193 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 16226 | /* 41196 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16227 | /* 41200 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16228 | /* 41204 */ GIM_Try, /*On fail goto*//*Label 1084*/ GIMT_Encode4(41232), // Rule ID 336 // |
| 16229 | /* 41209 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r2_HasStdEnc_IsGP64bit), |
| 16230 | /* 41212 */ // MIs[0] Operand 2 |
| 16231 | /* 41212 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(8), |
| 16232 | /* 41223 */ // (sext_inreg:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, i8:{ *:[Other] }) => (SEB64:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt) |
| 16233 | /* 41223 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEB64), |
| 16234 | /* 41226 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16235 | /* 41228 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16236 | /* 41230 */ GIR_RootConstrainSelectedInstOperands, |
| 16237 | /* 41231 */ // GIR_Coverage, 336, |
| 16238 | /* 41231 */ GIR_EraseRootFromParent_Done, |
| 16239 | /* 41232 */ // Label 1084: @41232 |
| 16240 | /* 41232 */ GIM_Try, /*On fail goto*//*Label 1085*/ GIMT_Encode4(41260), // Rule ID 337 // |
| 16241 | /* 41237 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r2_HasStdEnc_IsGP64bit), |
| 16242 | /* 41240 */ // MIs[0] Operand 2 |
| 16243 | /* 41240 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(16), |
| 16244 | /* 41251 */ // (sext_inreg:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, i16:{ *:[Other] }) => (SEH64:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt) |
| 16245 | /* 41251 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEH64), |
| 16246 | /* 41254 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16247 | /* 41256 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16248 | /* 41258 */ GIR_RootConstrainSelectedInstOperands, |
| 16249 | /* 41259 */ // GIR_Coverage, 337, |
| 16250 | /* 41259 */ GIR_EraseRootFromParent_Done, |
| 16251 | /* 41260 */ // Label 1085: @41260 |
| 16252 | /* 41260 */ GIM_Try, /*On fail goto*//*Label 1086*/ GIMT_Encode4(41288), // Rule ID 1691 // |
| 16253 | /* 41265 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 16254 | /* 41268 */ // MIs[0] Operand 2 |
| 16255 | /* 41268 */ GIM_CheckLiteralInt, /*MI*/0, /*Op*/2, GIMT_Encode8(32), |
| 16256 | /* 41279 */ // (sext_inreg:{ *:[i64] } GPR64:{ *:[i64] }:$src, i32:{ *:[Other] }) => (SLL64_64:{ *:[i64] } GPR64:{ *:[i64] }:$src) |
| 16257 | /* 41279 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL64_64), |
| 16258 | /* 41282 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16259 | /* 41284 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16260 | /* 41286 */ GIR_RootConstrainSelectedInstOperands, |
| 16261 | /* 41287 */ // GIR_Coverage, 1691, |
| 16262 | /* 41287 */ GIR_EraseRootFromParent_Done, |
| 16263 | /* 41288 */ // Label 1086: @41288 |
| 16264 | /* 41288 */ GIM_Reject, |
| 16265 | /* 41289 */ // Label 1083: @41289 |
| 16266 | /* 41289 */ GIM_Reject, |
| 16267 | /* 41290 */ // Label 1075: @41290 |
| 16268 | /* 41290 */ GIM_Reject, |
| 16269 | /* 41291 */ // Label 36: @41291 |
| 16270 | /* 41291 */ GIM_Try, /*On fail goto*//*Label 1087*/ GIMT_Encode4(41491), |
| 16271 | /* 41296 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s64, |
| 16272 | /* 41299 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 16273 | /* 41302 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16274 | /* 41306 */ GIM_Try, /*On fail goto*//*Label 1088*/ GIMT_Encode4(41362), // Rule ID 355 // |
| 16275 | /* 41311 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 16276 | /* 41314 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16277 | /* 41318 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 16278 | /* 41322 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 16279 | /* 41326 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 16280 | /* 41330 */ // MIs[1] Operand 1 |
| 16281 | /* 41330 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 16282 | /* 41335 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16283 | /* 41340 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16284 | /* 41345 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16285 | /* 41347 */ // (zext:{ *:[i64] } (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, SETEQ:{ *:[Other] })) => (SEQ:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 16286 | /* 41347 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEQ), |
| 16287 | /* 41350 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16288 | /* 41352 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 16289 | /* 41356 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 16290 | /* 41360 */ GIR_RootConstrainSelectedInstOperands, |
| 16291 | /* 41361 */ // GIR_Coverage, 355, |
| 16292 | /* 41361 */ GIR_EraseRootFromParent_Done, |
| 16293 | /* 41362 */ // Label 1088: @41362 |
| 16294 | /* 41362 */ GIM_Try, /*On fail goto*//*Label 1089*/ GIMT_Encode4(41418), // Rule ID 357 // |
| 16295 | /* 41367 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 16296 | /* 41370 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 16297 | /* 41374 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 16298 | /* 41378 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 16299 | /* 41382 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 16300 | /* 41386 */ // MIs[1] Operand 1 |
| 16301 | /* 41386 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 16302 | /* 41391 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16303 | /* 41396 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16304 | /* 41401 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16305 | /* 41403 */ // (zext:{ *:[i64] } (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, SETNE:{ *:[Other] })) => (SNE:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 16306 | /* 41403 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SNE), |
| 16307 | /* 41406 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16308 | /* 41408 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // rs |
| 16309 | /* 41412 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // rt |
| 16310 | /* 41416 */ GIR_RootConstrainSelectedInstOperands, |
| 16311 | /* 41417 */ // GIR_Coverage, 357, |
| 16312 | /* 41417 */ GIR_EraseRootFromParent_Done, |
| 16313 | /* 41418 */ // Label 1089: @41418 |
| 16314 | /* 41418 */ GIM_Try, /*On fail goto*//*Label 1090*/ GIMT_Encode4(41490), |
| 16315 | /* 41423 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16316 | /* 41427 */ GIM_Try, /*On fail goto*//*Label 1091*/ GIMT_Encode4(41466), // Rule ID 1686 // |
| 16317 | /* 41432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 16318 | /* 41435 */ // (zext:{ *:[i64] } GPR32:{ *:[i32] }:$src) => (DSRL:{ *:[i64] } (DSLL64_32:{ *:[i64] } GPR32:{ *:[i32] }:$src), 32:{ *:[i32] }) |
| 16319 | /* 41435 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 16320 | /* 41438 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::DSLL64_32), |
| 16321 | /* 41442 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16322 | /* 41447 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 16323 | /* 41451 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 16324 | /* 41453 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSRL), |
| 16325 | /* 41456 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16326 | /* 41458 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 16327 | /* 41461 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/32, |
| 16328 | /* 41464 */ GIR_RootConstrainSelectedInstOperands, |
| 16329 | /* 41465 */ // GIR_Coverage, 1686, |
| 16330 | /* 41465 */ GIR_EraseRootFromParent_Done, |
| 16331 | /* 41466 */ // Label 1091: @41466 |
| 16332 | /* 41466 */ GIM_Try, /*On fail goto*//*Label 1092*/ GIMT_Encode4(41489), // Rule ID 1689 // |
| 16333 | /* 41471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r2_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 16334 | /* 41474 */ // (zext:{ *:[i64] } GPR32:{ *:[i32] }:$src) => (DEXT64_32:{ *:[i64] } GPR32:{ *:[i32] }:$src, 0:{ *:[i32] }, 32:{ *:[i32] }) |
| 16335 | /* 41474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DEXT64_32), |
| 16336 | /* 41477 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 16337 | /* 41479 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16338 | /* 41481 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/0, |
| 16339 | /* 41484 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/32, |
| 16340 | /* 41487 */ GIR_RootConstrainSelectedInstOperands, |
| 16341 | /* 41488 */ // GIR_Coverage, 1689, |
| 16342 | /* 41488 */ GIR_EraseRootFromParent_Done, |
| 16343 | /* 41489 */ // Label 1092: @41489 |
| 16344 | /* 41489 */ GIM_Reject, |
| 16345 | /* 41490 */ // Label 1090: @41490 |
| 16346 | /* 41490 */ GIM_Reject, |
| 16347 | /* 41491 */ // Label 1087: @41491 |
| 16348 | /* 41491 */ GIM_Reject, |
| 16349 | /* 41492 */ // Label 37: @41492 |
| 16350 | /* 41492 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 1099*/ GIMT_Encode4(43288), |
| 16351 | /* 41503 */ /*GILLT_s32*//*Label 1093*/ GIMT_Encode4(41535), |
| 16352 | /* 41507 */ /*GILLT_s64*//*Label 1094*/ GIMT_Encode4(41797), GIMT_Encode4(0), |
| 16353 | /* 41515 */ /*GILLT_v2s64*//*Label 1095*/ GIMT_Encode4(41938), GIMT_Encode4(0), |
| 16354 | /* 41523 */ /*GILLT_v4s32*//*Label 1096*/ GIMT_Encode4(41972), |
| 16355 | /* 41527 */ /*GILLT_v8s16*//*Label 1097*/ GIMT_Encode4(42240), |
| 16356 | /* 41531 */ /*GILLT_v16s8*//*Label 1098*/ GIMT_Encode4(42636), |
| 16357 | /* 41535 */ // Label 1093: @41535 |
| 16358 | /* 41535 */ GIM_Try, /*On fail goto*//*Label 1100*/ GIMT_Encode4(41796), |
| 16359 | /* 41540 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 16360 | /* 41543 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 16361 | /* 41546 */ GIM_Try, /*On fail goto*//*Label 1101*/ GIMT_Encode4(41588), // Rule ID 55 // |
| 16362 | /* 41551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 16363 | /* 41554 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16364 | /* 41558 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16365 | /* 41562 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16366 | /* 41566 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16367 | /* 41570 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 16368 | /* 41574 */ // MIs[1] Operand 1 |
| 16369 | /* 41574 */ // No operand predicates |
| 16370 | /* 41574 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16371 | /* 41576 */ // (shl:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$shamt) => (SLL:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 16372 | /* 41576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL), |
| 16373 | /* 41579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16374 | /* 41581 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16375 | /* 41583 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 16376 | /* 41586 */ GIR_RootConstrainSelectedInstOperands, |
| 16377 | /* 41587 */ // GIR_Coverage, 55, |
| 16378 | /* 41587 */ GIR_EraseRootFromParent_Done, |
| 16379 | /* 41588 */ // Label 1101: @41588 |
| 16380 | /* 41588 */ GIM_Try, /*On fail goto*//*Label 1102*/ GIMT_Encode4(41630), // Rule ID 1962 // |
| 16381 | /* 41593 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 16382 | /* 41596 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16383 | /* 41600 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16384 | /* 41604 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16385 | /* 41608 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16386 | /* 41612 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 16387 | /* 41616 */ // MIs[1] Operand 1 |
| 16388 | /* 41616 */ // No operand predicates |
| 16389 | /* 41616 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16390 | /* 41618 */ // (shl:{ *:[i32] } CPU16Regs:{ *:[i32] }:$in, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) => (SllX16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$in, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) |
| 16391 | /* 41618 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SllX16), |
| 16392 | /* 41621 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 16393 | /* 41623 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 16394 | /* 41625 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 16395 | /* 41628 */ GIR_RootConstrainSelectedInstOperands, |
| 16396 | /* 41629 */ // GIR_Coverage, 1962, |
| 16397 | /* 41629 */ GIR_EraseRootFromParent_Done, |
| 16398 | /* 41630 */ // Label 1102: @41630 |
| 16399 | /* 41630 */ GIM_Try, /*On fail goto*//*Label 1103*/ GIMT_Encode4(41672), // Rule ID 2301 // |
| 16400 | /* 41635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 16401 | /* 41638 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 16402 | /* 41642 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 16403 | /* 41646 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16404 | /* 41650 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16405 | /* 41654 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt2Shift), |
| 16406 | /* 41658 */ // MIs[1] Operand 1 |
| 16407 | /* 41658 */ // No operand predicates |
| 16408 | /* 41658 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16409 | /* 41660 */ // (shl:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt2Shift>>:$imm) => (SLL16_MM:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt2Shift>>:$imm) |
| 16410 | /* 41660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL16_MM), |
| 16411 | /* 41663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16412 | /* 41665 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16413 | /* 41667 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 16414 | /* 41670 */ GIR_RootConstrainSelectedInstOperands, |
| 16415 | /* 41671 */ // GIR_Coverage, 2301, |
| 16416 | /* 41671 */ GIR_EraseRootFromParent_Done, |
| 16417 | /* 41672 */ // Label 1103: @41672 |
| 16418 | /* 41672 */ GIM_Try, /*On fail goto*//*Label 1104*/ GIMT_Encode4(41714), // Rule ID 2302 // |
| 16419 | /* 41677 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 16420 | /* 41680 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16421 | /* 41684 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16422 | /* 41688 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16423 | /* 41692 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16424 | /* 41696 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 16425 | /* 41700 */ // MIs[1] Operand 1 |
| 16426 | /* 41700 */ // No operand predicates |
| 16427 | /* 41700 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16428 | /* 41702 */ // (shl:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) => (SLL_MM:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) |
| 16429 | /* 41702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL_MM), |
| 16430 | /* 41705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16431 | /* 41707 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 16432 | /* 41709 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 16433 | /* 41712 */ GIR_RootConstrainSelectedInstOperands, |
| 16434 | /* 41713 */ // GIR_Coverage, 2302, |
| 16435 | /* 41713 */ GIR_EraseRootFromParent_Done, |
| 16436 | /* 41714 */ // Label 1104: @41714 |
| 16437 | /* 41714 */ GIM_Try, /*On fail goto*//*Label 1105*/ GIMT_Encode4(41741), // Rule ID 61 // |
| 16438 | /* 41719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 16439 | /* 41722 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16440 | /* 41726 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16441 | /* 41730 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16442 | /* 41734 */ // (shl:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SLLV:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 16443 | /* 41734 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SLLV), |
| 16444 | /* 41739 */ GIR_RootConstrainSelectedInstOperands, |
| 16445 | /* 41740 */ // GIR_Coverage, 61, |
| 16446 | /* 41740 */ GIR_Done, |
| 16447 | /* 41741 */ // Label 1105: @41741 |
| 16448 | /* 41741 */ GIM_Try, /*On fail goto*//*Label 1106*/ GIMT_Encode4(41768), // Rule ID 1965 // |
| 16449 | /* 41746 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 16450 | /* 41749 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16451 | /* 41753 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16452 | /* 41757 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 16453 | /* 41761 */ // (shl:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r, CPU16Regs:{ *:[i32] }:$ra) => (SllvRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r, CPU16Regs:{ *:[i32] }:$ra) |
| 16454 | /* 41761 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SllvRxRy16), |
| 16455 | /* 41766 */ GIR_RootConstrainSelectedInstOperands, |
| 16456 | /* 41767 */ // GIR_Coverage, 1965, |
| 16457 | /* 41767 */ GIR_Done, |
| 16458 | /* 41768 */ // Label 1106: @41768 |
| 16459 | /* 41768 */ GIM_Try, /*On fail goto*//*Label 1107*/ GIMT_Encode4(41795), // Rule ID 2303 // |
| 16460 | /* 41773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 16461 | /* 41776 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16462 | /* 41780 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16463 | /* 41784 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16464 | /* 41788 */ // (shl:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs) => (SLLV_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs) |
| 16465 | /* 41788 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SLLV_MM), |
| 16466 | /* 41793 */ GIR_RootConstrainSelectedInstOperands, |
| 16467 | /* 41794 */ // GIR_Coverage, 2303, |
| 16468 | /* 41794 */ GIR_Done, |
| 16469 | /* 41795 */ // Label 1107: @41795 |
| 16470 | /* 41795 */ GIM_Reject, |
| 16471 | /* 41796 */ // Label 1100: @41796 |
| 16472 | /* 41796 */ GIM_Reject, |
| 16473 | /* 41797 */ // Label 1094: @41797 |
| 16474 | /* 41797 */ GIM_Try, /*On fail goto*//*Label 1108*/ GIMT_Encode4(41937), |
| 16475 | /* 41802 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 16476 | /* 41805 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 16477 | /* 41808 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16478 | /* 41812 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16479 | /* 41816 */ GIM_Try, /*On fail goto*//*Label 1109*/ GIMT_Encode4(41850), // Rule ID 285 // |
| 16480 | /* 41821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 16481 | /* 41824 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16482 | /* 41828 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16483 | /* 41832 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt6), |
| 16484 | /* 41836 */ // MIs[1] Operand 1 |
| 16485 | /* 41836 */ // No operand predicates |
| 16486 | /* 41836 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16487 | /* 41838 */ // (shl:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt6>>:$shamt) => (DSLL:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 16488 | /* 41838 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSLL), |
| 16489 | /* 41841 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16490 | /* 41843 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16491 | /* 41845 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 16492 | /* 41848 */ GIR_RootConstrainSelectedInstOperands, |
| 16493 | /* 41849 */ // GIR_Coverage, 285, |
| 16494 | /* 41849 */ GIR_EraseRootFromParent_Done, |
| 16495 | /* 41850 */ // Label 1109: @41850 |
| 16496 | /* 41850 */ GIM_Try, /*On fail goto*//*Label 1110*/ GIMT_Encode4(41917), // Rule ID 1679 // |
| 16497 | /* 41855 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 16498 | /* 41858 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16499 | /* 41862 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_TRUNC), |
| 16500 | /* 41866 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 16501 | /* 41870 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 16502 | /* 41875 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 16503 | /* 41877 */ // (shl:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (trunc:{ *:[i32] } GPR64:{ *:[i64] }:$rs)) => (DSLLV:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (EXTRACT_SUBREG:{ *:[i32] } GPR64:{ *:[i64] }:$rs, sub_32:{ *:[i32] })) |
| 16504 | /* 41877 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 16505 | /* 41880 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 16506 | /* 41884 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 16507 | /* 41889 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // rs |
| 16508 | /* 41895 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 16509 | /* 41900 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 16510 | /* 41905 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSLLV), |
| 16511 | /* 41908 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 16512 | /* 41910 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 16513 | /* 41912 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 16514 | /* 41915 */ GIR_RootConstrainSelectedInstOperands, |
| 16515 | /* 41916 */ // GIR_Coverage, 1679, |
| 16516 | /* 41916 */ GIR_EraseRootFromParent_Done, |
| 16517 | /* 41917 */ // Label 1110: @41917 |
| 16518 | /* 41917 */ GIM_Try, /*On fail goto*//*Label 1111*/ GIMT_Encode4(41936), // Rule ID 291 // |
| 16519 | /* 41922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 16520 | /* 41925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 16521 | /* 41929 */ // (shl:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (DSLLV:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 16522 | /* 41929 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DSLLV), |
| 16523 | /* 41934 */ GIR_RootConstrainSelectedInstOperands, |
| 16524 | /* 41935 */ // GIR_Coverage, 291, |
| 16525 | /* 41935 */ GIR_Done, |
| 16526 | /* 41936 */ // Label 1111: @41936 |
| 16527 | /* 41936 */ GIM_Reject, |
| 16528 | /* 41937 */ // Label 1108: @41937 |
| 16529 | /* 41937 */ GIM_Reject, |
| 16530 | /* 41938 */ // Label 1095: @41938 |
| 16531 | /* 41938 */ GIM_Try, /*On fail goto*//*Label 1112*/ GIMT_Encode4(41971), // Rule ID 1035 // |
| 16532 | /* 41943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 16533 | /* 41946 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 16534 | /* 41949 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 16535 | /* 41952 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 16536 | /* 41956 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 16537 | /* 41960 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 16538 | /* 41964 */ // (shl:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SLL_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 16539 | /* 41964 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SLL_D), |
| 16540 | /* 41969 */ GIR_RootConstrainSelectedInstOperands, |
| 16541 | /* 41970 */ // GIR_Coverage, 1035, |
| 16542 | /* 41970 */ GIR_Done, |
| 16543 | /* 41971 */ // Label 1112: @41971 |
| 16544 | /* 41971 */ GIM_Reject, |
| 16545 | /* 41972 */ // Label 1096: @41972 |
| 16546 | /* 41972 */ GIM_Try, /*On fail goto*//*Label 1113*/ GIMT_Encode4(42239), |
| 16547 | /* 41977 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 16548 | /* 41980 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 16549 | /* 41983 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 16550 | /* 41987 */ GIM_Try, /*On fail goto*//*Label 1114*/ GIMT_Encode4(42101), // Rule ID 2636 // |
| 16551 | /* 41992 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 16552 | /* 41995 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16553 | /* 41999 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 16554 | /* 42003 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 16555 | /* 42007 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 16556 | /* 42011 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 16557 | /* 42015 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 16558 | /* 42019 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/5, |
| 16559 | /* 42022 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 16560 | /* 42026 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 16561 | /* 42030 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 16562 | /* 42034 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 16563 | /* 42038 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 16564 | /* 42042 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16565 | /* 42046 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16566 | /* 42050 */ // MIs[3] Operand 1 |
| 16567 | /* 42050 */ // No operand predicates |
| 16568 | /* 42050 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 16569 | /* 42054 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16570 | /* 42058 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16571 | /* 42062 */ // MIs[4] Operand 1 |
| 16572 | /* 42062 */ // No operand predicates |
| 16573 | /* 42062 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 16574 | /* 42066 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16575 | /* 42070 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16576 | /* 42074 */ // MIs[5] Operand 1 |
| 16577 | /* 42074 */ // No operand predicates |
| 16578 | /* 42074 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 16579 | /* 42078 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16580 | /* 42082 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16581 | /* 42086 */ // MIs[6] Operand 1 |
| 16582 | /* 42086 */ // No operand predicates |
| 16583 | /* 42086 */ GIM_CheckIsSafeToFold, /*NumInsns*/6, |
| 16584 | /* 42088 */ // (shl:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, (and:{ *:[v4i32] } (build_vector:{ *:[v4i32] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>), v4i32:{ *:[v4i32] }:$wt)) => (SLL_W:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, v4i32:{ *:[v4i32] }:$wt) |
| 16585 | /* 42088 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL_W), |
| 16586 | /* 42091 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 16587 | /* 42093 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 16588 | /* 42095 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 16589 | /* 42099 */ GIR_RootConstrainSelectedInstOperands, |
| 16590 | /* 42100 */ // GIR_Coverage, 2636, |
| 16591 | /* 42100 */ GIR_EraseRootFromParent_Done, |
| 16592 | /* 42101 */ // Label 1114: @42101 |
| 16593 | /* 42101 */ GIM_Try, /*On fail goto*//*Label 1115*/ GIMT_Encode4(42215), // Rule ID 2202 // |
| 16594 | /* 42106 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 16595 | /* 42109 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16596 | /* 42113 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 16597 | /* 42117 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 16598 | /* 42121 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 16599 | /* 42125 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16600 | /* 42129 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 16601 | /* 42133 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/5, |
| 16602 | /* 42136 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 16603 | /* 42140 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 16604 | /* 42144 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 16605 | /* 42148 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 16606 | /* 42152 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 16607 | /* 42156 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16608 | /* 42160 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16609 | /* 42164 */ // MIs[3] Operand 1 |
| 16610 | /* 42164 */ // No operand predicates |
| 16611 | /* 42164 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 16612 | /* 42168 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16613 | /* 42172 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16614 | /* 42176 */ // MIs[4] Operand 1 |
| 16615 | /* 42176 */ // No operand predicates |
| 16616 | /* 42176 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 16617 | /* 42180 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16618 | /* 42184 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16619 | /* 42188 */ // MIs[5] Operand 1 |
| 16620 | /* 42188 */ // No operand predicates |
| 16621 | /* 42188 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 16622 | /* 42192 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16623 | /* 42196 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 16624 | /* 42200 */ // MIs[6] Operand 1 |
| 16625 | /* 42200 */ // No operand predicates |
| 16626 | /* 42200 */ GIM_CheckIsSafeToFold, /*NumInsns*/6, |
| 16627 | /* 42202 */ // (shl:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, (and:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$wt, (build_vector:{ *:[v4i32] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>))) => (SLL_W:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, v4i32:{ *:[v4i32] }:$wt) |
| 16628 | /* 42202 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL_W), |
| 16629 | /* 42205 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 16630 | /* 42207 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 16631 | /* 42209 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 16632 | /* 42213 */ GIR_RootConstrainSelectedInstOperands, |
| 16633 | /* 42214 */ // GIR_Coverage, 2202, |
| 16634 | /* 42214 */ GIR_EraseRootFromParent_Done, |
| 16635 | /* 42215 */ // Label 1115: @42215 |
| 16636 | /* 42215 */ GIM_Try, /*On fail goto*//*Label 1116*/ GIMT_Encode4(42238), // Rule ID 1034 // |
| 16637 | /* 42220 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 16638 | /* 42223 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 16639 | /* 42227 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 16640 | /* 42231 */ // (shl:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SLL_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 16641 | /* 42231 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SLL_W), |
| 16642 | /* 42236 */ GIR_RootConstrainSelectedInstOperands, |
| 16643 | /* 42237 */ // GIR_Coverage, 1034, |
| 16644 | /* 42237 */ GIR_Done, |
| 16645 | /* 42238 */ // Label 1116: @42238 |
| 16646 | /* 42238 */ GIM_Reject, |
| 16647 | /* 42239 */ // Label 1113: @42239 |
| 16648 | /* 42239 */ GIM_Reject, |
| 16649 | /* 42240 */ // Label 1097: @42240 |
| 16650 | /* 42240 */ GIM_Try, /*On fail goto*//*Label 1117*/ GIMT_Encode4(42635), |
| 16651 | /* 42245 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 16652 | /* 42248 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 16653 | /* 42251 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 16654 | /* 42255 */ GIM_Try, /*On fail goto*//*Label 1118*/ GIMT_Encode4(42433), // Rule ID 2635 // |
| 16655 | /* 42260 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 16656 | /* 42263 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16657 | /* 42267 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 16658 | /* 42271 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 16659 | /* 42275 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 16660 | /* 42279 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 16661 | /* 42283 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 16662 | /* 42287 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/9, |
| 16663 | /* 42290 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 16664 | /* 42294 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 16665 | /* 42298 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 16666 | /* 42302 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 16667 | /* 42306 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 16668 | /* 42310 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 16669 | /* 42314 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 16670 | /* 42318 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 16671 | /* 42322 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 16672 | /* 42326 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16673 | /* 42330 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16674 | /* 42334 */ // MIs[3] Operand 1 |
| 16675 | /* 42334 */ // No operand predicates |
| 16676 | /* 42334 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 16677 | /* 42338 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16678 | /* 42342 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16679 | /* 42346 */ // MIs[4] Operand 1 |
| 16680 | /* 42346 */ // No operand predicates |
| 16681 | /* 42346 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 16682 | /* 42350 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16683 | /* 42354 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16684 | /* 42358 */ // MIs[5] Operand 1 |
| 16685 | /* 42358 */ // No operand predicates |
| 16686 | /* 42358 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 16687 | /* 42362 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16688 | /* 42366 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16689 | /* 42370 */ // MIs[6] Operand 1 |
| 16690 | /* 42370 */ // No operand predicates |
| 16691 | /* 42370 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 16692 | /* 42374 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16693 | /* 42378 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16694 | /* 42382 */ // MIs[7] Operand 1 |
| 16695 | /* 42382 */ // No operand predicates |
| 16696 | /* 42382 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 16697 | /* 42386 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16698 | /* 42390 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16699 | /* 42394 */ // MIs[8] Operand 1 |
| 16700 | /* 42394 */ // No operand predicates |
| 16701 | /* 42394 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 16702 | /* 42398 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16703 | /* 42402 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16704 | /* 42406 */ // MIs[9] Operand 1 |
| 16705 | /* 42406 */ // No operand predicates |
| 16706 | /* 42406 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 16707 | /* 42410 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16708 | /* 42414 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16709 | /* 42418 */ // MIs[10] Operand 1 |
| 16710 | /* 42418 */ // No operand predicates |
| 16711 | /* 42418 */ GIM_CheckIsSafeToFold, /*NumInsns*/10, |
| 16712 | /* 42420 */ // (shl:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, (and:{ *:[v8i16] } (build_vector:{ *:[v8i16] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>), v8i16:{ *:[v8i16] }:$wt)) => (SLL_H:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, v8i16:{ *:[v8i16] }:$wt) |
| 16713 | /* 42420 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL_H), |
| 16714 | /* 42423 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 16715 | /* 42425 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 16716 | /* 42427 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 16717 | /* 42431 */ GIR_RootConstrainSelectedInstOperands, |
| 16718 | /* 42432 */ // GIR_Coverage, 2635, |
| 16719 | /* 42432 */ GIR_EraseRootFromParent_Done, |
| 16720 | /* 42433 */ // Label 1118: @42433 |
| 16721 | /* 42433 */ GIM_Try, /*On fail goto*//*Label 1119*/ GIMT_Encode4(42611), // Rule ID 2201 // |
| 16722 | /* 42438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 16723 | /* 42441 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16724 | /* 42445 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 16725 | /* 42449 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 16726 | /* 42453 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 16727 | /* 42457 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16728 | /* 42461 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 16729 | /* 42465 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/9, |
| 16730 | /* 42468 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 16731 | /* 42472 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 16732 | /* 42476 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 16733 | /* 42480 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 16734 | /* 42484 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 16735 | /* 42488 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 16736 | /* 42492 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 16737 | /* 42496 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 16738 | /* 42500 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 16739 | /* 42504 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16740 | /* 42508 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16741 | /* 42512 */ // MIs[3] Operand 1 |
| 16742 | /* 42512 */ // No operand predicates |
| 16743 | /* 42512 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 16744 | /* 42516 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16745 | /* 42520 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16746 | /* 42524 */ // MIs[4] Operand 1 |
| 16747 | /* 42524 */ // No operand predicates |
| 16748 | /* 42524 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 16749 | /* 42528 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16750 | /* 42532 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16751 | /* 42536 */ // MIs[5] Operand 1 |
| 16752 | /* 42536 */ // No operand predicates |
| 16753 | /* 42536 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 16754 | /* 42540 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16755 | /* 42544 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16756 | /* 42548 */ // MIs[6] Operand 1 |
| 16757 | /* 42548 */ // No operand predicates |
| 16758 | /* 42548 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 16759 | /* 42552 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16760 | /* 42556 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16761 | /* 42560 */ // MIs[7] Operand 1 |
| 16762 | /* 42560 */ // No operand predicates |
| 16763 | /* 42560 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 16764 | /* 42564 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16765 | /* 42568 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16766 | /* 42572 */ // MIs[8] Operand 1 |
| 16767 | /* 42572 */ // No operand predicates |
| 16768 | /* 42572 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 16769 | /* 42576 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16770 | /* 42580 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16771 | /* 42584 */ // MIs[9] Operand 1 |
| 16772 | /* 42584 */ // No operand predicates |
| 16773 | /* 42584 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 16774 | /* 42588 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16775 | /* 42592 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 16776 | /* 42596 */ // MIs[10] Operand 1 |
| 16777 | /* 42596 */ // No operand predicates |
| 16778 | /* 42596 */ GIM_CheckIsSafeToFold, /*NumInsns*/10, |
| 16779 | /* 42598 */ // (shl:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, (and:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$wt, (build_vector:{ *:[v8i16] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>))) => (SLL_H:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, v8i16:{ *:[v8i16] }:$wt) |
| 16780 | /* 42598 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL_H), |
| 16781 | /* 42601 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 16782 | /* 42603 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 16783 | /* 42605 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 16784 | /* 42609 */ GIR_RootConstrainSelectedInstOperands, |
| 16785 | /* 42610 */ // GIR_Coverage, 2201, |
| 16786 | /* 42610 */ GIR_EraseRootFromParent_Done, |
| 16787 | /* 42611 */ // Label 1119: @42611 |
| 16788 | /* 42611 */ GIM_Try, /*On fail goto*//*Label 1120*/ GIMT_Encode4(42634), // Rule ID 1033 // |
| 16789 | /* 42616 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 16790 | /* 42619 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 16791 | /* 42623 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 16792 | /* 42627 */ // (shl:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SLL_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 16793 | /* 42627 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SLL_H), |
| 16794 | /* 42632 */ GIR_RootConstrainSelectedInstOperands, |
| 16795 | /* 42633 */ // GIR_Coverage, 1033, |
| 16796 | /* 42633 */ GIR_Done, |
| 16797 | /* 42634 */ // Label 1120: @42634 |
| 16798 | /* 42634 */ GIM_Reject, |
| 16799 | /* 42635 */ // Label 1117: @42635 |
| 16800 | /* 42635 */ GIM_Reject, |
| 16801 | /* 42636 */ // Label 1098: @42636 |
| 16802 | /* 42636 */ GIM_Try, /*On fail goto*//*Label 1121*/ GIMT_Encode4(43287), |
| 16803 | /* 42641 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 16804 | /* 42644 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 16805 | /* 42647 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 16806 | /* 42651 */ GIM_Try, /*On fail goto*//*Label 1122*/ GIMT_Encode4(42957), // Rule ID 2634 // |
| 16807 | /* 42656 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 16808 | /* 42659 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16809 | /* 42663 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 16810 | /* 42667 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 16811 | /* 42671 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 16812 | /* 42675 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 16813 | /* 42679 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 16814 | /* 42683 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/17, |
| 16815 | /* 42686 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 16816 | /* 42690 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 16817 | /* 42694 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 16818 | /* 42698 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 16819 | /* 42702 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 16820 | /* 42706 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 16821 | /* 42710 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 16822 | /* 42714 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 16823 | /* 42718 */ GIM_CheckType, /*MI*/2, /*Op*/9, /*Type*/GILLT_s32, |
| 16824 | /* 42722 */ GIM_CheckType, /*MI*/2, /*Op*/10, /*Type*/GILLT_s32, |
| 16825 | /* 42726 */ GIM_CheckType, /*MI*/2, /*Op*/11, /*Type*/GILLT_s32, |
| 16826 | /* 42730 */ GIM_CheckType, /*MI*/2, /*Op*/12, /*Type*/GILLT_s32, |
| 16827 | /* 42734 */ GIM_CheckType, /*MI*/2, /*Op*/13, /*Type*/GILLT_s32, |
| 16828 | /* 42738 */ GIM_CheckType, /*MI*/2, /*Op*/14, /*Type*/GILLT_s32, |
| 16829 | /* 42742 */ GIM_CheckType, /*MI*/2, /*Op*/15, /*Type*/GILLT_s32, |
| 16830 | /* 42746 */ GIM_CheckType, /*MI*/2, /*Op*/16, /*Type*/GILLT_s32, |
| 16831 | /* 42750 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 16832 | /* 42754 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16833 | /* 42758 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16834 | /* 42762 */ // MIs[3] Operand 1 |
| 16835 | /* 42762 */ // No operand predicates |
| 16836 | /* 42762 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 16837 | /* 42766 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16838 | /* 42770 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16839 | /* 42774 */ // MIs[4] Operand 1 |
| 16840 | /* 42774 */ // No operand predicates |
| 16841 | /* 42774 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 16842 | /* 42778 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16843 | /* 42782 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16844 | /* 42786 */ // MIs[5] Operand 1 |
| 16845 | /* 42786 */ // No operand predicates |
| 16846 | /* 42786 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 16847 | /* 42790 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16848 | /* 42794 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16849 | /* 42798 */ // MIs[6] Operand 1 |
| 16850 | /* 42798 */ // No operand predicates |
| 16851 | /* 42798 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 16852 | /* 42802 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16853 | /* 42806 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16854 | /* 42810 */ // MIs[7] Operand 1 |
| 16855 | /* 42810 */ // No operand predicates |
| 16856 | /* 42810 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 16857 | /* 42814 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16858 | /* 42818 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16859 | /* 42822 */ // MIs[8] Operand 1 |
| 16860 | /* 42822 */ // No operand predicates |
| 16861 | /* 42822 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 16862 | /* 42826 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16863 | /* 42830 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16864 | /* 42834 */ // MIs[9] Operand 1 |
| 16865 | /* 42834 */ // No operand predicates |
| 16866 | /* 42834 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 16867 | /* 42838 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16868 | /* 42842 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16869 | /* 42846 */ // MIs[10] Operand 1 |
| 16870 | /* 42846 */ // No operand predicates |
| 16871 | /* 42846 */ GIM_RecordInsn, /*DefineMI*/11, /*MI*/2, /*OpIdx*/9, // MIs[11] |
| 16872 | /* 42850 */ GIM_CheckOpcode, /*MI*/11, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16873 | /* 42854 */ GIM_CheckI64ImmPredicate, /*MI*/11, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16874 | /* 42858 */ // MIs[11] Operand 1 |
| 16875 | /* 42858 */ // No operand predicates |
| 16876 | /* 42858 */ GIM_RecordInsn, /*DefineMI*/12, /*MI*/2, /*OpIdx*/10, // MIs[12] |
| 16877 | /* 42862 */ GIM_CheckOpcode, /*MI*/12, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16878 | /* 42866 */ GIM_CheckI64ImmPredicate, /*MI*/12, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16879 | /* 42870 */ // MIs[12] Operand 1 |
| 16880 | /* 42870 */ // No operand predicates |
| 16881 | /* 42870 */ GIM_RecordInsn, /*DefineMI*/13, /*MI*/2, /*OpIdx*/11, // MIs[13] |
| 16882 | /* 42874 */ GIM_CheckOpcode, /*MI*/13, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16883 | /* 42878 */ GIM_CheckI64ImmPredicate, /*MI*/13, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16884 | /* 42882 */ // MIs[13] Operand 1 |
| 16885 | /* 42882 */ // No operand predicates |
| 16886 | /* 42882 */ GIM_RecordInsn, /*DefineMI*/14, /*MI*/2, /*OpIdx*/12, // MIs[14] |
| 16887 | /* 42886 */ GIM_CheckOpcode, /*MI*/14, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16888 | /* 42890 */ GIM_CheckI64ImmPredicate, /*MI*/14, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16889 | /* 42894 */ // MIs[14] Operand 1 |
| 16890 | /* 42894 */ // No operand predicates |
| 16891 | /* 42894 */ GIM_RecordInsn, /*DefineMI*/15, /*MI*/2, /*OpIdx*/13, // MIs[15] |
| 16892 | /* 42898 */ GIM_CheckOpcode, /*MI*/15, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16893 | /* 42902 */ GIM_CheckI64ImmPredicate, /*MI*/15, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16894 | /* 42906 */ // MIs[15] Operand 1 |
| 16895 | /* 42906 */ // No operand predicates |
| 16896 | /* 42906 */ GIM_RecordInsn, /*DefineMI*/16, /*MI*/2, /*OpIdx*/14, // MIs[16] |
| 16897 | /* 42910 */ GIM_CheckOpcode, /*MI*/16, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16898 | /* 42914 */ GIM_CheckI64ImmPredicate, /*MI*/16, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16899 | /* 42918 */ // MIs[16] Operand 1 |
| 16900 | /* 42918 */ // No operand predicates |
| 16901 | /* 42918 */ GIM_RecordInsn, /*DefineMI*/17, /*MI*/2, /*OpIdx*/15, // MIs[17] |
| 16902 | /* 42922 */ GIM_CheckOpcode, /*MI*/17, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16903 | /* 42926 */ GIM_CheckI64ImmPredicate, /*MI*/17, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16904 | /* 42930 */ // MIs[17] Operand 1 |
| 16905 | /* 42930 */ // No operand predicates |
| 16906 | /* 42930 */ GIM_RecordInsn, /*DefineMI*/18, /*MI*/2, /*OpIdx*/16, // MIs[18] |
| 16907 | /* 42934 */ GIM_CheckOpcode, /*MI*/18, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16908 | /* 42938 */ GIM_CheckI64ImmPredicate, /*MI*/18, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16909 | /* 42942 */ // MIs[18] Operand 1 |
| 16910 | /* 42942 */ // No operand predicates |
| 16911 | /* 42942 */ GIM_CheckIsSafeToFold, /*NumInsns*/18, |
| 16912 | /* 42944 */ // (shl:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, (and:{ *:[v16i8] } (build_vector:{ *:[v16i8] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>), v16i8:{ *:[v16i8] }:$wt)) => (SLL_B:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, v16i8:{ *:[v16i8] }:$wt) |
| 16913 | /* 42944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL_B), |
| 16914 | /* 42947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 16915 | /* 42949 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 16916 | /* 42951 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 16917 | /* 42955 */ GIR_RootConstrainSelectedInstOperands, |
| 16918 | /* 42956 */ // GIR_Coverage, 2634, |
| 16919 | /* 42956 */ GIR_EraseRootFromParent_Done, |
| 16920 | /* 42957 */ // Label 1122: @42957 |
| 16921 | /* 42957 */ GIM_Try, /*On fail goto*//*Label 1123*/ GIMT_Encode4(43263), // Rule ID 2200 // |
| 16922 | /* 42962 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 16923 | /* 42965 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 16924 | /* 42969 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 16925 | /* 42973 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 16926 | /* 42977 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 16927 | /* 42981 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 16928 | /* 42985 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 16929 | /* 42989 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/17, |
| 16930 | /* 42992 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 16931 | /* 42996 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 16932 | /* 43000 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 16933 | /* 43004 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 16934 | /* 43008 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 16935 | /* 43012 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 16936 | /* 43016 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 16937 | /* 43020 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 16938 | /* 43024 */ GIM_CheckType, /*MI*/2, /*Op*/9, /*Type*/GILLT_s32, |
| 16939 | /* 43028 */ GIM_CheckType, /*MI*/2, /*Op*/10, /*Type*/GILLT_s32, |
| 16940 | /* 43032 */ GIM_CheckType, /*MI*/2, /*Op*/11, /*Type*/GILLT_s32, |
| 16941 | /* 43036 */ GIM_CheckType, /*MI*/2, /*Op*/12, /*Type*/GILLT_s32, |
| 16942 | /* 43040 */ GIM_CheckType, /*MI*/2, /*Op*/13, /*Type*/GILLT_s32, |
| 16943 | /* 43044 */ GIM_CheckType, /*MI*/2, /*Op*/14, /*Type*/GILLT_s32, |
| 16944 | /* 43048 */ GIM_CheckType, /*MI*/2, /*Op*/15, /*Type*/GILLT_s32, |
| 16945 | /* 43052 */ GIM_CheckType, /*MI*/2, /*Op*/16, /*Type*/GILLT_s32, |
| 16946 | /* 43056 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 16947 | /* 43060 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16948 | /* 43064 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16949 | /* 43068 */ // MIs[3] Operand 1 |
| 16950 | /* 43068 */ // No operand predicates |
| 16951 | /* 43068 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 16952 | /* 43072 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16953 | /* 43076 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16954 | /* 43080 */ // MIs[4] Operand 1 |
| 16955 | /* 43080 */ // No operand predicates |
| 16956 | /* 43080 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 16957 | /* 43084 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16958 | /* 43088 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16959 | /* 43092 */ // MIs[5] Operand 1 |
| 16960 | /* 43092 */ // No operand predicates |
| 16961 | /* 43092 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 16962 | /* 43096 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16963 | /* 43100 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16964 | /* 43104 */ // MIs[6] Operand 1 |
| 16965 | /* 43104 */ // No operand predicates |
| 16966 | /* 43104 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 16967 | /* 43108 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16968 | /* 43112 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16969 | /* 43116 */ // MIs[7] Operand 1 |
| 16970 | /* 43116 */ // No operand predicates |
| 16971 | /* 43116 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 16972 | /* 43120 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16973 | /* 43124 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16974 | /* 43128 */ // MIs[8] Operand 1 |
| 16975 | /* 43128 */ // No operand predicates |
| 16976 | /* 43128 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 16977 | /* 43132 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16978 | /* 43136 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16979 | /* 43140 */ // MIs[9] Operand 1 |
| 16980 | /* 43140 */ // No operand predicates |
| 16981 | /* 43140 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 16982 | /* 43144 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16983 | /* 43148 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16984 | /* 43152 */ // MIs[10] Operand 1 |
| 16985 | /* 43152 */ // No operand predicates |
| 16986 | /* 43152 */ GIM_RecordInsn, /*DefineMI*/11, /*MI*/2, /*OpIdx*/9, // MIs[11] |
| 16987 | /* 43156 */ GIM_CheckOpcode, /*MI*/11, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16988 | /* 43160 */ GIM_CheckI64ImmPredicate, /*MI*/11, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16989 | /* 43164 */ // MIs[11] Operand 1 |
| 16990 | /* 43164 */ // No operand predicates |
| 16991 | /* 43164 */ GIM_RecordInsn, /*DefineMI*/12, /*MI*/2, /*OpIdx*/10, // MIs[12] |
| 16992 | /* 43168 */ GIM_CheckOpcode, /*MI*/12, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16993 | /* 43172 */ GIM_CheckI64ImmPredicate, /*MI*/12, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16994 | /* 43176 */ // MIs[12] Operand 1 |
| 16995 | /* 43176 */ // No operand predicates |
| 16996 | /* 43176 */ GIM_RecordInsn, /*DefineMI*/13, /*MI*/2, /*OpIdx*/11, // MIs[13] |
| 16997 | /* 43180 */ GIM_CheckOpcode, /*MI*/13, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 16998 | /* 43184 */ GIM_CheckI64ImmPredicate, /*MI*/13, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 16999 | /* 43188 */ // MIs[13] Operand 1 |
| 17000 | /* 43188 */ // No operand predicates |
| 17001 | /* 43188 */ GIM_RecordInsn, /*DefineMI*/14, /*MI*/2, /*OpIdx*/12, // MIs[14] |
| 17002 | /* 43192 */ GIM_CheckOpcode, /*MI*/14, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17003 | /* 43196 */ GIM_CheckI64ImmPredicate, /*MI*/14, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17004 | /* 43200 */ // MIs[14] Operand 1 |
| 17005 | /* 43200 */ // No operand predicates |
| 17006 | /* 43200 */ GIM_RecordInsn, /*DefineMI*/15, /*MI*/2, /*OpIdx*/13, // MIs[15] |
| 17007 | /* 43204 */ GIM_CheckOpcode, /*MI*/15, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17008 | /* 43208 */ GIM_CheckI64ImmPredicate, /*MI*/15, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17009 | /* 43212 */ // MIs[15] Operand 1 |
| 17010 | /* 43212 */ // No operand predicates |
| 17011 | /* 43212 */ GIM_RecordInsn, /*DefineMI*/16, /*MI*/2, /*OpIdx*/14, // MIs[16] |
| 17012 | /* 43216 */ GIM_CheckOpcode, /*MI*/16, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17013 | /* 43220 */ GIM_CheckI64ImmPredicate, /*MI*/16, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17014 | /* 43224 */ // MIs[16] Operand 1 |
| 17015 | /* 43224 */ // No operand predicates |
| 17016 | /* 43224 */ GIM_RecordInsn, /*DefineMI*/17, /*MI*/2, /*OpIdx*/15, // MIs[17] |
| 17017 | /* 43228 */ GIM_CheckOpcode, /*MI*/17, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17018 | /* 43232 */ GIM_CheckI64ImmPredicate, /*MI*/17, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17019 | /* 43236 */ // MIs[17] Operand 1 |
| 17020 | /* 43236 */ // No operand predicates |
| 17021 | /* 43236 */ GIM_RecordInsn, /*DefineMI*/18, /*MI*/2, /*OpIdx*/16, // MIs[18] |
| 17022 | /* 43240 */ GIM_CheckOpcode, /*MI*/18, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17023 | /* 43244 */ GIM_CheckI64ImmPredicate, /*MI*/18, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17024 | /* 43248 */ // MIs[18] Operand 1 |
| 17025 | /* 43248 */ // No operand predicates |
| 17026 | /* 43248 */ GIM_CheckIsSafeToFold, /*NumInsns*/18, |
| 17027 | /* 43250 */ // (shl:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, (and:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$wt, (build_vector:{ *:[v16i8] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>))) => (SLL_B:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, v16i8:{ *:[v16i8] }:$wt) |
| 17028 | /* 43250 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLL_B), |
| 17029 | /* 43253 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17030 | /* 43255 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17031 | /* 43257 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 17032 | /* 43261 */ GIR_RootConstrainSelectedInstOperands, |
| 17033 | /* 43262 */ // GIR_Coverage, 2200, |
| 17034 | /* 43262 */ GIR_EraseRootFromParent_Done, |
| 17035 | /* 43263 */ // Label 1123: @43263 |
| 17036 | /* 43263 */ GIM_Try, /*On fail goto*//*Label 1124*/ GIMT_Encode4(43286), // Rule ID 1032 // |
| 17037 | /* 43268 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 17038 | /* 43271 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 17039 | /* 43275 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 17040 | /* 43279 */ // (shl:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SLL_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 17041 | /* 43279 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SLL_B), |
| 17042 | /* 43284 */ GIR_RootConstrainSelectedInstOperands, |
| 17043 | /* 43285 */ // GIR_Coverage, 1032, |
| 17044 | /* 43285 */ GIR_Done, |
| 17045 | /* 43286 */ // Label 1124: @43286 |
| 17046 | /* 43286 */ GIM_Reject, |
| 17047 | /* 43287 */ // Label 1121: @43287 |
| 17048 | /* 43287 */ GIM_Reject, |
| 17049 | /* 43288 */ // Label 1099: @43288 |
| 17050 | /* 43288 */ GIM_Reject, |
| 17051 | /* 43289 */ // Label 38: @43289 |
| 17052 | /* 43289 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 1131*/ GIMT_Encode4(45085), |
| 17053 | /* 43300 */ /*GILLT_s32*//*Label 1125*/ GIMT_Encode4(43332), |
| 17054 | /* 43304 */ /*GILLT_s64*//*Label 1126*/ GIMT_Encode4(43594), GIMT_Encode4(0), |
| 17055 | /* 43312 */ /*GILLT_v2s64*//*Label 1127*/ GIMT_Encode4(43735), GIMT_Encode4(0), |
| 17056 | /* 43320 */ /*GILLT_v4s32*//*Label 1128*/ GIMT_Encode4(43769), |
| 17057 | /* 43324 */ /*GILLT_v8s16*//*Label 1129*/ GIMT_Encode4(44037), |
| 17058 | /* 43328 */ /*GILLT_v16s8*//*Label 1130*/ GIMT_Encode4(44433), |
| 17059 | /* 43332 */ // Label 1125: @43332 |
| 17060 | /* 43332 */ GIM_Try, /*On fail goto*//*Label 1132*/ GIMT_Encode4(43593), |
| 17061 | /* 43337 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17062 | /* 43340 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 17063 | /* 43343 */ GIM_Try, /*On fail goto*//*Label 1133*/ GIMT_Encode4(43385), // Rule ID 57 // |
| 17064 | /* 43348 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 17065 | /* 43351 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17066 | /* 43355 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17067 | /* 43359 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17068 | /* 43363 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17069 | /* 43367 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 17070 | /* 43371 */ // MIs[1] Operand 1 |
| 17071 | /* 43371 */ // No operand predicates |
| 17072 | /* 43371 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17073 | /* 43373 */ // (srl:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$shamt) => (SRL:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 17074 | /* 43373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL), |
| 17075 | /* 43376 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17076 | /* 43378 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 17077 | /* 43380 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 17078 | /* 43383 */ GIR_RootConstrainSelectedInstOperands, |
| 17079 | /* 43384 */ // GIR_Coverage, 57, |
| 17080 | /* 43384 */ GIR_EraseRootFromParent_Done, |
| 17081 | /* 43385 */ // Label 1133: @43385 |
| 17082 | /* 43385 */ GIM_Try, /*On fail goto*//*Label 1134*/ GIMT_Encode4(43427), // Rule ID 1963 // |
| 17083 | /* 43390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 17084 | /* 43393 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17085 | /* 43397 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17086 | /* 43401 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17087 | /* 43405 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17088 | /* 43409 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 17089 | /* 43413 */ // MIs[1] Operand 1 |
| 17090 | /* 43413 */ // No operand predicates |
| 17091 | /* 43413 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17092 | /* 43415 */ // (srl:{ *:[i32] } CPU16Regs:{ *:[i32] }:$in, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) => (SrlX16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$in, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) |
| 17093 | /* 43415 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SrlX16), |
| 17094 | /* 43418 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 17095 | /* 43420 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 17096 | /* 43422 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 17097 | /* 43425 */ GIR_RootConstrainSelectedInstOperands, |
| 17098 | /* 43426 */ // GIR_Coverage, 1963, |
| 17099 | /* 43426 */ GIR_EraseRootFromParent_Done, |
| 17100 | /* 43427 */ // Label 1134: @43427 |
| 17101 | /* 43427 */ GIM_Try, /*On fail goto*//*Label 1135*/ GIMT_Encode4(43469), // Rule ID 2304 // |
| 17102 | /* 43432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 17103 | /* 43435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 17104 | /* 43439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPRMM16RegClassID), |
| 17105 | /* 43443 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17106 | /* 43447 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17107 | /* 43451 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt2Shift), |
| 17108 | /* 43455 */ // MIs[1] Operand 1 |
| 17109 | /* 43455 */ // No operand predicates |
| 17110 | /* 43455 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17111 | /* 43457 */ // (srl:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt2Shift>>:$imm) => (SRL16_MM:{ *:[i32] } GPRMM16:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt2Shift>>:$imm) |
| 17112 | /* 43457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL16_MM), |
| 17113 | /* 43460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17114 | /* 43462 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17115 | /* 43464 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 17116 | /* 43467 */ GIR_RootConstrainSelectedInstOperands, |
| 17117 | /* 43468 */ // GIR_Coverage, 2304, |
| 17118 | /* 43468 */ GIR_EraseRootFromParent_Done, |
| 17119 | /* 43469 */ // Label 1135: @43469 |
| 17120 | /* 43469 */ GIM_Try, /*On fail goto*//*Label 1136*/ GIMT_Encode4(43511), // Rule ID 2305 // |
| 17121 | /* 43474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 17122 | /* 43477 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17123 | /* 43481 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17124 | /* 43485 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17125 | /* 43489 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17126 | /* 43493 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 17127 | /* 43497 */ // MIs[1] Operand 1 |
| 17128 | /* 43497 */ // No operand predicates |
| 17129 | /* 43497 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17130 | /* 43499 */ // (srl:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) => (SRL_MM:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) |
| 17131 | /* 43499 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL_MM), |
| 17132 | /* 43502 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17133 | /* 43504 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17134 | /* 43506 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 17135 | /* 43509 */ GIR_RootConstrainSelectedInstOperands, |
| 17136 | /* 43510 */ // GIR_Coverage, 2305, |
| 17137 | /* 43510 */ GIR_EraseRootFromParent_Done, |
| 17138 | /* 43511 */ // Label 1136: @43511 |
| 17139 | /* 43511 */ GIM_Try, /*On fail goto*//*Label 1137*/ GIMT_Encode4(43538), // Rule ID 63 // |
| 17140 | /* 43516 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 17141 | /* 43519 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17142 | /* 43523 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17143 | /* 43527 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17144 | /* 43531 */ // (srl:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SRLV:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 17145 | /* 43531 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRLV), |
| 17146 | /* 43536 */ GIR_RootConstrainSelectedInstOperands, |
| 17147 | /* 43537 */ // GIR_Coverage, 63, |
| 17148 | /* 43537 */ GIR_Done, |
| 17149 | /* 43538 */ // Label 1137: @43538 |
| 17150 | /* 43538 */ GIM_Try, /*On fail goto*//*Label 1138*/ GIMT_Encode4(43565), // Rule ID 1967 // |
| 17151 | /* 43543 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 17152 | /* 43546 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17153 | /* 43550 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17154 | /* 43554 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17155 | /* 43558 */ // (srl:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r, CPU16Regs:{ *:[i32] }:$ra) => (SrlvRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r, CPU16Regs:{ *:[i32] }:$ra) |
| 17156 | /* 43558 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SrlvRxRy16), |
| 17157 | /* 43563 */ GIR_RootConstrainSelectedInstOperands, |
| 17158 | /* 43564 */ // GIR_Coverage, 1967, |
| 17159 | /* 43564 */ GIR_Done, |
| 17160 | /* 43565 */ // Label 1138: @43565 |
| 17161 | /* 43565 */ GIM_Try, /*On fail goto*//*Label 1139*/ GIMT_Encode4(43592), // Rule ID 2306 // |
| 17162 | /* 43570 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 17163 | /* 43573 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17164 | /* 43577 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17165 | /* 43581 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17166 | /* 43585 */ // (srl:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs) => (SRLV_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs) |
| 17167 | /* 43585 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRLV_MM), |
| 17168 | /* 43590 */ GIR_RootConstrainSelectedInstOperands, |
| 17169 | /* 43591 */ // GIR_Coverage, 2306, |
| 17170 | /* 43591 */ GIR_Done, |
| 17171 | /* 43592 */ // Label 1139: @43592 |
| 17172 | /* 43592 */ GIM_Reject, |
| 17173 | /* 43593 */ // Label 1132: @43593 |
| 17174 | /* 43593 */ GIM_Reject, |
| 17175 | /* 43594 */ // Label 1126: @43594 |
| 17176 | /* 43594 */ GIM_Try, /*On fail goto*//*Label 1140*/ GIMT_Encode4(43734), |
| 17177 | /* 43599 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17178 | /* 43602 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 17179 | /* 43605 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 17180 | /* 43609 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 17181 | /* 43613 */ GIM_Try, /*On fail goto*//*Label 1141*/ GIMT_Encode4(43647), // Rule ID 287 // |
| 17182 | /* 43618 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 17183 | /* 43621 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17184 | /* 43625 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17185 | /* 43629 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt6), |
| 17186 | /* 43633 */ // MIs[1] Operand 1 |
| 17187 | /* 43633 */ // No operand predicates |
| 17188 | /* 43633 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17189 | /* 43635 */ // (srl:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt6>>:$shamt) => (DSRL:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 17190 | /* 43635 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSRL), |
| 17191 | /* 43638 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17192 | /* 43640 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 17193 | /* 43642 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 17194 | /* 43645 */ GIR_RootConstrainSelectedInstOperands, |
| 17195 | /* 43646 */ // GIR_Coverage, 287, |
| 17196 | /* 43646 */ GIR_EraseRootFromParent_Done, |
| 17197 | /* 43647 */ // Label 1141: @43647 |
| 17198 | /* 43647 */ GIM_Try, /*On fail goto*//*Label 1142*/ GIMT_Encode4(43714), // Rule ID 1680 // |
| 17199 | /* 43652 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 17200 | /* 43655 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17201 | /* 43659 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_TRUNC), |
| 17202 | /* 43663 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 17203 | /* 43667 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 17204 | /* 43672 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17205 | /* 43674 */ // (srl:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (trunc:{ *:[i32] } GPR64:{ *:[i64] }:$rs)) => (DSRLV:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (EXTRACT_SUBREG:{ *:[i32] } GPR64:{ *:[i64] }:$rs, sub_32:{ *:[i32] })) |
| 17206 | /* 43674 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17207 | /* 43677 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17208 | /* 43681 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17209 | /* 43686 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // rs |
| 17210 | /* 43692 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 17211 | /* 43697 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 17212 | /* 43702 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSRLV), |
| 17213 | /* 43705 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17214 | /* 43707 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 17215 | /* 43709 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17216 | /* 43712 */ GIR_RootConstrainSelectedInstOperands, |
| 17217 | /* 43713 */ // GIR_Coverage, 1680, |
| 17218 | /* 43713 */ GIR_EraseRootFromParent_Done, |
| 17219 | /* 43714 */ // Label 1142: @43714 |
| 17220 | /* 43714 */ GIM_Try, /*On fail goto*//*Label 1143*/ GIMT_Encode4(43733), // Rule ID 295 // |
| 17221 | /* 43719 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 17222 | /* 43722 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17223 | /* 43726 */ // (srl:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (DSRLV:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 17224 | /* 43726 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DSRLV), |
| 17225 | /* 43731 */ GIR_RootConstrainSelectedInstOperands, |
| 17226 | /* 43732 */ // GIR_Coverage, 295, |
| 17227 | /* 43732 */ GIR_Done, |
| 17228 | /* 43733 */ // Label 1143: @43733 |
| 17229 | /* 43733 */ GIM_Reject, |
| 17230 | /* 43734 */ // Label 1140: @43734 |
| 17231 | /* 43734 */ GIM_Reject, |
| 17232 | /* 43735 */ // Label 1127: @43735 |
| 17233 | /* 43735 */ GIM_Try, /*On fail goto*//*Label 1144*/ GIMT_Encode4(43768), // Rule ID 1067 // |
| 17234 | /* 43740 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 17235 | /* 43743 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 17236 | /* 43746 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 17237 | /* 43749 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 17238 | /* 43753 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 17239 | /* 43757 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 17240 | /* 43761 */ // (srl:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SRL_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 17241 | /* 43761 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRL_D), |
| 17242 | /* 43766 */ GIR_RootConstrainSelectedInstOperands, |
| 17243 | /* 43767 */ // GIR_Coverage, 1067, |
| 17244 | /* 43767 */ GIR_Done, |
| 17245 | /* 43768 */ // Label 1144: @43768 |
| 17246 | /* 43768 */ GIM_Reject, |
| 17247 | /* 43769 */ // Label 1128: @43769 |
| 17248 | /* 43769 */ GIM_Try, /*On fail goto*//*Label 1145*/ GIMT_Encode4(44036), |
| 17249 | /* 43774 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 17250 | /* 43777 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 17251 | /* 43780 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 17252 | /* 43784 */ GIM_Try, /*On fail goto*//*Label 1146*/ GIMT_Encode4(43898), // Rule ID 2652 // |
| 17253 | /* 43789 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17254 | /* 43792 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17255 | /* 43796 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17256 | /* 43800 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 17257 | /* 43804 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 17258 | /* 43808 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 17259 | /* 43812 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17260 | /* 43816 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/5, |
| 17261 | /* 43819 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17262 | /* 43823 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17263 | /* 43827 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17264 | /* 43831 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17265 | /* 43835 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17266 | /* 43839 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17267 | /* 43843 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17268 | /* 43847 */ // MIs[3] Operand 1 |
| 17269 | /* 43847 */ // No operand predicates |
| 17270 | /* 43847 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17271 | /* 43851 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17272 | /* 43855 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17273 | /* 43859 */ // MIs[4] Operand 1 |
| 17274 | /* 43859 */ // No operand predicates |
| 17275 | /* 43859 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 17276 | /* 43863 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17277 | /* 43867 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17278 | /* 43871 */ // MIs[5] Operand 1 |
| 17279 | /* 43871 */ // No operand predicates |
| 17280 | /* 43871 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 17281 | /* 43875 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17282 | /* 43879 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17283 | /* 43883 */ // MIs[6] Operand 1 |
| 17284 | /* 43883 */ // No operand predicates |
| 17285 | /* 43883 */ GIM_CheckIsSafeToFold, /*NumInsns*/6, |
| 17286 | /* 43885 */ // (srl:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, (and:{ *:[v4i32] } (build_vector:{ *:[v4i32] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>), v4i32:{ *:[v4i32] }:$wt)) => (SRL_W:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, v4i32:{ *:[v4i32] }:$wt) |
| 17287 | /* 43885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL_W), |
| 17288 | /* 43888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17289 | /* 43890 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17290 | /* 43892 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 17291 | /* 43896 */ GIR_RootConstrainSelectedInstOperands, |
| 17292 | /* 43897 */ // GIR_Coverage, 2652, |
| 17293 | /* 43897 */ GIR_EraseRootFromParent_Done, |
| 17294 | /* 43898 */ // Label 1146: @43898 |
| 17295 | /* 43898 */ GIM_Try, /*On fail goto*//*Label 1147*/ GIMT_Encode4(44012), // Rule ID 2210 // |
| 17296 | /* 43903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17297 | /* 43906 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17298 | /* 43910 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17299 | /* 43914 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 17300 | /* 43918 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 17301 | /* 43922 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 17302 | /* 43926 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17303 | /* 43930 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/5, |
| 17304 | /* 43933 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17305 | /* 43937 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17306 | /* 43941 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17307 | /* 43945 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17308 | /* 43949 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17309 | /* 43953 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17310 | /* 43957 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17311 | /* 43961 */ // MIs[3] Operand 1 |
| 17312 | /* 43961 */ // No operand predicates |
| 17313 | /* 43961 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17314 | /* 43965 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17315 | /* 43969 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17316 | /* 43973 */ // MIs[4] Operand 1 |
| 17317 | /* 43973 */ // No operand predicates |
| 17318 | /* 43973 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 17319 | /* 43977 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17320 | /* 43981 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17321 | /* 43985 */ // MIs[5] Operand 1 |
| 17322 | /* 43985 */ // No operand predicates |
| 17323 | /* 43985 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 17324 | /* 43989 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17325 | /* 43993 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17326 | /* 43997 */ // MIs[6] Operand 1 |
| 17327 | /* 43997 */ // No operand predicates |
| 17328 | /* 43997 */ GIM_CheckIsSafeToFold, /*NumInsns*/6, |
| 17329 | /* 43999 */ // (srl:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, (and:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$wt, (build_vector:{ *:[v4i32] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>))) => (SRL_W:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, v4i32:{ *:[v4i32] }:$wt) |
| 17330 | /* 43999 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL_W), |
| 17331 | /* 44002 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17332 | /* 44004 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17333 | /* 44006 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 17334 | /* 44010 */ GIR_RootConstrainSelectedInstOperands, |
| 17335 | /* 44011 */ // GIR_Coverage, 2210, |
| 17336 | /* 44011 */ GIR_EraseRootFromParent_Done, |
| 17337 | /* 44012 */ // Label 1147: @44012 |
| 17338 | /* 44012 */ GIM_Try, /*On fail goto*//*Label 1148*/ GIMT_Encode4(44035), // Rule ID 1066 // |
| 17339 | /* 44017 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 17340 | /* 44020 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 17341 | /* 44024 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 17342 | /* 44028 */ // (srl:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SRL_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 17343 | /* 44028 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRL_W), |
| 17344 | /* 44033 */ GIR_RootConstrainSelectedInstOperands, |
| 17345 | /* 44034 */ // GIR_Coverage, 1066, |
| 17346 | /* 44034 */ GIR_Done, |
| 17347 | /* 44035 */ // Label 1148: @44035 |
| 17348 | /* 44035 */ GIM_Reject, |
| 17349 | /* 44036 */ // Label 1145: @44036 |
| 17350 | /* 44036 */ GIM_Reject, |
| 17351 | /* 44037 */ // Label 1129: @44037 |
| 17352 | /* 44037 */ GIM_Try, /*On fail goto*//*Label 1149*/ GIMT_Encode4(44432), |
| 17353 | /* 44042 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 17354 | /* 44045 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 17355 | /* 44048 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 17356 | /* 44052 */ GIM_Try, /*On fail goto*//*Label 1150*/ GIMT_Encode4(44230), // Rule ID 2651 // |
| 17357 | /* 44057 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17358 | /* 44060 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17359 | /* 44064 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17360 | /* 44068 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 17361 | /* 44072 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 17362 | /* 44076 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 17363 | /* 44080 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17364 | /* 44084 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/9, |
| 17365 | /* 44087 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17366 | /* 44091 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17367 | /* 44095 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17368 | /* 44099 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17369 | /* 44103 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 17370 | /* 44107 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 17371 | /* 44111 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 17372 | /* 44115 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 17373 | /* 44119 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17374 | /* 44123 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17375 | /* 44127 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17376 | /* 44131 */ // MIs[3] Operand 1 |
| 17377 | /* 44131 */ // No operand predicates |
| 17378 | /* 44131 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17379 | /* 44135 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17380 | /* 44139 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17381 | /* 44143 */ // MIs[4] Operand 1 |
| 17382 | /* 44143 */ // No operand predicates |
| 17383 | /* 44143 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 17384 | /* 44147 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17385 | /* 44151 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17386 | /* 44155 */ // MIs[5] Operand 1 |
| 17387 | /* 44155 */ // No operand predicates |
| 17388 | /* 44155 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 17389 | /* 44159 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17390 | /* 44163 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17391 | /* 44167 */ // MIs[6] Operand 1 |
| 17392 | /* 44167 */ // No operand predicates |
| 17393 | /* 44167 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 17394 | /* 44171 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17395 | /* 44175 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17396 | /* 44179 */ // MIs[7] Operand 1 |
| 17397 | /* 44179 */ // No operand predicates |
| 17398 | /* 44179 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 17399 | /* 44183 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17400 | /* 44187 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17401 | /* 44191 */ // MIs[8] Operand 1 |
| 17402 | /* 44191 */ // No operand predicates |
| 17403 | /* 44191 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 17404 | /* 44195 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17405 | /* 44199 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17406 | /* 44203 */ // MIs[9] Operand 1 |
| 17407 | /* 44203 */ // No operand predicates |
| 17408 | /* 44203 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 17409 | /* 44207 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17410 | /* 44211 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17411 | /* 44215 */ // MIs[10] Operand 1 |
| 17412 | /* 44215 */ // No operand predicates |
| 17413 | /* 44215 */ GIM_CheckIsSafeToFold, /*NumInsns*/10, |
| 17414 | /* 44217 */ // (srl:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, (and:{ *:[v8i16] } (build_vector:{ *:[v8i16] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>), v8i16:{ *:[v8i16] }:$wt)) => (SRL_H:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, v8i16:{ *:[v8i16] }:$wt) |
| 17415 | /* 44217 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL_H), |
| 17416 | /* 44220 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17417 | /* 44222 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17418 | /* 44224 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 17419 | /* 44228 */ GIR_RootConstrainSelectedInstOperands, |
| 17420 | /* 44229 */ // GIR_Coverage, 2651, |
| 17421 | /* 44229 */ GIR_EraseRootFromParent_Done, |
| 17422 | /* 44230 */ // Label 1150: @44230 |
| 17423 | /* 44230 */ GIM_Try, /*On fail goto*//*Label 1151*/ GIMT_Encode4(44408), // Rule ID 2209 // |
| 17424 | /* 44235 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17425 | /* 44238 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17426 | /* 44242 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17427 | /* 44246 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 17428 | /* 44250 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 17429 | /* 44254 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 17430 | /* 44258 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17431 | /* 44262 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/9, |
| 17432 | /* 44265 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17433 | /* 44269 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17434 | /* 44273 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17435 | /* 44277 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17436 | /* 44281 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 17437 | /* 44285 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 17438 | /* 44289 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 17439 | /* 44293 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 17440 | /* 44297 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17441 | /* 44301 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17442 | /* 44305 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17443 | /* 44309 */ // MIs[3] Operand 1 |
| 17444 | /* 44309 */ // No operand predicates |
| 17445 | /* 44309 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17446 | /* 44313 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17447 | /* 44317 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17448 | /* 44321 */ // MIs[4] Operand 1 |
| 17449 | /* 44321 */ // No operand predicates |
| 17450 | /* 44321 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 17451 | /* 44325 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17452 | /* 44329 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17453 | /* 44333 */ // MIs[5] Operand 1 |
| 17454 | /* 44333 */ // No operand predicates |
| 17455 | /* 44333 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 17456 | /* 44337 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17457 | /* 44341 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17458 | /* 44345 */ // MIs[6] Operand 1 |
| 17459 | /* 44345 */ // No operand predicates |
| 17460 | /* 44345 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 17461 | /* 44349 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17462 | /* 44353 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17463 | /* 44357 */ // MIs[7] Operand 1 |
| 17464 | /* 44357 */ // No operand predicates |
| 17465 | /* 44357 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 17466 | /* 44361 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17467 | /* 44365 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17468 | /* 44369 */ // MIs[8] Operand 1 |
| 17469 | /* 44369 */ // No operand predicates |
| 17470 | /* 44369 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 17471 | /* 44373 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17472 | /* 44377 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17473 | /* 44381 */ // MIs[9] Operand 1 |
| 17474 | /* 44381 */ // No operand predicates |
| 17475 | /* 44381 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 17476 | /* 44385 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17477 | /* 44389 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 17478 | /* 44393 */ // MIs[10] Operand 1 |
| 17479 | /* 44393 */ // No operand predicates |
| 17480 | /* 44393 */ GIM_CheckIsSafeToFold, /*NumInsns*/10, |
| 17481 | /* 44395 */ // (srl:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, (and:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$wt, (build_vector:{ *:[v8i16] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>))) => (SRL_H:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, v8i16:{ *:[v8i16] }:$wt) |
| 17482 | /* 44395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL_H), |
| 17483 | /* 44398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17484 | /* 44400 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17485 | /* 44402 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 17486 | /* 44406 */ GIR_RootConstrainSelectedInstOperands, |
| 17487 | /* 44407 */ // GIR_Coverage, 2209, |
| 17488 | /* 44407 */ GIR_EraseRootFromParent_Done, |
| 17489 | /* 44408 */ // Label 1151: @44408 |
| 17490 | /* 44408 */ GIM_Try, /*On fail goto*//*Label 1152*/ GIMT_Encode4(44431), // Rule ID 1065 // |
| 17491 | /* 44413 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 17492 | /* 44416 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 17493 | /* 44420 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 17494 | /* 44424 */ // (srl:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SRL_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 17495 | /* 44424 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRL_H), |
| 17496 | /* 44429 */ GIR_RootConstrainSelectedInstOperands, |
| 17497 | /* 44430 */ // GIR_Coverage, 1065, |
| 17498 | /* 44430 */ GIR_Done, |
| 17499 | /* 44431 */ // Label 1152: @44431 |
| 17500 | /* 44431 */ GIM_Reject, |
| 17501 | /* 44432 */ // Label 1149: @44432 |
| 17502 | /* 44432 */ GIM_Reject, |
| 17503 | /* 44433 */ // Label 1130: @44433 |
| 17504 | /* 44433 */ GIM_Try, /*On fail goto*//*Label 1153*/ GIMT_Encode4(45084), |
| 17505 | /* 44438 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 17506 | /* 44441 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 17507 | /* 44444 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 17508 | /* 44448 */ GIM_Try, /*On fail goto*//*Label 1154*/ GIMT_Encode4(44754), // Rule ID 2650 // |
| 17509 | /* 44453 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17510 | /* 44456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17511 | /* 44460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17512 | /* 44464 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 17513 | /* 44468 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 17514 | /* 44472 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 17515 | /* 44476 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17516 | /* 44480 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/17, |
| 17517 | /* 44483 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17518 | /* 44487 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17519 | /* 44491 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17520 | /* 44495 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17521 | /* 44499 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 17522 | /* 44503 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 17523 | /* 44507 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 17524 | /* 44511 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 17525 | /* 44515 */ GIM_CheckType, /*MI*/2, /*Op*/9, /*Type*/GILLT_s32, |
| 17526 | /* 44519 */ GIM_CheckType, /*MI*/2, /*Op*/10, /*Type*/GILLT_s32, |
| 17527 | /* 44523 */ GIM_CheckType, /*MI*/2, /*Op*/11, /*Type*/GILLT_s32, |
| 17528 | /* 44527 */ GIM_CheckType, /*MI*/2, /*Op*/12, /*Type*/GILLT_s32, |
| 17529 | /* 44531 */ GIM_CheckType, /*MI*/2, /*Op*/13, /*Type*/GILLT_s32, |
| 17530 | /* 44535 */ GIM_CheckType, /*MI*/2, /*Op*/14, /*Type*/GILLT_s32, |
| 17531 | /* 44539 */ GIM_CheckType, /*MI*/2, /*Op*/15, /*Type*/GILLT_s32, |
| 17532 | /* 44543 */ GIM_CheckType, /*MI*/2, /*Op*/16, /*Type*/GILLT_s32, |
| 17533 | /* 44547 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17534 | /* 44551 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17535 | /* 44555 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17536 | /* 44559 */ // MIs[3] Operand 1 |
| 17537 | /* 44559 */ // No operand predicates |
| 17538 | /* 44559 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17539 | /* 44563 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17540 | /* 44567 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17541 | /* 44571 */ // MIs[4] Operand 1 |
| 17542 | /* 44571 */ // No operand predicates |
| 17543 | /* 44571 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 17544 | /* 44575 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17545 | /* 44579 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17546 | /* 44583 */ // MIs[5] Operand 1 |
| 17547 | /* 44583 */ // No operand predicates |
| 17548 | /* 44583 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 17549 | /* 44587 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17550 | /* 44591 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17551 | /* 44595 */ // MIs[6] Operand 1 |
| 17552 | /* 44595 */ // No operand predicates |
| 17553 | /* 44595 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 17554 | /* 44599 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17555 | /* 44603 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17556 | /* 44607 */ // MIs[7] Operand 1 |
| 17557 | /* 44607 */ // No operand predicates |
| 17558 | /* 44607 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 17559 | /* 44611 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17560 | /* 44615 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17561 | /* 44619 */ // MIs[8] Operand 1 |
| 17562 | /* 44619 */ // No operand predicates |
| 17563 | /* 44619 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 17564 | /* 44623 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17565 | /* 44627 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17566 | /* 44631 */ // MIs[9] Operand 1 |
| 17567 | /* 44631 */ // No operand predicates |
| 17568 | /* 44631 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 17569 | /* 44635 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17570 | /* 44639 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17571 | /* 44643 */ // MIs[10] Operand 1 |
| 17572 | /* 44643 */ // No operand predicates |
| 17573 | /* 44643 */ GIM_RecordInsn, /*DefineMI*/11, /*MI*/2, /*OpIdx*/9, // MIs[11] |
| 17574 | /* 44647 */ GIM_CheckOpcode, /*MI*/11, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17575 | /* 44651 */ GIM_CheckI64ImmPredicate, /*MI*/11, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17576 | /* 44655 */ // MIs[11] Operand 1 |
| 17577 | /* 44655 */ // No operand predicates |
| 17578 | /* 44655 */ GIM_RecordInsn, /*DefineMI*/12, /*MI*/2, /*OpIdx*/10, // MIs[12] |
| 17579 | /* 44659 */ GIM_CheckOpcode, /*MI*/12, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17580 | /* 44663 */ GIM_CheckI64ImmPredicate, /*MI*/12, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17581 | /* 44667 */ // MIs[12] Operand 1 |
| 17582 | /* 44667 */ // No operand predicates |
| 17583 | /* 44667 */ GIM_RecordInsn, /*DefineMI*/13, /*MI*/2, /*OpIdx*/11, // MIs[13] |
| 17584 | /* 44671 */ GIM_CheckOpcode, /*MI*/13, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17585 | /* 44675 */ GIM_CheckI64ImmPredicate, /*MI*/13, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17586 | /* 44679 */ // MIs[13] Operand 1 |
| 17587 | /* 44679 */ // No operand predicates |
| 17588 | /* 44679 */ GIM_RecordInsn, /*DefineMI*/14, /*MI*/2, /*OpIdx*/12, // MIs[14] |
| 17589 | /* 44683 */ GIM_CheckOpcode, /*MI*/14, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17590 | /* 44687 */ GIM_CheckI64ImmPredicate, /*MI*/14, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17591 | /* 44691 */ // MIs[14] Operand 1 |
| 17592 | /* 44691 */ // No operand predicates |
| 17593 | /* 44691 */ GIM_RecordInsn, /*DefineMI*/15, /*MI*/2, /*OpIdx*/13, // MIs[15] |
| 17594 | /* 44695 */ GIM_CheckOpcode, /*MI*/15, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17595 | /* 44699 */ GIM_CheckI64ImmPredicate, /*MI*/15, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17596 | /* 44703 */ // MIs[15] Operand 1 |
| 17597 | /* 44703 */ // No operand predicates |
| 17598 | /* 44703 */ GIM_RecordInsn, /*DefineMI*/16, /*MI*/2, /*OpIdx*/14, // MIs[16] |
| 17599 | /* 44707 */ GIM_CheckOpcode, /*MI*/16, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17600 | /* 44711 */ GIM_CheckI64ImmPredicate, /*MI*/16, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17601 | /* 44715 */ // MIs[16] Operand 1 |
| 17602 | /* 44715 */ // No operand predicates |
| 17603 | /* 44715 */ GIM_RecordInsn, /*DefineMI*/17, /*MI*/2, /*OpIdx*/15, // MIs[17] |
| 17604 | /* 44719 */ GIM_CheckOpcode, /*MI*/17, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17605 | /* 44723 */ GIM_CheckI64ImmPredicate, /*MI*/17, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17606 | /* 44727 */ // MIs[17] Operand 1 |
| 17607 | /* 44727 */ // No operand predicates |
| 17608 | /* 44727 */ GIM_RecordInsn, /*DefineMI*/18, /*MI*/2, /*OpIdx*/16, // MIs[18] |
| 17609 | /* 44731 */ GIM_CheckOpcode, /*MI*/18, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17610 | /* 44735 */ GIM_CheckI64ImmPredicate, /*MI*/18, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17611 | /* 44739 */ // MIs[18] Operand 1 |
| 17612 | /* 44739 */ // No operand predicates |
| 17613 | /* 44739 */ GIM_CheckIsSafeToFold, /*NumInsns*/18, |
| 17614 | /* 44741 */ // (srl:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, (and:{ *:[v16i8] } (build_vector:{ *:[v16i8] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>), v16i8:{ *:[v16i8] }:$wt)) => (SRL_B:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, v16i8:{ *:[v16i8] }:$wt) |
| 17615 | /* 44741 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL_B), |
| 17616 | /* 44744 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17617 | /* 44746 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17618 | /* 44748 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 17619 | /* 44752 */ GIR_RootConstrainSelectedInstOperands, |
| 17620 | /* 44753 */ // GIR_Coverage, 2650, |
| 17621 | /* 44753 */ GIR_EraseRootFromParent_Done, |
| 17622 | /* 44754 */ // Label 1154: @44754 |
| 17623 | /* 44754 */ GIM_Try, /*On fail goto*//*Label 1155*/ GIMT_Encode4(45060), // Rule ID 2208 // |
| 17624 | /* 44759 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17625 | /* 44762 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17626 | /* 44766 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17627 | /* 44770 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 17628 | /* 44774 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 17629 | /* 44778 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 17630 | /* 44782 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17631 | /* 44786 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/17, |
| 17632 | /* 44789 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17633 | /* 44793 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17634 | /* 44797 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17635 | /* 44801 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17636 | /* 44805 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 17637 | /* 44809 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 17638 | /* 44813 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 17639 | /* 44817 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 17640 | /* 44821 */ GIM_CheckType, /*MI*/2, /*Op*/9, /*Type*/GILLT_s32, |
| 17641 | /* 44825 */ GIM_CheckType, /*MI*/2, /*Op*/10, /*Type*/GILLT_s32, |
| 17642 | /* 44829 */ GIM_CheckType, /*MI*/2, /*Op*/11, /*Type*/GILLT_s32, |
| 17643 | /* 44833 */ GIM_CheckType, /*MI*/2, /*Op*/12, /*Type*/GILLT_s32, |
| 17644 | /* 44837 */ GIM_CheckType, /*MI*/2, /*Op*/13, /*Type*/GILLT_s32, |
| 17645 | /* 44841 */ GIM_CheckType, /*MI*/2, /*Op*/14, /*Type*/GILLT_s32, |
| 17646 | /* 44845 */ GIM_CheckType, /*MI*/2, /*Op*/15, /*Type*/GILLT_s32, |
| 17647 | /* 44849 */ GIM_CheckType, /*MI*/2, /*Op*/16, /*Type*/GILLT_s32, |
| 17648 | /* 44853 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17649 | /* 44857 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17650 | /* 44861 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17651 | /* 44865 */ // MIs[3] Operand 1 |
| 17652 | /* 44865 */ // No operand predicates |
| 17653 | /* 44865 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17654 | /* 44869 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17655 | /* 44873 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17656 | /* 44877 */ // MIs[4] Operand 1 |
| 17657 | /* 44877 */ // No operand predicates |
| 17658 | /* 44877 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 17659 | /* 44881 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17660 | /* 44885 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17661 | /* 44889 */ // MIs[5] Operand 1 |
| 17662 | /* 44889 */ // No operand predicates |
| 17663 | /* 44889 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 17664 | /* 44893 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17665 | /* 44897 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17666 | /* 44901 */ // MIs[6] Operand 1 |
| 17667 | /* 44901 */ // No operand predicates |
| 17668 | /* 44901 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 17669 | /* 44905 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17670 | /* 44909 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17671 | /* 44913 */ // MIs[7] Operand 1 |
| 17672 | /* 44913 */ // No operand predicates |
| 17673 | /* 44913 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 17674 | /* 44917 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17675 | /* 44921 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17676 | /* 44925 */ // MIs[8] Operand 1 |
| 17677 | /* 44925 */ // No operand predicates |
| 17678 | /* 44925 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 17679 | /* 44929 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17680 | /* 44933 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17681 | /* 44937 */ // MIs[9] Operand 1 |
| 17682 | /* 44937 */ // No operand predicates |
| 17683 | /* 44937 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 17684 | /* 44941 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17685 | /* 44945 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17686 | /* 44949 */ // MIs[10] Operand 1 |
| 17687 | /* 44949 */ // No operand predicates |
| 17688 | /* 44949 */ GIM_RecordInsn, /*DefineMI*/11, /*MI*/2, /*OpIdx*/9, // MIs[11] |
| 17689 | /* 44953 */ GIM_CheckOpcode, /*MI*/11, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17690 | /* 44957 */ GIM_CheckI64ImmPredicate, /*MI*/11, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17691 | /* 44961 */ // MIs[11] Operand 1 |
| 17692 | /* 44961 */ // No operand predicates |
| 17693 | /* 44961 */ GIM_RecordInsn, /*DefineMI*/12, /*MI*/2, /*OpIdx*/10, // MIs[12] |
| 17694 | /* 44965 */ GIM_CheckOpcode, /*MI*/12, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17695 | /* 44969 */ GIM_CheckI64ImmPredicate, /*MI*/12, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17696 | /* 44973 */ // MIs[12] Operand 1 |
| 17697 | /* 44973 */ // No operand predicates |
| 17698 | /* 44973 */ GIM_RecordInsn, /*DefineMI*/13, /*MI*/2, /*OpIdx*/11, // MIs[13] |
| 17699 | /* 44977 */ GIM_CheckOpcode, /*MI*/13, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17700 | /* 44981 */ GIM_CheckI64ImmPredicate, /*MI*/13, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17701 | /* 44985 */ // MIs[13] Operand 1 |
| 17702 | /* 44985 */ // No operand predicates |
| 17703 | /* 44985 */ GIM_RecordInsn, /*DefineMI*/14, /*MI*/2, /*OpIdx*/12, // MIs[14] |
| 17704 | /* 44989 */ GIM_CheckOpcode, /*MI*/14, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17705 | /* 44993 */ GIM_CheckI64ImmPredicate, /*MI*/14, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17706 | /* 44997 */ // MIs[14] Operand 1 |
| 17707 | /* 44997 */ // No operand predicates |
| 17708 | /* 44997 */ GIM_RecordInsn, /*DefineMI*/15, /*MI*/2, /*OpIdx*/13, // MIs[15] |
| 17709 | /* 45001 */ GIM_CheckOpcode, /*MI*/15, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17710 | /* 45005 */ GIM_CheckI64ImmPredicate, /*MI*/15, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17711 | /* 45009 */ // MIs[15] Operand 1 |
| 17712 | /* 45009 */ // No operand predicates |
| 17713 | /* 45009 */ GIM_RecordInsn, /*DefineMI*/16, /*MI*/2, /*OpIdx*/14, // MIs[16] |
| 17714 | /* 45013 */ GIM_CheckOpcode, /*MI*/16, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17715 | /* 45017 */ GIM_CheckI64ImmPredicate, /*MI*/16, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17716 | /* 45021 */ // MIs[16] Operand 1 |
| 17717 | /* 45021 */ // No operand predicates |
| 17718 | /* 45021 */ GIM_RecordInsn, /*DefineMI*/17, /*MI*/2, /*OpIdx*/15, // MIs[17] |
| 17719 | /* 45025 */ GIM_CheckOpcode, /*MI*/17, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17720 | /* 45029 */ GIM_CheckI64ImmPredicate, /*MI*/17, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17721 | /* 45033 */ // MIs[17] Operand 1 |
| 17722 | /* 45033 */ // No operand predicates |
| 17723 | /* 45033 */ GIM_RecordInsn, /*DefineMI*/18, /*MI*/2, /*OpIdx*/16, // MIs[18] |
| 17724 | /* 45037 */ GIM_CheckOpcode, /*MI*/18, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17725 | /* 45041 */ GIM_CheckI64ImmPredicate, /*MI*/18, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 17726 | /* 45045 */ // MIs[18] Operand 1 |
| 17727 | /* 45045 */ // No operand predicates |
| 17728 | /* 45045 */ GIM_CheckIsSafeToFold, /*NumInsns*/18, |
| 17729 | /* 45047 */ // (srl:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, (and:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$wt, (build_vector:{ *:[v16i8] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>))) => (SRL_B:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, v16i8:{ *:[v16i8] }:$wt) |
| 17730 | /* 45047 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRL_B), |
| 17731 | /* 45050 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17732 | /* 45052 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17733 | /* 45054 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 17734 | /* 45058 */ GIR_RootConstrainSelectedInstOperands, |
| 17735 | /* 45059 */ // GIR_Coverage, 2208, |
| 17736 | /* 45059 */ GIR_EraseRootFromParent_Done, |
| 17737 | /* 45060 */ // Label 1155: @45060 |
| 17738 | /* 45060 */ GIM_Try, /*On fail goto*//*Label 1156*/ GIMT_Encode4(45083), // Rule ID 1064 // |
| 17739 | /* 45065 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 17740 | /* 45068 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 17741 | /* 45072 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 17742 | /* 45076 */ // (srl:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SRL_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 17743 | /* 45076 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRL_B), |
| 17744 | /* 45081 */ GIR_RootConstrainSelectedInstOperands, |
| 17745 | /* 45082 */ // GIR_Coverage, 1064, |
| 17746 | /* 45082 */ GIR_Done, |
| 17747 | /* 45083 */ // Label 1156: @45083 |
| 17748 | /* 45083 */ GIM_Reject, |
| 17749 | /* 45084 */ // Label 1153: @45084 |
| 17750 | /* 45084 */ GIM_Reject, |
| 17751 | /* 45085 */ // Label 1131: @45085 |
| 17752 | /* 45085 */ GIM_Reject, |
| 17753 | /* 45086 */ // Label 39: @45086 |
| 17754 | /* 45086 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 1163*/ GIMT_Encode4(46840), |
| 17755 | /* 45097 */ /*GILLT_s32*//*Label 1157*/ GIMT_Encode4(45129), |
| 17756 | /* 45101 */ /*GILLT_s64*//*Label 1158*/ GIMT_Encode4(45349), GIMT_Encode4(0), |
| 17757 | /* 45109 */ /*GILLT_v2s64*//*Label 1159*/ GIMT_Encode4(45490), GIMT_Encode4(0), |
| 17758 | /* 45117 */ /*GILLT_v4s32*//*Label 1160*/ GIMT_Encode4(45524), |
| 17759 | /* 45121 */ /*GILLT_v8s16*//*Label 1161*/ GIMT_Encode4(45792), |
| 17760 | /* 45125 */ /*GILLT_v16s8*//*Label 1162*/ GIMT_Encode4(46188), |
| 17761 | /* 45129 */ // Label 1157: @45129 |
| 17762 | /* 45129 */ GIM_Try, /*On fail goto*//*Label 1164*/ GIMT_Encode4(45348), |
| 17763 | /* 45134 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 17764 | /* 45137 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 17765 | /* 45140 */ GIM_Try, /*On fail goto*//*Label 1165*/ GIMT_Encode4(45182), // Rule ID 59 // |
| 17766 | /* 45145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 17767 | /* 45148 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17768 | /* 45152 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17769 | /* 45156 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17770 | /* 45160 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17771 | /* 45164 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 17772 | /* 45168 */ // MIs[1] Operand 1 |
| 17773 | /* 45168 */ // No operand predicates |
| 17774 | /* 45168 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17775 | /* 45170 */ // (sra:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$shamt) => (SRA:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 17776 | /* 45170 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA), |
| 17777 | /* 45173 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17778 | /* 45175 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 17779 | /* 45177 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 17780 | /* 45180 */ GIR_RootConstrainSelectedInstOperands, |
| 17781 | /* 45181 */ // GIR_Coverage, 59, |
| 17782 | /* 45181 */ GIR_EraseRootFromParent_Done, |
| 17783 | /* 45182 */ // Label 1165: @45182 |
| 17784 | /* 45182 */ GIM_Try, /*On fail goto*//*Label 1166*/ GIMT_Encode4(45224), // Rule ID 1964 // |
| 17785 | /* 45187 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 17786 | /* 45190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17787 | /* 45194 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17788 | /* 45198 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17789 | /* 45202 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17790 | /* 45206 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 17791 | /* 45210 */ // MIs[1] Operand 1 |
| 17792 | /* 45210 */ // No operand predicates |
| 17793 | /* 45210 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17794 | /* 45212 */ // (sra:{ *:[i32] } CPU16Regs:{ *:[i32] }:$in, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) => (SraX16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$in, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) |
| 17795 | /* 45212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SraX16), |
| 17796 | /* 45215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rx] |
| 17797 | /* 45217 */ GIR_RootToRootCopy, /*OpIdx*/1, // in |
| 17798 | /* 45219 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 17799 | /* 45222 */ GIR_RootConstrainSelectedInstOperands, |
| 17800 | /* 45223 */ // GIR_Coverage, 1964, |
| 17801 | /* 45223 */ GIR_EraseRootFromParent_Done, |
| 17802 | /* 45224 */ // Label 1166: @45224 |
| 17803 | /* 45224 */ GIM_Try, /*On fail goto*//*Label 1167*/ GIMT_Encode4(45266), // Rule ID 2307 // |
| 17804 | /* 45229 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 17805 | /* 45232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17806 | /* 45236 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17807 | /* 45240 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17808 | /* 45244 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17809 | /* 45248 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 17810 | /* 45252 */ // MIs[1] Operand 1 |
| 17811 | /* 45252 */ // No operand predicates |
| 17812 | /* 45252 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17813 | /* 45254 */ // (sra:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) => (SRA_MM:{ *:[i32] } GPR32:{ *:[i32] }:$src, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$imm) |
| 17814 | /* 45254 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA_MM), |
| 17815 | /* 45257 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17816 | /* 45259 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 17817 | /* 45261 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // imm |
| 17818 | /* 45264 */ GIR_RootConstrainSelectedInstOperands, |
| 17819 | /* 45265 */ // GIR_Coverage, 2307, |
| 17820 | /* 45265 */ GIR_EraseRootFromParent_Done, |
| 17821 | /* 45266 */ // Label 1167: @45266 |
| 17822 | /* 45266 */ GIM_Try, /*On fail goto*//*Label 1168*/ GIMT_Encode4(45293), // Rule ID 65 // |
| 17823 | /* 45271 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 17824 | /* 45274 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17825 | /* 45278 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17826 | /* 45282 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17827 | /* 45286 */ // (sra:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (SRAV:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 17828 | /* 45286 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRAV), |
| 17829 | /* 45291 */ GIR_RootConstrainSelectedInstOperands, |
| 17830 | /* 45292 */ // GIR_Coverage, 65, |
| 17831 | /* 45292 */ GIR_Done, |
| 17832 | /* 45293 */ // Label 1168: @45293 |
| 17833 | /* 45293 */ GIM_Try, /*On fail goto*//*Label 1169*/ GIMT_Encode4(45320), // Rule ID 1966 // |
| 17834 | /* 45298 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 17835 | /* 45301 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17836 | /* 45305 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17837 | /* 45309 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 17838 | /* 45313 */ // (sra:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r, CPU16Regs:{ *:[i32] }:$ra) => (SravRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$r, CPU16Regs:{ *:[i32] }:$ra) |
| 17839 | /* 45313 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SravRxRy16), |
| 17840 | /* 45318 */ GIR_RootConstrainSelectedInstOperands, |
| 17841 | /* 45319 */ // GIR_Coverage, 1966, |
| 17842 | /* 45319 */ GIR_Done, |
| 17843 | /* 45320 */ // Label 1169: @45320 |
| 17844 | /* 45320 */ GIM_Try, /*On fail goto*//*Label 1170*/ GIMT_Encode4(45347), // Rule ID 2308 // |
| 17845 | /* 45325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 17846 | /* 45328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17847 | /* 45332 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17848 | /* 45336 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17849 | /* 45340 */ // (sra:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs) => (SRAV_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs) |
| 17850 | /* 45340 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRAV_MM), |
| 17851 | /* 45345 */ GIR_RootConstrainSelectedInstOperands, |
| 17852 | /* 45346 */ // GIR_Coverage, 2308, |
| 17853 | /* 45346 */ GIR_Done, |
| 17854 | /* 45347 */ // Label 1170: @45347 |
| 17855 | /* 45347 */ GIM_Reject, |
| 17856 | /* 45348 */ // Label 1164: @45348 |
| 17857 | /* 45348 */ GIM_Reject, |
| 17858 | /* 45349 */ // Label 1158: @45349 |
| 17859 | /* 45349 */ GIM_Try, /*On fail goto*//*Label 1171*/ GIMT_Encode4(45489), |
| 17860 | /* 45354 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 17861 | /* 45357 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 17862 | /* 45360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 17863 | /* 45364 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 17864 | /* 45368 */ GIM_Try, /*On fail goto*//*Label 1172*/ GIMT_Encode4(45402), // Rule ID 289 // |
| 17865 | /* 45373 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 17866 | /* 45376 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17867 | /* 45380 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17868 | /* 45384 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt6), |
| 17869 | /* 45388 */ // MIs[1] Operand 1 |
| 17870 | /* 45388 */ // No operand predicates |
| 17871 | /* 45388 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17872 | /* 45390 */ // (sra:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt6>>:$shamt) => (DSRA:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 17873 | /* 45390 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSRA), |
| 17874 | /* 45393 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17875 | /* 45395 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 17876 | /* 45397 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 17877 | /* 45400 */ GIR_RootConstrainSelectedInstOperands, |
| 17878 | /* 45401 */ // GIR_Coverage, 289, |
| 17879 | /* 45401 */ GIR_EraseRootFromParent_Done, |
| 17880 | /* 45402 */ // Label 1172: @45402 |
| 17881 | /* 45402 */ GIM_Try, /*On fail goto*//*Label 1173*/ GIMT_Encode4(45469), // Rule ID 1681 // |
| 17882 | /* 45407 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 17883 | /* 45410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17884 | /* 45414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_TRUNC), |
| 17885 | /* 45418 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 17886 | /* 45422 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 17887 | /* 45427 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 17888 | /* 45429 */ // (sra:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (trunc:{ *:[i32] } GPR64:{ *:[i64] }:$rs)) => (DSRAV:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (EXTRACT_SUBREG:{ *:[i32] } GPR64:{ *:[i64] }:$rs, sub_32:{ *:[i32] })) |
| 17889 | /* 45429 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 17890 | /* 45432 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 17891 | /* 45436 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 17892 | /* 45441 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // rs |
| 17893 | /* 45447 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 17894 | /* 45452 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 17895 | /* 45457 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSRAV), |
| 17896 | /* 45460 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 17897 | /* 45462 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 17898 | /* 45464 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 17899 | /* 45467 */ GIR_RootConstrainSelectedInstOperands, |
| 17900 | /* 45468 */ // GIR_Coverage, 1681, |
| 17901 | /* 45468 */ GIR_EraseRootFromParent_Done, |
| 17902 | /* 45469 */ // Label 1173: @45469 |
| 17903 | /* 45469 */ GIM_Try, /*On fail goto*//*Label 1174*/ GIMT_Encode4(45488), // Rule ID 293 // |
| 17904 | /* 45474 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_NotInMicroMips), |
| 17905 | /* 45477 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 17906 | /* 45481 */ // (sra:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (DSRAV:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 17907 | /* 45481 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DSRAV), |
| 17908 | /* 45486 */ GIR_RootConstrainSelectedInstOperands, |
| 17909 | /* 45487 */ // GIR_Coverage, 293, |
| 17910 | /* 45487 */ GIR_Done, |
| 17911 | /* 45488 */ // Label 1174: @45488 |
| 17912 | /* 45488 */ GIM_Reject, |
| 17913 | /* 45489 */ // Label 1171: @45489 |
| 17914 | /* 45489 */ GIM_Reject, |
| 17915 | /* 45490 */ // Label 1159: @45490 |
| 17916 | /* 45490 */ GIM_Try, /*On fail goto*//*Label 1175*/ GIMT_Encode4(45523), // Rule ID 1051 // |
| 17917 | /* 45495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 17918 | /* 45498 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 17919 | /* 45501 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 17920 | /* 45504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 17921 | /* 45508 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 17922 | /* 45512 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 17923 | /* 45516 */ // (sra:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (SRA_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 17924 | /* 45516 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRA_D), |
| 17925 | /* 45521 */ GIR_RootConstrainSelectedInstOperands, |
| 17926 | /* 45522 */ // GIR_Coverage, 1051, |
| 17927 | /* 45522 */ GIR_Done, |
| 17928 | /* 45523 */ // Label 1175: @45523 |
| 17929 | /* 45523 */ GIM_Reject, |
| 17930 | /* 45524 */ // Label 1160: @45524 |
| 17931 | /* 45524 */ GIM_Try, /*On fail goto*//*Label 1176*/ GIMT_Encode4(45791), |
| 17932 | /* 45529 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 17933 | /* 45532 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 17934 | /* 45535 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 17935 | /* 45539 */ GIM_Try, /*On fail goto*//*Label 1177*/ GIMT_Encode4(45653), // Rule ID 2656 // |
| 17936 | /* 45544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17937 | /* 45547 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17938 | /* 45551 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17939 | /* 45555 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 17940 | /* 45559 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 17941 | /* 45563 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 17942 | /* 45567 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17943 | /* 45571 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/5, |
| 17944 | /* 45574 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17945 | /* 45578 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17946 | /* 45582 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17947 | /* 45586 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17948 | /* 45590 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17949 | /* 45594 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17950 | /* 45598 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17951 | /* 45602 */ // MIs[3] Operand 1 |
| 17952 | /* 45602 */ // No operand predicates |
| 17953 | /* 45602 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17954 | /* 45606 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17955 | /* 45610 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17956 | /* 45614 */ // MIs[4] Operand 1 |
| 17957 | /* 45614 */ // No operand predicates |
| 17958 | /* 45614 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 17959 | /* 45618 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17960 | /* 45622 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17961 | /* 45626 */ // MIs[5] Operand 1 |
| 17962 | /* 45626 */ // No operand predicates |
| 17963 | /* 45626 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 17964 | /* 45630 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17965 | /* 45634 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17966 | /* 45638 */ // MIs[6] Operand 1 |
| 17967 | /* 45638 */ // No operand predicates |
| 17968 | /* 45638 */ GIM_CheckIsSafeToFold, /*NumInsns*/6, |
| 17969 | /* 45640 */ // (sra:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, (and:{ *:[v4i32] } (build_vector:{ *:[v4i32] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>), v4i32:{ *:[v4i32] }:$wt)) => (SRA_W:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, v4i32:{ *:[v4i32] }:$wt) |
| 17970 | /* 45640 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA_W), |
| 17971 | /* 45643 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 17972 | /* 45645 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 17973 | /* 45647 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 17974 | /* 45651 */ GIR_RootConstrainSelectedInstOperands, |
| 17975 | /* 45652 */ // GIR_Coverage, 2656, |
| 17976 | /* 45652 */ GIR_EraseRootFromParent_Done, |
| 17977 | /* 45653 */ // Label 1177: @45653 |
| 17978 | /* 45653 */ GIM_Try, /*On fail goto*//*Label 1178*/ GIMT_Encode4(45767), // Rule ID 2214 // |
| 17979 | /* 45658 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 17980 | /* 45661 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 17981 | /* 45665 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 17982 | /* 45669 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 17983 | /* 45673 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 17984 | /* 45677 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 17985 | /* 45681 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 17986 | /* 45685 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/5, |
| 17987 | /* 45688 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 17988 | /* 45692 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 17989 | /* 45696 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 17990 | /* 45700 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 17991 | /* 45704 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 17992 | /* 45708 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17993 | /* 45712 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17994 | /* 45716 */ // MIs[3] Operand 1 |
| 17995 | /* 45716 */ // No operand predicates |
| 17996 | /* 45716 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 17997 | /* 45720 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 17998 | /* 45724 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 17999 | /* 45728 */ // MIs[4] Operand 1 |
| 18000 | /* 45728 */ // No operand predicates |
| 18001 | /* 45728 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 18002 | /* 45732 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18003 | /* 45736 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 18004 | /* 45740 */ // MIs[5] Operand 1 |
| 18005 | /* 45740 */ // No operand predicates |
| 18006 | /* 45740 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 18007 | /* 45744 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18008 | /* 45748 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst31), |
| 18009 | /* 45752 */ // MIs[6] Operand 1 |
| 18010 | /* 45752 */ // No operand predicates |
| 18011 | /* 45752 */ GIM_CheckIsSafeToFold, /*NumInsns*/6, |
| 18012 | /* 45754 */ // (sra:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, (and:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$wt, (build_vector:{ *:[v4i32] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst31>>))) => (SRA_W:{ *:[v4i32] } v4i32:{ *:[v4i32] }:$ws, v4i32:{ *:[v4i32] }:$wt) |
| 18013 | /* 45754 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA_W), |
| 18014 | /* 45757 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 18015 | /* 45759 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 18016 | /* 45761 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 18017 | /* 45765 */ GIR_RootConstrainSelectedInstOperands, |
| 18018 | /* 45766 */ // GIR_Coverage, 2214, |
| 18019 | /* 45766 */ GIR_EraseRootFromParent_Done, |
| 18020 | /* 45767 */ // Label 1178: @45767 |
| 18021 | /* 45767 */ GIM_Try, /*On fail goto*//*Label 1179*/ GIMT_Encode4(45790), // Rule ID 1050 // |
| 18022 | /* 45772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 18023 | /* 45775 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 18024 | /* 45779 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 18025 | /* 45783 */ // (sra:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (SRA_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 18026 | /* 45783 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRA_W), |
| 18027 | /* 45788 */ GIR_RootConstrainSelectedInstOperands, |
| 18028 | /* 45789 */ // GIR_Coverage, 1050, |
| 18029 | /* 45789 */ GIR_Done, |
| 18030 | /* 45790 */ // Label 1179: @45790 |
| 18031 | /* 45790 */ GIM_Reject, |
| 18032 | /* 45791 */ // Label 1176: @45791 |
| 18033 | /* 45791 */ GIM_Reject, |
| 18034 | /* 45792 */ // Label 1161: @45792 |
| 18035 | /* 45792 */ GIM_Try, /*On fail goto*//*Label 1180*/ GIMT_Encode4(46187), |
| 18036 | /* 45797 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18037 | /* 45800 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 18038 | /* 45803 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 18039 | /* 45807 */ GIM_Try, /*On fail goto*//*Label 1181*/ GIMT_Encode4(45985), // Rule ID 2655 // |
| 18040 | /* 45812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 18041 | /* 45815 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18042 | /* 45819 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 18043 | /* 45823 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18044 | /* 45827 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 18045 | /* 45831 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 18046 | /* 45835 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 18047 | /* 45839 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/9, |
| 18048 | /* 45842 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 18049 | /* 45846 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 18050 | /* 45850 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 18051 | /* 45854 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 18052 | /* 45858 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 18053 | /* 45862 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 18054 | /* 45866 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 18055 | /* 45870 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 18056 | /* 45874 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 18057 | /* 45878 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18058 | /* 45882 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18059 | /* 45886 */ // MIs[3] Operand 1 |
| 18060 | /* 45886 */ // No operand predicates |
| 18061 | /* 45886 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 18062 | /* 45890 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18063 | /* 45894 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18064 | /* 45898 */ // MIs[4] Operand 1 |
| 18065 | /* 45898 */ // No operand predicates |
| 18066 | /* 45898 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 18067 | /* 45902 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18068 | /* 45906 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18069 | /* 45910 */ // MIs[5] Operand 1 |
| 18070 | /* 45910 */ // No operand predicates |
| 18071 | /* 45910 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 18072 | /* 45914 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18073 | /* 45918 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18074 | /* 45922 */ // MIs[6] Operand 1 |
| 18075 | /* 45922 */ // No operand predicates |
| 18076 | /* 45922 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 18077 | /* 45926 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18078 | /* 45930 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18079 | /* 45934 */ // MIs[7] Operand 1 |
| 18080 | /* 45934 */ // No operand predicates |
| 18081 | /* 45934 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 18082 | /* 45938 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18083 | /* 45942 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18084 | /* 45946 */ // MIs[8] Operand 1 |
| 18085 | /* 45946 */ // No operand predicates |
| 18086 | /* 45946 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 18087 | /* 45950 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18088 | /* 45954 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18089 | /* 45958 */ // MIs[9] Operand 1 |
| 18090 | /* 45958 */ // No operand predicates |
| 18091 | /* 45958 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 18092 | /* 45962 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18093 | /* 45966 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18094 | /* 45970 */ // MIs[10] Operand 1 |
| 18095 | /* 45970 */ // No operand predicates |
| 18096 | /* 45970 */ GIM_CheckIsSafeToFold, /*NumInsns*/10, |
| 18097 | /* 45972 */ // (sra:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, (and:{ *:[v8i16] } (build_vector:{ *:[v8i16] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>), v8i16:{ *:[v8i16] }:$wt)) => (SRA_H:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, v8i16:{ *:[v8i16] }:$wt) |
| 18098 | /* 45972 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA_H), |
| 18099 | /* 45975 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 18100 | /* 45977 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 18101 | /* 45979 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 18102 | /* 45983 */ GIR_RootConstrainSelectedInstOperands, |
| 18103 | /* 45984 */ // GIR_Coverage, 2655, |
| 18104 | /* 45984 */ GIR_EraseRootFromParent_Done, |
| 18105 | /* 45985 */ // Label 1181: @45985 |
| 18106 | /* 45985 */ GIM_Try, /*On fail goto*//*Label 1182*/ GIMT_Encode4(46163), // Rule ID 2213 // |
| 18107 | /* 45990 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 18108 | /* 45993 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18109 | /* 45997 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 18110 | /* 46001 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v8s16, |
| 18111 | /* 46005 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v8s16, |
| 18112 | /* 46009 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 18113 | /* 46013 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 18114 | /* 46017 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/9, |
| 18115 | /* 46020 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 18116 | /* 46024 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 18117 | /* 46028 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 18118 | /* 46032 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 18119 | /* 46036 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 18120 | /* 46040 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 18121 | /* 46044 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 18122 | /* 46048 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 18123 | /* 46052 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 18124 | /* 46056 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18125 | /* 46060 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18126 | /* 46064 */ // MIs[3] Operand 1 |
| 18127 | /* 46064 */ // No operand predicates |
| 18128 | /* 46064 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 18129 | /* 46068 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18130 | /* 46072 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18131 | /* 46076 */ // MIs[4] Operand 1 |
| 18132 | /* 46076 */ // No operand predicates |
| 18133 | /* 46076 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 18134 | /* 46080 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18135 | /* 46084 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18136 | /* 46088 */ // MIs[5] Operand 1 |
| 18137 | /* 46088 */ // No operand predicates |
| 18138 | /* 46088 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 18139 | /* 46092 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18140 | /* 46096 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18141 | /* 46100 */ // MIs[6] Operand 1 |
| 18142 | /* 46100 */ // No operand predicates |
| 18143 | /* 46100 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 18144 | /* 46104 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18145 | /* 46108 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18146 | /* 46112 */ // MIs[7] Operand 1 |
| 18147 | /* 46112 */ // No operand predicates |
| 18148 | /* 46112 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 18149 | /* 46116 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18150 | /* 46120 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18151 | /* 46124 */ // MIs[8] Operand 1 |
| 18152 | /* 46124 */ // No operand predicates |
| 18153 | /* 46124 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 18154 | /* 46128 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18155 | /* 46132 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18156 | /* 46136 */ // MIs[9] Operand 1 |
| 18157 | /* 46136 */ // No operand predicates |
| 18158 | /* 46136 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 18159 | /* 46140 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18160 | /* 46144 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst15), |
| 18161 | /* 46148 */ // MIs[10] Operand 1 |
| 18162 | /* 46148 */ // No operand predicates |
| 18163 | /* 46148 */ GIM_CheckIsSafeToFold, /*NumInsns*/10, |
| 18164 | /* 46150 */ // (sra:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, (and:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$wt, (build_vector:{ *:[v8i16] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst15>>))) => (SRA_H:{ *:[v8i16] } v8i16:{ *:[v8i16] }:$ws, v8i16:{ *:[v8i16] }:$wt) |
| 18165 | /* 46150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA_H), |
| 18166 | /* 46153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 18167 | /* 46155 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 18168 | /* 46157 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 18169 | /* 46161 */ GIR_RootConstrainSelectedInstOperands, |
| 18170 | /* 46162 */ // GIR_Coverage, 2213, |
| 18171 | /* 46162 */ GIR_EraseRootFromParent_Done, |
| 18172 | /* 46163 */ // Label 1182: @46163 |
| 18173 | /* 46163 */ GIM_Try, /*On fail goto*//*Label 1183*/ GIMT_Encode4(46186), // Rule ID 1049 // |
| 18174 | /* 46168 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 18175 | /* 46171 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 18176 | /* 46175 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 18177 | /* 46179 */ // (sra:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (SRA_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 18178 | /* 46179 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRA_H), |
| 18179 | /* 46184 */ GIR_RootConstrainSelectedInstOperands, |
| 18180 | /* 46185 */ // GIR_Coverage, 1049, |
| 18181 | /* 46185 */ GIR_Done, |
| 18182 | /* 46186 */ // Label 1183: @46186 |
| 18183 | /* 46186 */ GIM_Reject, |
| 18184 | /* 46187 */ // Label 1180: @46187 |
| 18185 | /* 46187 */ GIM_Reject, |
| 18186 | /* 46188 */ // Label 1162: @46188 |
| 18187 | /* 46188 */ GIM_Try, /*On fail goto*//*Label 1184*/ GIMT_Encode4(46839), |
| 18188 | /* 46193 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 18189 | /* 46196 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 18190 | /* 46199 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 18191 | /* 46203 */ GIM_Try, /*On fail goto*//*Label 1185*/ GIMT_Encode4(46509), // Rule ID 2654 // |
| 18192 | /* 46208 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 18193 | /* 46211 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18194 | /* 46215 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 18195 | /* 46219 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 18196 | /* 46223 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 18197 | /* 46227 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 18198 | /* 46231 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 18199 | /* 46235 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/17, |
| 18200 | /* 46238 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 18201 | /* 46242 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 18202 | /* 46246 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 18203 | /* 46250 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 18204 | /* 46254 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 18205 | /* 46258 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 18206 | /* 46262 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 18207 | /* 46266 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 18208 | /* 46270 */ GIM_CheckType, /*MI*/2, /*Op*/9, /*Type*/GILLT_s32, |
| 18209 | /* 46274 */ GIM_CheckType, /*MI*/2, /*Op*/10, /*Type*/GILLT_s32, |
| 18210 | /* 46278 */ GIM_CheckType, /*MI*/2, /*Op*/11, /*Type*/GILLT_s32, |
| 18211 | /* 46282 */ GIM_CheckType, /*MI*/2, /*Op*/12, /*Type*/GILLT_s32, |
| 18212 | /* 46286 */ GIM_CheckType, /*MI*/2, /*Op*/13, /*Type*/GILLT_s32, |
| 18213 | /* 46290 */ GIM_CheckType, /*MI*/2, /*Op*/14, /*Type*/GILLT_s32, |
| 18214 | /* 46294 */ GIM_CheckType, /*MI*/2, /*Op*/15, /*Type*/GILLT_s32, |
| 18215 | /* 46298 */ GIM_CheckType, /*MI*/2, /*Op*/16, /*Type*/GILLT_s32, |
| 18216 | /* 46302 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 18217 | /* 46306 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18218 | /* 46310 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18219 | /* 46314 */ // MIs[3] Operand 1 |
| 18220 | /* 46314 */ // No operand predicates |
| 18221 | /* 46314 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 18222 | /* 46318 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18223 | /* 46322 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18224 | /* 46326 */ // MIs[4] Operand 1 |
| 18225 | /* 46326 */ // No operand predicates |
| 18226 | /* 46326 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 18227 | /* 46330 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18228 | /* 46334 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18229 | /* 46338 */ // MIs[5] Operand 1 |
| 18230 | /* 46338 */ // No operand predicates |
| 18231 | /* 46338 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 18232 | /* 46342 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18233 | /* 46346 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18234 | /* 46350 */ // MIs[6] Operand 1 |
| 18235 | /* 46350 */ // No operand predicates |
| 18236 | /* 46350 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 18237 | /* 46354 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18238 | /* 46358 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18239 | /* 46362 */ // MIs[7] Operand 1 |
| 18240 | /* 46362 */ // No operand predicates |
| 18241 | /* 46362 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 18242 | /* 46366 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18243 | /* 46370 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18244 | /* 46374 */ // MIs[8] Operand 1 |
| 18245 | /* 46374 */ // No operand predicates |
| 18246 | /* 46374 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 18247 | /* 46378 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18248 | /* 46382 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18249 | /* 46386 */ // MIs[9] Operand 1 |
| 18250 | /* 46386 */ // No operand predicates |
| 18251 | /* 46386 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 18252 | /* 46390 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18253 | /* 46394 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18254 | /* 46398 */ // MIs[10] Operand 1 |
| 18255 | /* 46398 */ // No operand predicates |
| 18256 | /* 46398 */ GIM_RecordInsn, /*DefineMI*/11, /*MI*/2, /*OpIdx*/9, // MIs[11] |
| 18257 | /* 46402 */ GIM_CheckOpcode, /*MI*/11, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18258 | /* 46406 */ GIM_CheckI64ImmPredicate, /*MI*/11, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18259 | /* 46410 */ // MIs[11] Operand 1 |
| 18260 | /* 46410 */ // No operand predicates |
| 18261 | /* 46410 */ GIM_RecordInsn, /*DefineMI*/12, /*MI*/2, /*OpIdx*/10, // MIs[12] |
| 18262 | /* 46414 */ GIM_CheckOpcode, /*MI*/12, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18263 | /* 46418 */ GIM_CheckI64ImmPredicate, /*MI*/12, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18264 | /* 46422 */ // MIs[12] Operand 1 |
| 18265 | /* 46422 */ // No operand predicates |
| 18266 | /* 46422 */ GIM_RecordInsn, /*DefineMI*/13, /*MI*/2, /*OpIdx*/11, // MIs[13] |
| 18267 | /* 46426 */ GIM_CheckOpcode, /*MI*/13, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18268 | /* 46430 */ GIM_CheckI64ImmPredicate, /*MI*/13, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18269 | /* 46434 */ // MIs[13] Operand 1 |
| 18270 | /* 46434 */ // No operand predicates |
| 18271 | /* 46434 */ GIM_RecordInsn, /*DefineMI*/14, /*MI*/2, /*OpIdx*/12, // MIs[14] |
| 18272 | /* 46438 */ GIM_CheckOpcode, /*MI*/14, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18273 | /* 46442 */ GIM_CheckI64ImmPredicate, /*MI*/14, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18274 | /* 46446 */ // MIs[14] Operand 1 |
| 18275 | /* 46446 */ // No operand predicates |
| 18276 | /* 46446 */ GIM_RecordInsn, /*DefineMI*/15, /*MI*/2, /*OpIdx*/13, // MIs[15] |
| 18277 | /* 46450 */ GIM_CheckOpcode, /*MI*/15, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18278 | /* 46454 */ GIM_CheckI64ImmPredicate, /*MI*/15, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18279 | /* 46458 */ // MIs[15] Operand 1 |
| 18280 | /* 46458 */ // No operand predicates |
| 18281 | /* 46458 */ GIM_RecordInsn, /*DefineMI*/16, /*MI*/2, /*OpIdx*/14, // MIs[16] |
| 18282 | /* 46462 */ GIM_CheckOpcode, /*MI*/16, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18283 | /* 46466 */ GIM_CheckI64ImmPredicate, /*MI*/16, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18284 | /* 46470 */ // MIs[16] Operand 1 |
| 18285 | /* 46470 */ // No operand predicates |
| 18286 | /* 46470 */ GIM_RecordInsn, /*DefineMI*/17, /*MI*/2, /*OpIdx*/15, // MIs[17] |
| 18287 | /* 46474 */ GIM_CheckOpcode, /*MI*/17, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18288 | /* 46478 */ GIM_CheckI64ImmPredicate, /*MI*/17, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18289 | /* 46482 */ // MIs[17] Operand 1 |
| 18290 | /* 46482 */ // No operand predicates |
| 18291 | /* 46482 */ GIM_RecordInsn, /*DefineMI*/18, /*MI*/2, /*OpIdx*/16, // MIs[18] |
| 18292 | /* 46486 */ GIM_CheckOpcode, /*MI*/18, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18293 | /* 46490 */ GIM_CheckI64ImmPredicate, /*MI*/18, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18294 | /* 46494 */ // MIs[18] Operand 1 |
| 18295 | /* 46494 */ // No operand predicates |
| 18296 | /* 46494 */ GIM_CheckIsSafeToFold, /*NumInsns*/18, |
| 18297 | /* 46496 */ // (sra:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, (and:{ *:[v16i8] } (build_vector:{ *:[v16i8] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>), v16i8:{ *:[v16i8] }:$wt)) => (SRA_B:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, v16i8:{ *:[v16i8] }:$wt) |
| 18298 | /* 46496 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA_B), |
| 18299 | /* 46499 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 18300 | /* 46501 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 18301 | /* 46503 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 18302 | /* 46507 */ GIR_RootConstrainSelectedInstOperands, |
| 18303 | /* 46508 */ // GIR_Coverage, 2654, |
| 18304 | /* 46508 */ GIR_EraseRootFromParent_Done, |
| 18305 | /* 46509 */ // Label 1185: @46509 |
| 18306 | /* 46509 */ GIM_Try, /*On fail goto*//*Label 1186*/ GIMT_Encode4(46815), // Rule ID 2212 // |
| 18307 | /* 46514 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 18308 | /* 46517 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18309 | /* 46521 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_AND), |
| 18310 | /* 46525 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v16s8, |
| 18311 | /* 46529 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v16s8, |
| 18312 | /* 46533 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 18313 | /* 46537 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_BUILD_VECTOR), |
| 18314 | /* 46541 */ GIM_CheckNumOperands, /*MI*/2, /*Expected*/17, |
| 18315 | /* 46544 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 18316 | /* 46548 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 18317 | /* 46552 */ GIM_CheckType, /*MI*/2, /*Op*/3, /*Type*/GILLT_s32, |
| 18318 | /* 46556 */ GIM_CheckType, /*MI*/2, /*Op*/4, /*Type*/GILLT_s32, |
| 18319 | /* 46560 */ GIM_CheckType, /*MI*/2, /*Op*/5, /*Type*/GILLT_s32, |
| 18320 | /* 46564 */ GIM_CheckType, /*MI*/2, /*Op*/6, /*Type*/GILLT_s32, |
| 18321 | /* 46568 */ GIM_CheckType, /*MI*/2, /*Op*/7, /*Type*/GILLT_s32, |
| 18322 | /* 46572 */ GIM_CheckType, /*MI*/2, /*Op*/8, /*Type*/GILLT_s32, |
| 18323 | /* 46576 */ GIM_CheckType, /*MI*/2, /*Op*/9, /*Type*/GILLT_s32, |
| 18324 | /* 46580 */ GIM_CheckType, /*MI*/2, /*Op*/10, /*Type*/GILLT_s32, |
| 18325 | /* 46584 */ GIM_CheckType, /*MI*/2, /*Op*/11, /*Type*/GILLT_s32, |
| 18326 | /* 46588 */ GIM_CheckType, /*MI*/2, /*Op*/12, /*Type*/GILLT_s32, |
| 18327 | /* 46592 */ GIM_CheckType, /*MI*/2, /*Op*/13, /*Type*/GILLT_s32, |
| 18328 | /* 46596 */ GIM_CheckType, /*MI*/2, /*Op*/14, /*Type*/GILLT_s32, |
| 18329 | /* 46600 */ GIM_CheckType, /*MI*/2, /*Op*/15, /*Type*/GILLT_s32, |
| 18330 | /* 46604 */ GIM_CheckType, /*MI*/2, /*Op*/16, /*Type*/GILLT_s32, |
| 18331 | /* 46608 */ GIM_RecordInsn, /*DefineMI*/3, /*MI*/2, /*OpIdx*/1, // MIs[3] |
| 18332 | /* 46612 */ GIM_CheckOpcode, /*MI*/3, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18333 | /* 46616 */ GIM_CheckI64ImmPredicate, /*MI*/3, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18334 | /* 46620 */ // MIs[3] Operand 1 |
| 18335 | /* 46620 */ // No operand predicates |
| 18336 | /* 46620 */ GIM_RecordInsn, /*DefineMI*/4, /*MI*/2, /*OpIdx*/2, // MIs[4] |
| 18337 | /* 46624 */ GIM_CheckOpcode, /*MI*/4, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18338 | /* 46628 */ GIM_CheckI64ImmPredicate, /*MI*/4, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18339 | /* 46632 */ // MIs[4] Operand 1 |
| 18340 | /* 46632 */ // No operand predicates |
| 18341 | /* 46632 */ GIM_RecordInsn, /*DefineMI*/5, /*MI*/2, /*OpIdx*/3, // MIs[5] |
| 18342 | /* 46636 */ GIM_CheckOpcode, /*MI*/5, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18343 | /* 46640 */ GIM_CheckI64ImmPredicate, /*MI*/5, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18344 | /* 46644 */ // MIs[5] Operand 1 |
| 18345 | /* 46644 */ // No operand predicates |
| 18346 | /* 46644 */ GIM_RecordInsn, /*DefineMI*/6, /*MI*/2, /*OpIdx*/4, // MIs[6] |
| 18347 | /* 46648 */ GIM_CheckOpcode, /*MI*/6, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18348 | /* 46652 */ GIM_CheckI64ImmPredicate, /*MI*/6, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18349 | /* 46656 */ // MIs[6] Operand 1 |
| 18350 | /* 46656 */ // No operand predicates |
| 18351 | /* 46656 */ GIM_RecordInsn, /*DefineMI*/7, /*MI*/2, /*OpIdx*/5, // MIs[7] |
| 18352 | /* 46660 */ GIM_CheckOpcode, /*MI*/7, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18353 | /* 46664 */ GIM_CheckI64ImmPredicate, /*MI*/7, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18354 | /* 46668 */ // MIs[7] Operand 1 |
| 18355 | /* 46668 */ // No operand predicates |
| 18356 | /* 46668 */ GIM_RecordInsn, /*DefineMI*/8, /*MI*/2, /*OpIdx*/6, // MIs[8] |
| 18357 | /* 46672 */ GIM_CheckOpcode, /*MI*/8, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18358 | /* 46676 */ GIM_CheckI64ImmPredicate, /*MI*/8, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18359 | /* 46680 */ // MIs[8] Operand 1 |
| 18360 | /* 46680 */ // No operand predicates |
| 18361 | /* 46680 */ GIM_RecordInsn, /*DefineMI*/9, /*MI*/2, /*OpIdx*/7, // MIs[9] |
| 18362 | /* 46684 */ GIM_CheckOpcode, /*MI*/9, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18363 | /* 46688 */ GIM_CheckI64ImmPredicate, /*MI*/9, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18364 | /* 46692 */ // MIs[9] Operand 1 |
| 18365 | /* 46692 */ // No operand predicates |
| 18366 | /* 46692 */ GIM_RecordInsn, /*DefineMI*/10, /*MI*/2, /*OpIdx*/8, // MIs[10] |
| 18367 | /* 46696 */ GIM_CheckOpcode, /*MI*/10, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18368 | /* 46700 */ GIM_CheckI64ImmPredicate, /*MI*/10, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18369 | /* 46704 */ // MIs[10] Operand 1 |
| 18370 | /* 46704 */ // No operand predicates |
| 18371 | /* 46704 */ GIM_RecordInsn, /*DefineMI*/11, /*MI*/2, /*OpIdx*/9, // MIs[11] |
| 18372 | /* 46708 */ GIM_CheckOpcode, /*MI*/11, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18373 | /* 46712 */ GIM_CheckI64ImmPredicate, /*MI*/11, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18374 | /* 46716 */ // MIs[11] Operand 1 |
| 18375 | /* 46716 */ // No operand predicates |
| 18376 | /* 46716 */ GIM_RecordInsn, /*DefineMI*/12, /*MI*/2, /*OpIdx*/10, // MIs[12] |
| 18377 | /* 46720 */ GIM_CheckOpcode, /*MI*/12, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18378 | /* 46724 */ GIM_CheckI64ImmPredicate, /*MI*/12, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18379 | /* 46728 */ // MIs[12] Operand 1 |
| 18380 | /* 46728 */ // No operand predicates |
| 18381 | /* 46728 */ GIM_RecordInsn, /*DefineMI*/13, /*MI*/2, /*OpIdx*/11, // MIs[13] |
| 18382 | /* 46732 */ GIM_CheckOpcode, /*MI*/13, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18383 | /* 46736 */ GIM_CheckI64ImmPredicate, /*MI*/13, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18384 | /* 46740 */ // MIs[13] Operand 1 |
| 18385 | /* 46740 */ // No operand predicates |
| 18386 | /* 46740 */ GIM_RecordInsn, /*DefineMI*/14, /*MI*/2, /*OpIdx*/12, // MIs[14] |
| 18387 | /* 46744 */ GIM_CheckOpcode, /*MI*/14, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18388 | /* 46748 */ GIM_CheckI64ImmPredicate, /*MI*/14, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18389 | /* 46752 */ // MIs[14] Operand 1 |
| 18390 | /* 46752 */ // No operand predicates |
| 18391 | /* 46752 */ GIM_RecordInsn, /*DefineMI*/15, /*MI*/2, /*OpIdx*/13, // MIs[15] |
| 18392 | /* 46756 */ GIM_CheckOpcode, /*MI*/15, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18393 | /* 46760 */ GIM_CheckI64ImmPredicate, /*MI*/15, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18394 | /* 46764 */ // MIs[15] Operand 1 |
| 18395 | /* 46764 */ // No operand predicates |
| 18396 | /* 46764 */ GIM_RecordInsn, /*DefineMI*/16, /*MI*/2, /*OpIdx*/14, // MIs[16] |
| 18397 | /* 46768 */ GIM_CheckOpcode, /*MI*/16, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18398 | /* 46772 */ GIM_CheckI64ImmPredicate, /*MI*/16, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18399 | /* 46776 */ // MIs[16] Operand 1 |
| 18400 | /* 46776 */ // No operand predicates |
| 18401 | /* 46776 */ GIM_RecordInsn, /*DefineMI*/17, /*MI*/2, /*OpIdx*/15, // MIs[17] |
| 18402 | /* 46780 */ GIM_CheckOpcode, /*MI*/17, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18403 | /* 46784 */ GIM_CheckI64ImmPredicate, /*MI*/17, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18404 | /* 46788 */ // MIs[17] Operand 1 |
| 18405 | /* 46788 */ // No operand predicates |
| 18406 | /* 46788 */ GIM_RecordInsn, /*DefineMI*/18, /*MI*/2, /*OpIdx*/16, // MIs[18] |
| 18407 | /* 46792 */ GIM_CheckOpcode, /*MI*/18, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18408 | /* 46796 */ GIM_CheckI64ImmPredicate, /*MI*/18, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immi32Cst7), |
| 18409 | /* 46800 */ // MIs[18] Operand 1 |
| 18410 | /* 46800 */ // No operand predicates |
| 18411 | /* 46800 */ GIM_CheckIsSafeToFold, /*NumInsns*/18, |
| 18412 | /* 46802 */ // (sra:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, (and:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$wt, (build_vector:{ *:[v16i8] } (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>, (imm:{ *:[i32] })<<P:Predicate_immi32Cst7>>))) => (SRA_B:{ *:[v16i8] } v16i8:{ *:[v16i8] }:$ws, v16i8:{ *:[v16i8] }:$wt) |
| 18413 | /* 46802 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SRA_B), |
| 18414 | /* 46805 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 18415 | /* 46807 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 18416 | /* 46809 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 18417 | /* 46813 */ GIR_RootConstrainSelectedInstOperands, |
| 18418 | /* 46814 */ // GIR_Coverage, 2212, |
| 18419 | /* 46814 */ GIR_EraseRootFromParent_Done, |
| 18420 | /* 46815 */ // Label 1186: @46815 |
| 18421 | /* 46815 */ GIM_Try, /*On fail goto*//*Label 1187*/ GIMT_Encode4(46838), // Rule ID 1048 // |
| 18422 | /* 46820 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 18423 | /* 46823 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 18424 | /* 46827 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 18425 | /* 46831 */ // (sra:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (SRA_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 18426 | /* 46831 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::SRA_B), |
| 18427 | /* 46836 */ GIR_RootConstrainSelectedInstOperands, |
| 18428 | /* 46837 */ // GIR_Coverage, 1048, |
| 18429 | /* 46837 */ GIR_Done, |
| 18430 | /* 46838 */ // Label 1187: @46838 |
| 18431 | /* 46838 */ GIM_Reject, |
| 18432 | /* 46839 */ // Label 1184: @46839 |
| 18433 | /* 46839 */ GIM_Reject, |
| 18434 | /* 46840 */ // Label 1163: @46840 |
| 18435 | /* 46840 */ GIM_Reject, |
| 18436 | /* 46841 */ // Label 40: @46841 |
| 18437 | /* 46841 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1190*/ GIMT_Encode4(47128), |
| 18438 | /* 46852 */ /*GILLT_s32*//*Label 1188*/ GIMT_Encode4(46860), |
| 18439 | /* 46856 */ /*GILLT_s64*//*Label 1189*/ GIMT_Encode4(46987), |
| 18440 | /* 46860 */ // Label 1188: @46860 |
| 18441 | /* 46860 */ GIM_Try, /*On fail goto*//*Label 1191*/ GIMT_Encode4(46986), |
| 18442 | /* 46865 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 18443 | /* 46868 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 18444 | /* 46871 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18445 | /* 46875 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18446 | /* 46879 */ GIM_Try, /*On fail goto*//*Label 1192*/ GIMT_Encode4(46913), // Rule ID 67 // |
| 18447 | /* 46884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r2_HasStdEnc_NotInMicroMips), |
| 18448 | /* 46887 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18449 | /* 46891 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18450 | /* 46895 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 18451 | /* 46899 */ // MIs[1] Operand 1 |
| 18452 | /* 46899 */ // No operand predicates |
| 18453 | /* 46899 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18454 | /* 46901 */ // (rotr:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$shamt) => (ROTR:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 18455 | /* 46901 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ROTR), |
| 18456 | /* 46904 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18457 | /* 46906 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 18458 | /* 46908 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 18459 | /* 46911 */ GIR_RootConstrainSelectedInstOperands, |
| 18460 | /* 46912 */ // GIR_Coverage, 67, |
| 18461 | /* 46912 */ GIR_EraseRootFromParent_Done, |
| 18462 | /* 46913 */ // Label 1192: @46913 |
| 18463 | /* 46913 */ GIM_Try, /*On fail goto*//*Label 1193*/ GIMT_Encode4(46947), // Rule ID 1156 // |
| 18464 | /* 46918 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 18465 | /* 46921 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18466 | /* 46925 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18467 | /* 46929 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt5), |
| 18468 | /* 46933 */ // MIs[1] Operand 1 |
| 18469 | /* 46933 */ // No operand predicates |
| 18470 | /* 46933 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18471 | /* 46935 */ // (rotr:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt5>>:$shamt) => (ROTR_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 18472 | /* 46935 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ROTR_MM), |
| 18473 | /* 46938 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18474 | /* 46940 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 18475 | /* 46942 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 18476 | /* 46945 */ GIR_RootConstrainSelectedInstOperands, |
| 18477 | /* 46946 */ // GIR_Coverage, 1156, |
| 18478 | /* 46946 */ GIR_EraseRootFromParent_Done, |
| 18479 | /* 46947 */ // Label 1193: @46947 |
| 18480 | /* 46947 */ GIM_Try, /*On fail goto*//*Label 1194*/ GIMT_Encode4(46966), // Rule ID 68 // |
| 18481 | /* 46952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r2_HasStdEnc_NotInMicroMips), |
| 18482 | /* 46955 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18483 | /* 46959 */ // (rotr:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (ROTRV:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 18484 | /* 46959 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ROTRV), |
| 18485 | /* 46964 */ GIR_RootConstrainSelectedInstOperands, |
| 18486 | /* 46965 */ // GIR_Coverage, 68, |
| 18487 | /* 46965 */ GIR_Done, |
| 18488 | /* 46966 */ // Label 1194: @46966 |
| 18489 | /* 46966 */ GIM_Try, /*On fail goto*//*Label 1195*/ GIMT_Encode4(46985), // Rule ID 1157 // |
| 18490 | /* 46971 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 18491 | /* 46974 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18492 | /* 46978 */ // (rotr:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (ROTRV_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 18493 | /* 46978 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::ROTRV_MM), |
| 18494 | /* 46983 */ GIR_RootConstrainSelectedInstOperands, |
| 18495 | /* 46984 */ // GIR_Coverage, 1157, |
| 18496 | /* 46984 */ GIR_Done, |
| 18497 | /* 46985 */ // Label 1195: @46985 |
| 18498 | /* 46985 */ GIM_Reject, |
| 18499 | /* 46986 */ // Label 1191: @46986 |
| 18500 | /* 46986 */ GIM_Reject, |
| 18501 | /* 46987 */ // Label 1189: @46987 |
| 18502 | /* 46987 */ GIM_Try, /*On fail goto*//*Label 1196*/ GIMT_Encode4(47127), |
| 18503 | /* 46992 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 18504 | /* 46995 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 18505 | /* 46998 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18506 | /* 47002 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18507 | /* 47006 */ GIM_Try, /*On fail goto*//*Label 1197*/ GIMT_Encode4(47040), // Rule ID 297 // |
| 18508 | /* 47011 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r2_HasStdEnc_NotInMicroMips), |
| 18509 | /* 47014 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18510 | /* 47018 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 18511 | /* 47022 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt6), |
| 18512 | /* 47026 */ // MIs[1] Operand 1 |
| 18513 | /* 47026 */ // No operand predicates |
| 18514 | /* 47026 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18515 | /* 47028 */ // (rotr:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] })<<P:Predicate_immZExt6>>:$shamt) => (DROTR:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, (imm:{ *:[i32] }):$shamt) |
| 18516 | /* 47028 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DROTR), |
| 18517 | /* 47031 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18518 | /* 47033 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 18519 | /* 47035 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // shamt |
| 18520 | /* 47038 */ GIR_RootConstrainSelectedInstOperands, |
| 18521 | /* 47039 */ // GIR_Coverage, 297, |
| 18522 | /* 47039 */ GIR_EraseRootFromParent_Done, |
| 18523 | /* 47040 */ // Label 1197: @47040 |
| 18524 | /* 47040 */ GIM_Try, /*On fail goto*//*Label 1198*/ GIMT_Encode4(47107), // Rule ID 1682 // |
| 18525 | /* 47045 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit), |
| 18526 | /* 47048 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 18527 | /* 47052 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_TRUNC), |
| 18528 | /* 47056 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 18529 | /* 47060 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18530 | /* 47065 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 18531 | /* 47067 */ // (rotr:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (trunc:{ *:[i32] } GPR64:{ *:[i64] }:$rs)) => (DROTRV:{ *:[i64] } GPR64:{ *:[i64] }:$rt, (EXTRACT_SUBREG:{ *:[i32] } GPR64:{ *:[i64] }:$rs, sub_32:{ *:[i32] })) |
| 18532 | /* 47067 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18533 | /* 47070 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 18534 | /* 47074 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18535 | /* 47079 */ GIR_CopySubReg, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/1, /*SubRegIdx*/GIMT_Encode2(1), // rs |
| 18536 | /* 47085 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/0, GIMT_Encode2(Mips::DSPRRegClassID), |
| 18537 | /* 47090 */ GIR_ConstrainOperandRC, /*InsnID*/1, /*Op*/1, GIMT_Encode2(Mips::GPR64RegClassID), |
| 18538 | /* 47095 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DROTRV), |
| 18539 | /* 47098 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18540 | /* 47100 */ GIR_RootToRootCopy, /*OpIdx*/1, // rt |
| 18541 | /* 47102 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18542 | /* 47105 */ GIR_RootConstrainSelectedInstOperands, |
| 18543 | /* 47106 */ // GIR_Coverage, 1682, |
| 18544 | /* 47106 */ GIR_EraseRootFromParent_Done, |
| 18545 | /* 47107 */ // Label 1198: @47107 |
| 18546 | /* 47107 */ GIM_Try, /*On fail goto*//*Label 1199*/ GIMT_Encode4(47126), // Rule ID 298 // |
| 18547 | /* 47112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r2_HasStdEnc_NotInMicroMips), |
| 18548 | /* 47115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18549 | /* 47119 */ // (rotr:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) => (DROTRV:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rt, GPR32Opnd:{ *:[i32] }:$rs) |
| 18550 | /* 47119 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DROTRV), |
| 18551 | /* 47124 */ GIR_RootConstrainSelectedInstOperands, |
| 18552 | /* 47125 */ // GIR_Coverage, 298, |
| 18553 | /* 47125 */ GIR_Done, |
| 18554 | /* 47126 */ // Label 1199: @47126 |
| 18555 | /* 47126 */ GIM_Reject, |
| 18556 | /* 47127 */ // Label 1196: @47127 |
| 18557 | /* 47127 */ GIM_Reject, |
| 18558 | /* 47128 */ // Label 1190: @47128 |
| 18559 | /* 47128 */ GIM_Reject, |
| 18560 | /* 47129 */ // Label 41: @47129 |
| 18561 | /* 47129 */ GIM_Try, /*On fail goto*//*Label 1200*/ GIMT_Encode4(49659), |
| 18562 | /* 47134 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 18563 | /* 47137 */ GIM_SwitchType, /*MI*/0, /*Op*/2, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1203*/ GIMT_Encode4(47322), |
| 18564 | /* 47148 */ /*GILLT_s32*//*Label 1201*/ GIMT_Encode4(47156), |
| 18565 | /* 47152 */ /*GILLT_s64*//*Label 1202*/ GIMT_Encode4(47239), |
| 18566 | /* 47156 */ // Label 1201: @47156 |
| 18567 | /* 47156 */ GIM_Try, /*On fail goto*//*Label 1204*/ GIMT_Encode4(47238), |
| 18568 | /* 47161 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 18569 | /* 47164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18570 | /* 47168 */ GIM_Try, /*On fail goto*//*Label 1205*/ GIMT_Encode4(47201), // Rule ID 1490 // |
| 18571 | /* 47173 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18572 | /* 47176 */ // MIs[0] Operand 1 |
| 18573 | /* 47176 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 18574 | /* 47181 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18575 | /* 47185 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 18576 | /* 47189 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }) => (SLTiu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 1:{ *:[i32] }) |
| 18577 | /* 47189 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTiu), |
| 18578 | /* 47192 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18579 | /* 47194 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18580 | /* 47196 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18581 | /* 47199 */ GIR_RootConstrainSelectedInstOperands, |
| 18582 | /* 47200 */ // GIR_Coverage, 1490, |
| 18583 | /* 47200 */ GIR_EraseRootFromParent_Done, |
| 18584 | /* 47201 */ // Label 1205: @47201 |
| 18585 | /* 47201 */ GIM_Try, /*On fail goto*//*Label 1206*/ GIMT_Encode4(47237), // Rule ID 1491 // |
| 18586 | /* 47206 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18587 | /* 47209 */ // MIs[0] Operand 1 |
| 18588 | /* 47209 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 18589 | /* 47214 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18590 | /* 47218 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 18591 | /* 47222 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }) => (SLTu:{ *:[i32] } ZERO:{ *:[i32] }, GPR32:{ *:[i32] }:$lhs) |
| 18592 | /* 47222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 18593 | /* 47225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18594 | /* 47227 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 18595 | /* 47233 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18596 | /* 47235 */ GIR_RootConstrainSelectedInstOperands, |
| 18597 | /* 47236 */ // GIR_Coverage, 1491, |
| 18598 | /* 47236 */ GIR_EraseRootFromParent_Done, |
| 18599 | /* 47237 */ // Label 1206: @47237 |
| 18600 | /* 47237 */ GIM_Reject, |
| 18601 | /* 47238 */ // Label 1204: @47238 |
| 18602 | /* 47238 */ GIM_Reject, |
| 18603 | /* 47239 */ // Label 1202: @47239 |
| 18604 | /* 47239 */ GIM_Try, /*On fail goto*//*Label 1207*/ GIMT_Encode4(47321), |
| 18605 | /* 47244 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 18606 | /* 47247 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18607 | /* 47251 */ GIM_Try, /*On fail goto*//*Label 1208*/ GIMT_Encode4(47284), // Rule ID 1664 // |
| 18608 | /* 47256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 18609 | /* 47259 */ // MIs[0] Operand 1 |
| 18610 | /* 47259 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 18611 | /* 47264 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18612 | /* 47268 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 18613 | /* 47272 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETEQ:{ *:[Other] }) => (SLTiu64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 1:{ *:[i64] }) |
| 18614 | /* 47272 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTiu64), |
| 18615 | /* 47275 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18616 | /* 47277 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18617 | /* 47279 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18618 | /* 47282 */ GIR_RootConstrainSelectedInstOperands, |
| 18619 | /* 47283 */ // GIR_Coverage, 1664, |
| 18620 | /* 47283 */ GIR_EraseRootFromParent_Done, |
| 18621 | /* 47284 */ // Label 1208: @47284 |
| 18622 | /* 47284 */ GIM_Try, /*On fail goto*//*Label 1209*/ GIMT_Encode4(47320), // Rule ID 1665 // |
| 18623 | /* 47289 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 18624 | /* 47292 */ // MIs[0] Operand 1 |
| 18625 | /* 47292 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 18626 | /* 47297 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18627 | /* 47301 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 18628 | /* 47305 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETNE:{ *:[Other] }) => (SLTu64:{ *:[i32] } ZERO_64:{ *:[i64] }, GPR64:{ *:[i64] }:$lhs) |
| 18629 | /* 47305 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 18630 | /* 47308 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18631 | /* 47310 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO_64), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 18632 | /* 47316 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18633 | /* 47318 */ GIR_RootConstrainSelectedInstOperands, |
| 18634 | /* 47319 */ // GIR_Coverage, 1665, |
| 18635 | /* 47319 */ GIR_EraseRootFromParent_Done, |
| 18636 | /* 47320 */ // Label 1209: @47320 |
| 18637 | /* 47320 */ GIM_Reject, |
| 18638 | /* 47321 */ // Label 1207: @47321 |
| 18639 | /* 47321 */ GIM_Reject, |
| 18640 | /* 47322 */ // Label 1203: @47322 |
| 18641 | /* 47322 */ GIM_SwitchType, /*MI*/0, /*Op*/2, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1212*/ GIMT_Encode4(47705), |
| 18642 | /* 47333 */ /*GILLT_s32*//*Label 1210*/ GIMT_Encode4(47341), |
| 18643 | /* 47337 */ /*GILLT_s64*//*Label 1211*/ GIMT_Encode4(47627), |
| 18644 | /* 47341 */ // Label 1210: @47341 |
| 18645 | /* 47341 */ GIM_Try, /*On fail goto*//*Label 1213*/ GIMT_Encode4(47626), |
| 18646 | /* 47346 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 18647 | /* 47349 */ GIM_Try, /*On fail goto*//*Label 1214*/ GIMT_Encode4(47386), // Rule ID 2014 // |
| 18648 | /* 47354 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 18649 | /* 47357 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 18650 | /* 47361 */ // MIs[0] Operand 1 |
| 18651 | /* 47361 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 18652 | /* 47366 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 18653 | /* 47370 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 18654 | /* 47374 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }) => (SltiuCCRxImmX16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, 1:{ *:[i32] }) |
| 18655 | /* 47374 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SltiuCCRxImmX16), |
| 18656 | /* 47377 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[cc] |
| 18657 | /* 47379 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18658 | /* 47381 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18659 | /* 47384 */ GIR_RootConstrainSelectedInstOperands, |
| 18660 | /* 47385 */ // GIR_Coverage, 2014, |
| 18661 | /* 47385 */ GIR_EraseRootFromParent_Done, |
| 18662 | /* 47386 */ // Label 1214: @47386 |
| 18663 | /* 47386 */ GIM_Try, /*On fail goto*//*Label 1215*/ GIMT_Encode4(47476), // Rule ID 2016 // |
| 18664 | /* 47391 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 18665 | /* 47394 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 18666 | /* 47398 */ // MIs[0] Operand 1 |
| 18667 | /* 47398 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 18668 | /* 47403 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 18669 | /* 47407 */ GIM_CheckConstantInt, /*MI*/0, /*Op*/3, GIMT_Encode8(18446744073709518847u), |
| 18670 | /* 47418 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, -32769:{ *:[i32] }, SETGT:{ *:[Other] }) => (XorRxRxRy16:{ *:[i32] } (SltiCCRxImmX16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, -32768:{ *:[i32] }), (LiRxImmX16:{ *:[i32] } 1:{ *:[i32] })) |
| 18671 | /* 47418 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 18672 | /* 47421 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::LiRxImmX16), |
| 18673 | /* 47425 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18674 | /* 47430 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/1, |
| 18675 | /* 47433 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 18676 | /* 47435 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18677 | /* 47438 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SltiCCRxImmX16), |
| 18678 | /* 47442 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18679 | /* 47447 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 18680 | /* 47451 */ GIR_AddImm, /*InsnID*/1, /*Imm*/GIMT_Encode8(18446744073709518848u), |
| 18681 | /* 47461 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18682 | /* 47463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 18683 | /* 47466 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rz] |
| 18684 | /* 47468 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18685 | /* 47471 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 18686 | /* 47474 */ GIR_RootConstrainSelectedInstOperands, |
| 18687 | /* 47475 */ // GIR_Coverage, 2016, |
| 18688 | /* 47475 */ GIR_EraseRootFromParent_Done, |
| 18689 | /* 47476 */ // Label 1215: @47476 |
| 18690 | /* 47476 */ GIM_Try, /*On fail goto*//*Label 1216*/ GIMT_Encode4(47513), // Rule ID 2335 // |
| 18691 | /* 47481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 18692 | /* 47484 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18693 | /* 47488 */ // MIs[0] Operand 1 |
| 18694 | /* 47488 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 18695 | /* 47493 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18696 | /* 47497 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 18697 | /* 47501 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }) => (SLTiu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 1:{ *:[i32] }) |
| 18698 | /* 47501 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTiu_MM), |
| 18699 | /* 47504 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18700 | /* 47506 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18701 | /* 47508 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18702 | /* 47511 */ GIR_RootConstrainSelectedInstOperands, |
| 18703 | /* 47512 */ // GIR_Coverage, 2335, |
| 18704 | /* 47512 */ GIR_EraseRootFromParent_Done, |
| 18705 | /* 47513 */ // Label 1216: @47513 |
| 18706 | /* 47513 */ GIM_Try, /*On fail goto*//*Label 1217*/ GIMT_Encode4(47553), // Rule ID 2336 // |
| 18707 | /* 47518 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 18708 | /* 47521 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18709 | /* 47525 */ // MIs[0] Operand 1 |
| 18710 | /* 47525 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 18711 | /* 47530 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18712 | /* 47534 */ GIM_CheckConstantInt8, /*MI*/0, /*Op*/3, 0, |
| 18713 | /* 47538 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }) => (SLTu_MM:{ *:[i32] } ZERO:{ *:[i32] }, GPR32:{ *:[i32] }:$lhs) |
| 18714 | /* 47538 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 18715 | /* 47541 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18716 | /* 47543 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 18717 | /* 47549 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18718 | /* 47551 */ GIR_RootConstrainSelectedInstOperands, |
| 18719 | /* 47552 */ // GIR_Coverage, 2336, |
| 18720 | /* 47552 */ GIR_EraseRootFromParent_Done, |
| 18721 | /* 47553 */ // Label 1217: @47553 |
| 18722 | /* 47553 */ GIM_Try, /*On fail goto*//*Label 1218*/ GIMT_Encode4(47589), // Rule ID 49 // |
| 18723 | /* 47558 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18724 | /* 47561 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18725 | /* 47565 */ // MIs[0] Operand 1 |
| 18726 | /* 47565 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 18727 | /* 47570 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18728 | /* 47574 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18729 | /* 47578 */ // (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETLT:{ *:[Other] }) => (SLT:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 18730 | /* 47578 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 18731 | /* 47581 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18732 | /* 47583 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 18733 | /* 47585 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 18734 | /* 47587 */ GIR_RootConstrainSelectedInstOperands, |
| 18735 | /* 47588 */ // GIR_Coverage, 49, |
| 18736 | /* 47588 */ GIR_EraseRootFromParent_Done, |
| 18737 | /* 47589 */ // Label 1218: @47589 |
| 18738 | /* 47589 */ GIM_Try, /*On fail goto*//*Label 1219*/ GIMT_Encode4(47625), // Rule ID 50 // |
| 18739 | /* 47594 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18740 | /* 47597 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18741 | /* 47601 */ // MIs[0] Operand 1 |
| 18742 | /* 47601 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULT), |
| 18743 | /* 47606 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18744 | /* 47610 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18745 | /* 47614 */ // (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETULT:{ *:[Other] }) => (SLTu:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 18746 | /* 47614 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 18747 | /* 47617 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18748 | /* 47619 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 18749 | /* 47621 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 18750 | /* 47623 */ GIR_RootConstrainSelectedInstOperands, |
| 18751 | /* 47624 */ // GIR_Coverage, 50, |
| 18752 | /* 47624 */ GIR_EraseRootFromParent_Done, |
| 18753 | /* 47625 */ // Label 1219: @47625 |
| 18754 | /* 47625 */ GIM_Reject, |
| 18755 | /* 47626 */ // Label 1213: @47626 |
| 18756 | /* 47626 */ GIM_Reject, |
| 18757 | /* 47627 */ // Label 1211: @47627 |
| 18758 | /* 47627 */ GIM_Try, /*On fail goto*//*Label 1220*/ GIMT_Encode4(47704), |
| 18759 | /* 47632 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 18760 | /* 47635 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18761 | /* 47639 */ GIM_Try, /*On fail goto*//*Label 1221*/ GIMT_Encode4(47671), // Rule ID 279 // |
| 18762 | /* 47644 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 18763 | /* 47647 */ // MIs[0] Operand 1 |
| 18764 | /* 47647 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 18765 | /* 47652 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18766 | /* 47656 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18767 | /* 47660 */ // (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, SETLT:{ *:[Other] }) => (SLT64:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 18768 | /* 47660 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 18769 | /* 47663 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18770 | /* 47665 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 18771 | /* 47667 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 18772 | /* 47669 */ GIR_RootConstrainSelectedInstOperands, |
| 18773 | /* 47670 */ // GIR_Coverage, 279, |
| 18774 | /* 47670 */ GIR_EraseRootFromParent_Done, |
| 18775 | /* 47671 */ // Label 1221: @47671 |
| 18776 | /* 47671 */ GIM_Try, /*On fail goto*//*Label 1222*/ GIMT_Encode4(47703), // Rule ID 280 // |
| 18777 | /* 47676 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsGP64bit_NotInMips16Mode), |
| 18778 | /* 47679 */ // MIs[0] Operand 1 |
| 18779 | /* 47679 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULT), |
| 18780 | /* 47684 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18781 | /* 47688 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 18782 | /* 47692 */ // (setcc:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt, SETULT:{ *:[Other] }) => (SLTu64:{ *:[i32] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 18783 | /* 47692 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 18784 | /* 47695 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18785 | /* 47697 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 18786 | /* 47699 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 18787 | /* 47701 */ GIR_RootConstrainSelectedInstOperands, |
| 18788 | /* 47702 */ // GIR_Coverage, 280, |
| 18789 | /* 47702 */ GIR_EraseRootFromParent_Done, |
| 18790 | /* 47703 */ // Label 1222: @47703 |
| 18791 | /* 47703 */ GIM_Reject, |
| 18792 | /* 47704 */ // Label 1220: @47704 |
| 18793 | /* 47704 */ GIM_Reject, |
| 18794 | /* 47705 */ // Label 1212: @47705 |
| 18795 | /* 47705 */ GIM_SwitchType, /*MI*/0, /*Op*/2, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1225*/ GIMT_Encode4(48622), |
| 18796 | /* 47716 */ /*GILLT_s32*//*Label 1223*/ GIMT_Encode4(47724), |
| 18797 | /* 47720 */ /*GILLT_s64*//*Label 1224*/ GIMT_Encode4(48205), |
| 18798 | /* 47724 */ // Label 1223: @47724 |
| 18799 | /* 47724 */ GIM_Try, /*On fail goto*//*Label 1226*/ GIMT_Encode4(48204), |
| 18800 | /* 47729 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 18801 | /* 47732 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18802 | /* 47736 */ GIM_Try, /*On fail goto*//*Label 1227*/ GIMT_Encode4(47768), // Rule ID 1150 // |
| 18803 | /* 47741 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 18804 | /* 47744 */ // MIs[0] Operand 1 |
| 18805 | /* 47744 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 18806 | /* 47749 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18807 | /* 47753 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18808 | /* 47757 */ // (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETLT:{ *:[Other] }) => (SLT_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 18809 | /* 47757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 18810 | /* 47760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18811 | /* 47762 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 18812 | /* 47764 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 18813 | /* 47766 */ GIR_RootConstrainSelectedInstOperands, |
| 18814 | /* 47767 */ // GIR_Coverage, 1150, |
| 18815 | /* 47767 */ GIR_EraseRootFromParent_Done, |
| 18816 | /* 47768 */ // Label 1227: @47768 |
| 18817 | /* 47768 */ GIM_Try, /*On fail goto*//*Label 1228*/ GIMT_Encode4(47800), // Rule ID 1151 // |
| 18818 | /* 47773 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 18819 | /* 47776 */ // MIs[0] Operand 1 |
| 18820 | /* 47776 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULT), |
| 18821 | /* 47781 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18822 | /* 47785 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18823 | /* 47789 */ // (setcc:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt, SETULT:{ *:[Other] }) => (SLTu_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 18824 | /* 47789 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 18825 | /* 47792 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18826 | /* 47794 */ GIR_RootToRootCopy, /*OpIdx*/2, // rs |
| 18827 | /* 47796 */ GIR_RootToRootCopy, /*OpIdx*/3, // rt |
| 18828 | /* 47798 */ GIR_RootConstrainSelectedInstOperands, |
| 18829 | /* 47799 */ // GIR_Coverage, 1151, |
| 18830 | /* 47799 */ GIR_EraseRootFromParent_Done, |
| 18831 | /* 47800 */ // Label 1228: @47800 |
| 18832 | /* 47800 */ GIM_Try, /*On fail goto*//*Label 1229*/ GIMT_Encode4(47856), // Rule ID 1492 // |
| 18833 | /* 47805 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18834 | /* 47808 */ // MIs[0] Operand 1 |
| 18835 | /* 47808 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 18836 | /* 47813 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18837 | /* 47817 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18838 | /* 47821 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }) => (SLTiu:{ *:[i32] } (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), 1:{ *:[i32] }) |
| 18839 | /* 47821 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18840 | /* 47824 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 18841 | /* 47828 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18842 | /* 47833 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 18843 | /* 47837 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 18844 | /* 47841 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18845 | /* 47843 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTiu), |
| 18846 | /* 47846 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18847 | /* 47848 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18848 | /* 47851 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18849 | /* 47854 */ GIR_RootConstrainSelectedInstOperands, |
| 18850 | /* 47855 */ // GIR_Coverage, 1492, |
| 18851 | /* 47855 */ GIR_EraseRootFromParent_Done, |
| 18852 | /* 47856 */ // Label 1229: @47856 |
| 18853 | /* 47856 */ GIM_Try, /*On fail goto*//*Label 1230*/ GIMT_Encode4(47915), // Rule ID 1493 // |
| 18854 | /* 47861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18855 | /* 47864 */ // MIs[0] Operand 1 |
| 18856 | /* 47864 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 18857 | /* 47869 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18858 | /* 47873 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18859 | /* 47877 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }) => (SLTu:{ *:[i32] } ZERO:{ *:[i32] }, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs)) |
| 18860 | /* 47877 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18861 | /* 47880 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 18862 | /* 47884 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18863 | /* 47889 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 18864 | /* 47893 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 18865 | /* 47897 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18866 | /* 47899 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 18867 | /* 47902 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18868 | /* 47904 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 18869 | /* 47910 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18870 | /* 47913 */ GIR_RootConstrainSelectedInstOperands, |
| 18871 | /* 47914 */ // GIR_Coverage, 1493, |
| 18872 | /* 47914 */ GIR_EraseRootFromParent_Done, |
| 18873 | /* 47915 */ // Label 1230: @47915 |
| 18874 | /* 47915 */ GIM_Try, /*On fail goto*//*Label 1231*/ GIMT_Encode4(47971), // Rule ID 1494 // |
| 18875 | /* 47920 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18876 | /* 47923 */ // MIs[0] Operand 1 |
| 18877 | /* 47923 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 18878 | /* 47928 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18879 | /* 47932 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18880 | /* 47936 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), 1:{ *:[i32] }) |
| 18881 | /* 47936 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18882 | /* 47939 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 18883 | /* 47943 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18884 | /* 47948 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 18885 | /* 47952 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 18886 | /* 47956 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18887 | /* 47958 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 18888 | /* 47961 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18889 | /* 47963 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18890 | /* 47966 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18891 | /* 47969 */ GIR_RootConstrainSelectedInstOperands, |
| 18892 | /* 47970 */ // GIR_Coverage, 1494, |
| 18893 | /* 47970 */ GIR_EraseRootFromParent_Done, |
| 18894 | /* 47971 */ // Label 1231: @47971 |
| 18895 | /* 47971 */ GIM_Try, /*On fail goto*//*Label 1232*/ GIMT_Encode4(48027), // Rule ID 1495 // |
| 18896 | /* 47976 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18897 | /* 47979 */ // MIs[0] Operand 1 |
| 18898 | /* 47979 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 18899 | /* 47984 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18900 | /* 47988 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18901 | /* 47992 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), 1:{ *:[i32] }) |
| 18902 | /* 47992 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18903 | /* 47995 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 18904 | /* 47999 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18905 | /* 48004 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 18906 | /* 48008 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 18907 | /* 48012 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18908 | /* 48014 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 18909 | /* 48017 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18910 | /* 48019 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18911 | /* 48022 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18912 | /* 48025 */ GIR_RootConstrainSelectedInstOperands, |
| 18913 | /* 48026 */ // GIR_Coverage, 1495, |
| 18914 | /* 48026 */ GIR_EraseRootFromParent_Done, |
| 18915 | /* 48027 */ // Label 1232: @48027 |
| 18916 | /* 48027 */ GIM_Try, /*On fail goto*//*Label 1233*/ GIMT_Encode4(48059), // Rule ID 1496 // |
| 18917 | /* 48032 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18918 | /* 48035 */ // MIs[0] Operand 1 |
| 18919 | /* 48035 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 18920 | /* 48040 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18921 | /* 48044 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18922 | /* 48048 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGT:{ *:[Other] }) => (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs) |
| 18923 | /* 48048 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 18924 | /* 48051 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18925 | /* 48053 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 18926 | /* 48055 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18927 | /* 48057 */ GIR_RootConstrainSelectedInstOperands, |
| 18928 | /* 48058 */ // GIR_Coverage, 1496, |
| 18929 | /* 48058 */ GIR_EraseRootFromParent_Done, |
| 18930 | /* 48059 */ // Label 1233: @48059 |
| 18931 | /* 48059 */ GIM_Try, /*On fail goto*//*Label 1234*/ GIMT_Encode4(48091), // Rule ID 1497 // |
| 18932 | /* 48064 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18933 | /* 48067 */ // MIs[0] Operand 1 |
| 18934 | /* 48067 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGT), |
| 18935 | /* 48072 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18936 | /* 48076 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18937 | /* 48080 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGT:{ *:[Other] }) => (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs) |
| 18938 | /* 48080 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 18939 | /* 48083 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 18940 | /* 48085 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 18941 | /* 48087 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 18942 | /* 48089 */ GIR_RootConstrainSelectedInstOperands, |
| 18943 | /* 48090 */ // GIR_Coverage, 1497, |
| 18944 | /* 48090 */ GIR_EraseRootFromParent_Done, |
| 18945 | /* 48091 */ // Label 1234: @48091 |
| 18946 | /* 48091 */ GIM_Try, /*On fail goto*//*Label 1235*/ GIMT_Encode4(48147), // Rule ID 1498 // |
| 18947 | /* 48096 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18948 | /* 48099 */ // MIs[0] Operand 1 |
| 18949 | /* 48099 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 18950 | /* 48104 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18951 | /* 48108 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18952 | /* 48112 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), 1:{ *:[i32] }) |
| 18953 | /* 48112 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18954 | /* 48115 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 18955 | /* 48119 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18956 | /* 48124 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 18957 | /* 48128 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 18958 | /* 48132 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18959 | /* 48134 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 18960 | /* 48137 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18961 | /* 48139 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18962 | /* 48142 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18963 | /* 48145 */ GIR_RootConstrainSelectedInstOperands, |
| 18964 | /* 48146 */ // GIR_Coverage, 1498, |
| 18965 | /* 48146 */ GIR_EraseRootFromParent_Done, |
| 18966 | /* 48147 */ // Label 1235: @48147 |
| 18967 | /* 48147 */ GIM_Try, /*On fail goto*//*Label 1236*/ GIMT_Encode4(48203), // Rule ID 1499 // |
| 18968 | /* 48152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 18969 | /* 48155 */ // MIs[0] Operand 1 |
| 18970 | /* 48155 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 18971 | /* 48160 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18972 | /* 48164 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18973 | /* 48168 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), 1:{ *:[i32] }) |
| 18974 | /* 48168 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 18975 | /* 48171 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 18976 | /* 48175 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 18977 | /* 48180 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 18978 | /* 48184 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 18979 | /* 48188 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 18980 | /* 48190 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 18981 | /* 48193 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 18982 | /* 48195 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 18983 | /* 48198 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 18984 | /* 48201 */ GIR_RootConstrainSelectedInstOperands, |
| 18985 | /* 48202 */ // GIR_Coverage, 1499, |
| 18986 | /* 48202 */ GIR_EraseRootFromParent_Done, |
| 18987 | /* 48203 */ // Label 1236: @48203 |
| 18988 | /* 48203 */ GIM_Reject, |
| 18989 | /* 48204 */ // Label 1226: @48204 |
| 18990 | /* 48204 */ GIM_Reject, |
| 18991 | /* 48205 */ // Label 1224: @48205 |
| 18992 | /* 48205 */ GIM_Try, /*On fail goto*//*Label 1237*/ GIMT_Encode4(48621), |
| 18993 | /* 48210 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 18994 | /* 48213 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 18995 | /* 48217 */ GIM_Try, /*On fail goto*//*Label 1238*/ GIMT_Encode4(48273), // Rule ID 1666 // |
| 18996 | /* 48222 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 18997 | /* 48225 */ // MIs[0] Operand 1 |
| 18998 | /* 48225 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 18999 | /* 48230 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19000 | /* 48234 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19001 | /* 48238 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETEQ:{ *:[Other] }) => (SLTiu64:{ *:[i32] } (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), 1:{ *:[i64] }) |
| 19002 | /* 48238 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 19003 | /* 48241 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 19004 | /* 48245 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19005 | /* 48250 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19006 | /* 48254 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19007 | /* 48258 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19008 | /* 48260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTiu64), |
| 19009 | /* 48263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19010 | /* 48265 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19011 | /* 48268 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19012 | /* 48271 */ GIR_RootConstrainSelectedInstOperands, |
| 19013 | /* 48272 */ // GIR_Coverage, 1666, |
| 19014 | /* 48272 */ GIR_EraseRootFromParent_Done, |
| 19015 | /* 48273 */ // Label 1238: @48273 |
| 19016 | /* 48273 */ GIM_Try, /*On fail goto*//*Label 1239*/ GIMT_Encode4(48332), // Rule ID 1667 // |
| 19017 | /* 48278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 19018 | /* 48281 */ // MIs[0] Operand 1 |
| 19019 | /* 48281 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 19020 | /* 48286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19021 | /* 48290 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19022 | /* 48294 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETNE:{ *:[Other] }) => (SLTu64:{ *:[i32] } ZERO_64:{ *:[i64] }, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs)) |
| 19023 | /* 48294 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 19024 | /* 48297 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 19025 | /* 48301 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19026 | /* 48306 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19027 | /* 48310 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19028 | /* 48314 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19029 | /* 48316 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 19030 | /* 48319 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 19031 | /* 48321 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO_64), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 19032 | /* 48327 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19033 | /* 48330 */ GIR_RootConstrainSelectedInstOperands, |
| 19034 | /* 48331 */ // GIR_Coverage, 1667, |
| 19035 | /* 48331 */ GIR_EraseRootFromParent_Done, |
| 19036 | /* 48332 */ // Label 1239: @48332 |
| 19037 | /* 48332 */ GIM_Try, /*On fail goto*//*Label 1240*/ GIMT_Encode4(48388), // Rule ID 1668 // |
| 19038 | /* 48337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 19039 | /* 48340 */ // MIs[0] Operand 1 |
| 19040 | /* 48340 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 19041 | /* 48345 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19042 | /* 48349 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19043 | /* 48353 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETLE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), 1:{ *:[i32] }) |
| 19044 | /* 48353 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19045 | /* 48356 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 19046 | /* 48360 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19047 | /* 48365 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19048 | /* 48369 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19049 | /* 48373 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19050 | /* 48375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 19051 | /* 48378 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19052 | /* 48380 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19053 | /* 48383 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19054 | /* 48386 */ GIR_RootConstrainSelectedInstOperands, |
| 19055 | /* 48387 */ // GIR_Coverage, 1668, |
| 19056 | /* 48387 */ GIR_EraseRootFromParent_Done, |
| 19057 | /* 48388 */ // Label 1240: @48388 |
| 19058 | /* 48388 */ GIM_Try, /*On fail goto*//*Label 1241*/ GIMT_Encode4(48444), // Rule ID 1669 // |
| 19059 | /* 48393 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 19060 | /* 48396 */ // MIs[0] Operand 1 |
| 19061 | /* 48396 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 19062 | /* 48401 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19063 | /* 48405 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19064 | /* 48409 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETULE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), 1:{ *:[i32] }) |
| 19065 | /* 48409 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19066 | /* 48412 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 19067 | /* 48416 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19068 | /* 48421 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19069 | /* 48425 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19070 | /* 48429 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19071 | /* 48431 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 19072 | /* 48434 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19073 | /* 48436 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19074 | /* 48439 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19075 | /* 48442 */ GIR_RootConstrainSelectedInstOperands, |
| 19076 | /* 48443 */ // GIR_Coverage, 1669, |
| 19077 | /* 48443 */ GIR_EraseRootFromParent_Done, |
| 19078 | /* 48444 */ // Label 1241: @48444 |
| 19079 | /* 48444 */ GIM_Try, /*On fail goto*//*Label 1242*/ GIMT_Encode4(48476), // Rule ID 1670 // |
| 19080 | /* 48449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 19081 | /* 48452 */ // MIs[0] Operand 1 |
| 19082 | /* 48452 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 19083 | /* 48457 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19084 | /* 48461 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19085 | /* 48465 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETGT:{ *:[Other] }) => (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs) |
| 19086 | /* 48465 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 19087 | /* 48468 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 19088 | /* 48470 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 19089 | /* 48472 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 19090 | /* 48474 */ GIR_RootConstrainSelectedInstOperands, |
| 19091 | /* 48475 */ // GIR_Coverage, 1670, |
| 19092 | /* 48475 */ GIR_EraseRootFromParent_Done, |
| 19093 | /* 48476 */ // Label 1242: @48476 |
| 19094 | /* 48476 */ GIM_Try, /*On fail goto*//*Label 1243*/ GIMT_Encode4(48508), // Rule ID 1671 // |
| 19095 | /* 48481 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 19096 | /* 48484 */ // MIs[0] Operand 1 |
| 19097 | /* 48484 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGT), |
| 19098 | /* 48489 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19099 | /* 48493 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19100 | /* 48497 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETUGT:{ *:[Other] }) => (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs) |
| 19101 | /* 48497 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 19102 | /* 48500 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 19103 | /* 48502 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 19104 | /* 48504 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 19105 | /* 48506 */ GIR_RootConstrainSelectedInstOperands, |
| 19106 | /* 48507 */ // GIR_Coverage, 1671, |
| 19107 | /* 48507 */ GIR_EraseRootFromParent_Done, |
| 19108 | /* 48508 */ // Label 1243: @48508 |
| 19109 | /* 48508 */ GIM_Try, /*On fail goto*//*Label 1244*/ GIMT_Encode4(48564), // Rule ID 1672 // |
| 19110 | /* 48513 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 19111 | /* 48516 */ // MIs[0] Operand 1 |
| 19112 | /* 48516 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 19113 | /* 48521 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19114 | /* 48525 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19115 | /* 48529 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETGE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), 1:{ *:[i32] }) |
| 19116 | /* 48529 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19117 | /* 48532 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 19118 | /* 48536 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19119 | /* 48541 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19120 | /* 48545 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19121 | /* 48549 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19122 | /* 48551 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 19123 | /* 48554 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19124 | /* 48556 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19125 | /* 48559 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19126 | /* 48562 */ GIR_RootConstrainSelectedInstOperands, |
| 19127 | /* 48563 */ // GIR_Coverage, 1672, |
| 19128 | /* 48563 */ GIR_EraseRootFromParent_Done, |
| 19129 | /* 48564 */ // Label 1244: @48564 |
| 19130 | /* 48564 */ GIM_Try, /*On fail goto*//*Label 1245*/ GIMT_Encode4(48620), // Rule ID 1673 // |
| 19131 | /* 48569 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips3_HasStdEnc_IsGP64bit_NotInMicroMips), |
| 19132 | /* 48572 */ // MIs[0] Operand 1 |
| 19133 | /* 48572 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 19134 | /* 48577 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19135 | /* 48581 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 19136 | /* 48585 */ // (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETUGE:{ *:[Other] }) => (XORi:{ *:[i32] } (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), 1:{ *:[i32] }) |
| 19137 | /* 48585 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19138 | /* 48588 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 19139 | /* 48592 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19140 | /* 48597 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19141 | /* 48601 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19142 | /* 48605 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19143 | /* 48607 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi), |
| 19144 | /* 48610 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19145 | /* 48612 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19146 | /* 48615 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19147 | /* 48618 */ GIR_RootConstrainSelectedInstOperands, |
| 19148 | /* 48619 */ // GIR_Coverage, 1673, |
| 19149 | /* 48619 */ GIR_EraseRootFromParent_Done, |
| 19150 | /* 48620 */ // Label 1245: @48620 |
| 19151 | /* 48620 */ GIM_Reject, |
| 19152 | /* 48621 */ // Label 1237: @48621 |
| 19153 | /* 48621 */ GIM_Reject, |
| 19154 | /* 48622 */ // Label 1225: @48622 |
| 19155 | /* 48622 */ GIM_Try, /*On fail goto*//*Label 1246*/ GIMT_Encode4(49658), |
| 19156 | /* 48627 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 19157 | /* 48630 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 19158 | /* 48633 */ GIM_Try, /*On fail goto*//*Label 1247*/ GIMT_Encode4(48693), // Rule ID 2013 // |
| 19159 | /* 48638 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19160 | /* 48641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19161 | /* 48645 */ // MIs[0] Operand 1 |
| 19162 | /* 48645 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 19163 | /* 48650 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19164 | /* 48654 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19165 | /* 48658 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }) => (SltiuCCRxImmX16:{ *:[i32] } (XorRxRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs), 1:{ *:[i32] }) |
| 19166 | /* 48658 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19167 | /* 48661 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 19168 | /* 48665 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19169 | /* 48670 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19170 | /* 48674 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19171 | /* 48678 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19172 | /* 48680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SltiuCCRxImmX16), |
| 19173 | /* 48683 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[cc] |
| 19174 | /* 48685 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19175 | /* 48688 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19176 | /* 48691 */ GIR_RootConstrainSelectedInstOperands, |
| 19177 | /* 48692 */ // GIR_Coverage, 2013, |
| 19178 | /* 48692 */ GIR_EraseRootFromParent_Done, |
| 19179 | /* 48693 */ // Label 1247: @48693 |
| 19180 | /* 48693 */ GIM_Try, /*On fail goto*//*Label 1248*/ GIMT_Encode4(48770), // Rule ID 2015 // |
| 19181 | /* 48698 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19182 | /* 48701 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19183 | /* 48705 */ // MIs[0] Operand 1 |
| 19184 | /* 48705 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 19185 | /* 48710 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19186 | /* 48714 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19187 | /* 48718 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }) => (XorRxRxRy16:{ *:[i32] } (SltCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs), (LiRxImmX16:{ *:[i32] } 1:{ *:[i32] })) |
| 19188 | /* 48718 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 19189 | /* 48721 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::LiRxImmX16), |
| 19190 | /* 48725 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19191 | /* 48730 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/1, |
| 19192 | /* 48733 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19193 | /* 48735 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19194 | /* 48738 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SltCCRxRy16), |
| 19195 | /* 48742 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19196 | /* 48747 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19197 | /* 48751 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19198 | /* 48755 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19199 | /* 48757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 19200 | /* 48760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rz] |
| 19201 | /* 48762 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19202 | /* 48765 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 19203 | /* 48768 */ GIR_RootConstrainSelectedInstOperands, |
| 19204 | /* 48769 */ // GIR_Coverage, 2015, |
| 19205 | /* 48769 */ GIR_EraseRootFromParent_Done, |
| 19206 | /* 48770 */ // Label 1248: @48770 |
| 19207 | /* 48770 */ GIM_Try, /*On fail goto*//*Label 1249*/ GIMT_Encode4(48806), // Rule ID 2017 // |
| 19208 | /* 48775 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19209 | /* 48778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19210 | /* 48782 */ // MIs[0] Operand 1 |
| 19211 | /* 48782 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 19212 | /* 48787 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19213 | /* 48791 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19214 | /* 48795 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETGT:{ *:[Other] }) => (SltCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rhs, CPU16Regs:{ *:[i32] }:$lhs) |
| 19215 | /* 48795 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SltCCRxRy16), |
| 19216 | /* 48798 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[cc] |
| 19217 | /* 48800 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 19218 | /* 48802 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 19219 | /* 48804 */ GIR_RootConstrainSelectedInstOperands, |
| 19220 | /* 48805 */ // GIR_Coverage, 2017, |
| 19221 | /* 48805 */ GIR_EraseRootFromParent_Done, |
| 19222 | /* 48806 */ // Label 1249: @48806 |
| 19223 | /* 48806 */ GIM_Try, /*On fail goto*//*Label 1250*/ GIMT_Encode4(48883), // Rule ID 2018 // |
| 19224 | /* 48811 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19225 | /* 48814 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19226 | /* 48818 */ // MIs[0] Operand 1 |
| 19227 | /* 48818 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 19228 | /* 48823 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19229 | /* 48827 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19230 | /* 48831 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }) => (XorRxRxRy16:{ *:[i32] } (SltCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rhs, CPU16Regs:{ *:[i32] }:$lhs), (LiRxImm16:{ *:[i32] } 1:{ *:[i32] })) |
| 19231 | /* 48831 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 19232 | /* 48834 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::LiRxImm16), |
| 19233 | /* 48838 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19234 | /* 48843 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/1, |
| 19235 | /* 48846 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19236 | /* 48848 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19237 | /* 48851 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SltCCRxRy16), |
| 19238 | /* 48855 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19239 | /* 48860 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19240 | /* 48864 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19241 | /* 48868 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19242 | /* 48870 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 19243 | /* 48873 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rz] |
| 19244 | /* 48875 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19245 | /* 48878 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 19246 | /* 48881 */ GIR_RootConstrainSelectedInstOperands, |
| 19247 | /* 48882 */ // GIR_Coverage, 2018, |
| 19248 | /* 48882 */ GIR_EraseRootFromParent_Done, |
| 19249 | /* 48883 */ // Label 1250: @48883 |
| 19250 | /* 48883 */ GIM_Try, /*On fail goto*//*Label 1251*/ GIMT_Encode4(48919), // Rule ID 2019 // |
| 19251 | /* 48888 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19252 | /* 48891 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19253 | /* 48895 */ // MIs[0] Operand 1 |
| 19254 | /* 48895 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLT), |
| 19255 | /* 48900 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19256 | /* 48904 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19257 | /* 48908 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETLT:{ *:[Other] }) => (SltCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry) |
| 19258 | /* 48908 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SltCCRxRy16), |
| 19259 | /* 48911 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[cc] |
| 19260 | /* 48913 */ GIR_RootToRootCopy, /*OpIdx*/2, // rx |
| 19261 | /* 48915 */ GIR_RootToRootCopy, /*OpIdx*/3, // ry |
| 19262 | /* 48917 */ GIR_RootConstrainSelectedInstOperands, |
| 19263 | /* 48918 */ // GIR_Coverage, 2019, |
| 19264 | /* 48918 */ GIR_EraseRootFromParent_Done, |
| 19265 | /* 48919 */ // Label 1251: @48919 |
| 19266 | /* 48919 */ GIM_Try, /*On fail goto*//*Label 1252*/ GIMT_Encode4(48996), // Rule ID 2021 // |
| 19267 | /* 48924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19268 | /* 48927 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19269 | /* 48931 */ // MIs[0] Operand 1 |
| 19270 | /* 48931 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 19271 | /* 48936 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19272 | /* 48940 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19273 | /* 48944 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }) => (SltuCCRxRy16:{ *:[i32] } (LiRxImmX16:{ *:[i32] } 0:{ *:[i32] }), (XorRxRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs)) |
| 19274 | /* 48944 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 19275 | /* 48947 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 19276 | /* 48951 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19277 | /* 48956 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19278 | /* 48960 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19279 | /* 48964 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19280 | /* 48966 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19281 | /* 48969 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::LiRxImmX16), |
| 19282 | /* 48973 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19283 | /* 48978 */ GIR_AddImm8, /*InsnID*/1, /*Imm*/0, |
| 19284 | /* 48981 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19285 | /* 48983 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SltuCCRxRy16), |
| 19286 | /* 48986 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[cc] |
| 19287 | /* 48988 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19288 | /* 48991 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 19289 | /* 48994 */ GIR_RootConstrainSelectedInstOperands, |
| 19290 | /* 48995 */ // GIR_Coverage, 2021, |
| 19291 | /* 48995 */ GIR_EraseRootFromParent_Done, |
| 19292 | /* 48996 */ // Label 1252: @48996 |
| 19293 | /* 48996 */ GIM_Try, /*On fail goto*//*Label 1253*/ GIMT_Encode4(49073), // Rule ID 2022 // |
| 19294 | /* 49001 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19295 | /* 49004 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19296 | /* 49008 */ // MIs[0] Operand 1 |
| 19297 | /* 49008 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 19298 | /* 49013 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19299 | /* 49017 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19300 | /* 49021 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }) => (XorRxRxRy16:{ *:[i32] } (SltuCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs), (LiRxImmX16:{ *:[i32] } 1:{ *:[i32] })) |
| 19301 | /* 49021 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 19302 | /* 49024 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::LiRxImmX16), |
| 19303 | /* 49028 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19304 | /* 49033 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/1, |
| 19305 | /* 49036 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19306 | /* 49038 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19307 | /* 49041 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SltuCCRxRy16), |
| 19308 | /* 49045 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19309 | /* 49050 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19310 | /* 49054 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19311 | /* 49058 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19312 | /* 49060 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 19313 | /* 49063 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rz] |
| 19314 | /* 49065 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19315 | /* 49068 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 19316 | /* 49071 */ GIR_RootConstrainSelectedInstOperands, |
| 19317 | /* 49072 */ // GIR_Coverage, 2022, |
| 19318 | /* 49072 */ GIR_EraseRootFromParent_Done, |
| 19319 | /* 49073 */ // Label 1253: @49073 |
| 19320 | /* 49073 */ GIM_Try, /*On fail goto*//*Label 1254*/ GIMT_Encode4(49109), // Rule ID 2023 // |
| 19321 | /* 49078 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19322 | /* 49081 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19323 | /* 49085 */ // MIs[0] Operand 1 |
| 19324 | /* 49085 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGT), |
| 19325 | /* 49090 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19326 | /* 49094 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19327 | /* 49098 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETUGT:{ *:[Other] }) => (SltuCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rhs, CPU16Regs:{ *:[i32] }:$lhs) |
| 19328 | /* 49098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SltuCCRxRy16), |
| 19329 | /* 49101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[cc] |
| 19330 | /* 49103 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 19331 | /* 49105 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 19332 | /* 49107 */ GIR_RootConstrainSelectedInstOperands, |
| 19333 | /* 49108 */ // GIR_Coverage, 2023, |
| 19334 | /* 49108 */ GIR_EraseRootFromParent_Done, |
| 19335 | /* 49109 */ // Label 1254: @49109 |
| 19336 | /* 49109 */ GIM_Try, /*On fail goto*//*Label 1255*/ GIMT_Encode4(49186), // Rule ID 2024 // |
| 19337 | /* 49114 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19338 | /* 49117 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19339 | /* 49121 */ // MIs[0] Operand 1 |
| 19340 | /* 49121 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 19341 | /* 49126 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19342 | /* 49130 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19343 | /* 49134 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$lhs, CPU16Regs:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }) => (XorRxRxRy16:{ *:[i32] } (SltuCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rhs, CPU16Regs:{ *:[i32] }:$lhs), (LiRxImmX16:{ *:[i32] } 1:{ *:[i32] })) |
| 19344 | /* 49134 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 19345 | /* 49137 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::LiRxImmX16), |
| 19346 | /* 49141 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19347 | /* 49146 */ GIR_AddImm8, /*InsnID*/2, /*Imm*/1, |
| 19348 | /* 49149 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 19349 | /* 49151 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19350 | /* 49154 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SltuCCRxRy16), |
| 19351 | /* 49158 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19352 | /* 49163 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19353 | /* 49167 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19354 | /* 49171 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19355 | /* 49173 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XorRxRxRy16), |
| 19356 | /* 49176 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rz] |
| 19357 | /* 49178 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19358 | /* 49181 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 19359 | /* 49184 */ GIR_RootConstrainSelectedInstOperands, |
| 19360 | /* 49185 */ // GIR_Coverage, 2024, |
| 19361 | /* 49185 */ GIR_EraseRootFromParent_Done, |
| 19362 | /* 49186 */ // Label 1255: @49186 |
| 19363 | /* 49186 */ GIM_Try, /*On fail goto*//*Label 1256*/ GIMT_Encode4(49222), // Rule ID 2025 // |
| 19364 | /* 49191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 19365 | /* 49194 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19366 | /* 49198 */ // MIs[0] Operand 1 |
| 19367 | /* 49198 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULT), |
| 19368 | /* 49203 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19369 | /* 49207 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 19370 | /* 49211 */ // (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry, SETULT:{ *:[Other] }) => (SltuCCRxRy16:{ *:[i32] } CPU16Regs:{ *:[i32] }:$rx, CPU16Regs:{ *:[i32] }:$ry) |
| 19371 | /* 49211 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SltuCCRxRy16), |
| 19372 | /* 49214 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[cc] |
| 19373 | /* 49216 */ GIR_RootToRootCopy, /*OpIdx*/2, // rx |
| 19374 | /* 49218 */ GIR_RootToRootCopy, /*OpIdx*/3, // ry |
| 19375 | /* 49220 */ GIR_RootConstrainSelectedInstOperands, |
| 19376 | /* 49221 */ // GIR_Coverage, 2025, |
| 19377 | /* 49221 */ GIR_EraseRootFromParent_Done, |
| 19378 | /* 49222 */ // Label 1256: @49222 |
| 19379 | /* 49222 */ GIM_Try, /*On fail goto*//*Label 1257*/ GIMT_Encode4(49282), // Rule ID 2337 // |
| 19380 | /* 49227 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19381 | /* 49230 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19382 | /* 49234 */ // MIs[0] Operand 1 |
| 19383 | /* 49234 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 19384 | /* 49239 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19385 | /* 49243 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19386 | /* 49247 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }) => (SLTiu_MM:{ *:[i32] } (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), 1:{ *:[i32] }) |
| 19387 | /* 49247 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19388 | /* 49250 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 19389 | /* 49254 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19390 | /* 49259 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19391 | /* 49263 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19392 | /* 49267 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19393 | /* 49269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTiu_MM), |
| 19394 | /* 49272 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19395 | /* 49274 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19396 | /* 49277 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19397 | /* 49280 */ GIR_RootConstrainSelectedInstOperands, |
| 19398 | /* 49281 */ // GIR_Coverage, 2337, |
| 19399 | /* 49281 */ GIR_EraseRootFromParent_Done, |
| 19400 | /* 49282 */ // Label 1257: @49282 |
| 19401 | /* 49282 */ GIM_Try, /*On fail goto*//*Label 1258*/ GIMT_Encode4(49345), // Rule ID 2338 // |
| 19402 | /* 49287 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19403 | /* 49290 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19404 | /* 49294 */ // MIs[0] Operand 1 |
| 19405 | /* 49294 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 19406 | /* 49299 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19407 | /* 49303 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19408 | /* 49307 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }) => (SLTu_MM:{ *:[i32] } ZERO:{ *:[i32] }, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs)) |
| 19409 | /* 49307 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19410 | /* 49310 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 19411 | /* 49314 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19412 | /* 49319 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19413 | /* 49323 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19414 | /* 49327 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19415 | /* 49329 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 19416 | /* 49332 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 19417 | /* 49334 */ GIR_AddRegister, /*InsnID*/0, GIMT_Encode2(Mips::ZERO), /*AddRegisterRegFlags*/GIMT_Encode2(0), |
| 19418 | /* 49340 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19419 | /* 49343 */ GIR_RootConstrainSelectedInstOperands, |
| 19420 | /* 49344 */ // GIR_Coverage, 2338, |
| 19421 | /* 49344 */ GIR_EraseRootFromParent_Done, |
| 19422 | /* 49345 */ // Label 1258: @49345 |
| 19423 | /* 49345 */ GIM_Try, /*On fail goto*//*Label 1259*/ GIMT_Encode4(49405), // Rule ID 2339 // |
| 19424 | /* 49350 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19425 | /* 49353 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19426 | /* 49357 */ // MIs[0] Operand 1 |
| 19427 | /* 49357 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 19428 | /* 49362 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19429 | /* 49366 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19430 | /* 49370 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }) => (XORi_MM:{ *:[i32] } (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), 1:{ *:[i32] }) |
| 19431 | /* 49370 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19432 | /* 49373 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 19433 | /* 49377 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19434 | /* 49382 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19435 | /* 49386 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19436 | /* 49390 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19437 | /* 49392 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi_MM), |
| 19438 | /* 49395 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19439 | /* 49397 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19440 | /* 49400 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19441 | /* 49403 */ GIR_RootConstrainSelectedInstOperands, |
| 19442 | /* 49404 */ // GIR_Coverage, 2339, |
| 19443 | /* 49404 */ GIR_EraseRootFromParent_Done, |
| 19444 | /* 49405 */ // Label 1259: @49405 |
| 19445 | /* 49405 */ GIM_Try, /*On fail goto*//*Label 1260*/ GIMT_Encode4(49465), // Rule ID 2340 // |
| 19446 | /* 49410 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19447 | /* 49413 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19448 | /* 49417 */ // MIs[0] Operand 1 |
| 19449 | /* 49417 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 19450 | /* 49422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19451 | /* 49426 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19452 | /* 49430 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }) => (XORi_MM:{ *:[i32] } (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), 1:{ *:[i32] }) |
| 19453 | /* 49430 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19454 | /* 49433 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 19455 | /* 49437 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19456 | /* 49442 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19457 | /* 49446 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19458 | /* 49450 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19459 | /* 49452 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi_MM), |
| 19460 | /* 49455 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19461 | /* 49457 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19462 | /* 49460 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19463 | /* 49463 */ GIR_RootConstrainSelectedInstOperands, |
| 19464 | /* 49464 */ // GIR_Coverage, 2340, |
| 19465 | /* 49464 */ GIR_EraseRootFromParent_Done, |
| 19466 | /* 49465 */ // Label 1260: @49465 |
| 19467 | /* 49465 */ GIM_Try, /*On fail goto*//*Label 1261*/ GIMT_Encode4(49501), // Rule ID 2341 // |
| 19468 | /* 49470 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19469 | /* 49473 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19470 | /* 49477 */ // MIs[0] Operand 1 |
| 19471 | /* 49477 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 19472 | /* 49482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19473 | /* 49486 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19474 | /* 49490 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGT:{ *:[Other] }) => (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs) |
| 19475 | /* 49490 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 19476 | /* 49493 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 19477 | /* 49495 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 19478 | /* 49497 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 19479 | /* 49499 */ GIR_RootConstrainSelectedInstOperands, |
| 19480 | /* 49500 */ // GIR_Coverage, 2341, |
| 19481 | /* 49500 */ GIR_EraseRootFromParent_Done, |
| 19482 | /* 49501 */ // Label 1261: @49501 |
| 19483 | /* 49501 */ GIM_Try, /*On fail goto*//*Label 1262*/ GIMT_Encode4(49537), // Rule ID 2342 // |
| 19484 | /* 49506 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19485 | /* 49509 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19486 | /* 49513 */ // MIs[0] Operand 1 |
| 19487 | /* 49513 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGT), |
| 19488 | /* 49518 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19489 | /* 49522 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19490 | /* 49526 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGT:{ *:[Other] }) => (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs) |
| 19491 | /* 49526 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 19492 | /* 49529 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 19493 | /* 49531 */ GIR_RootToRootCopy, /*OpIdx*/3, // rhs |
| 19494 | /* 49533 */ GIR_RootToRootCopy, /*OpIdx*/2, // lhs |
| 19495 | /* 49535 */ GIR_RootConstrainSelectedInstOperands, |
| 19496 | /* 49536 */ // GIR_Coverage, 2342, |
| 19497 | /* 49536 */ GIR_EraseRootFromParent_Done, |
| 19498 | /* 49537 */ // Label 1262: @49537 |
| 19499 | /* 49537 */ GIM_Try, /*On fail goto*//*Label 1263*/ GIMT_Encode4(49597), // Rule ID 2343 // |
| 19500 | /* 49542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19501 | /* 49545 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19502 | /* 49549 */ // MIs[0] Operand 1 |
| 19503 | /* 49549 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 19504 | /* 49554 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19505 | /* 49558 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19506 | /* 49562 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }) => (XORi_MM:{ *:[i32] } (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), 1:{ *:[i32] }) |
| 19507 | /* 49562 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19508 | /* 49565 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 19509 | /* 49569 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19510 | /* 49574 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19511 | /* 49578 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19512 | /* 49582 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19513 | /* 49584 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi_MM), |
| 19514 | /* 49587 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19515 | /* 49589 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19516 | /* 49592 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19517 | /* 49595 */ GIR_RootConstrainSelectedInstOperands, |
| 19518 | /* 49596 */ // GIR_Coverage, 2343, |
| 19519 | /* 49596 */ GIR_EraseRootFromParent_Done, |
| 19520 | /* 49597 */ // Label 1263: @49597 |
| 19521 | /* 49597 */ GIM_Try, /*On fail goto*//*Label 1264*/ GIMT_Encode4(49657), // Rule ID 2344 // |
| 19522 | /* 49602 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 19523 | /* 49605 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19524 | /* 49609 */ // MIs[0] Operand 1 |
| 19525 | /* 49609 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 19526 | /* 49614 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19527 | /* 49618 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 19528 | /* 49622 */ // (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }) => (XORi_MM:{ *:[i32] } (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), 1:{ *:[i32] }) |
| 19529 | /* 49622 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 19530 | /* 49625 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 19531 | /* 49629 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 19532 | /* 49634 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // lhs |
| 19533 | /* 49638 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/3, // rhs |
| 19534 | /* 49642 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 19535 | /* 49644 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::XORi_MM), |
| 19536 | /* 49647 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rt] |
| 19537 | /* 49649 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 19538 | /* 49652 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/1, |
| 19539 | /* 49655 */ GIR_RootConstrainSelectedInstOperands, |
| 19540 | /* 49656 */ // GIR_Coverage, 2344, |
| 19541 | /* 49656 */ GIR_EraseRootFromParent_Done, |
| 19542 | /* 49657 */ // Label 1264: @49657 |
| 19543 | /* 49657 */ GIM_Reject, |
| 19544 | /* 49658 */ // Label 1246: @49658 |
| 19545 | /* 49658 */ GIM_Reject, |
| 19546 | /* 49659 */ // Label 1200: @49659 |
| 19547 | /* 49659 */ GIM_Reject, |
| 19548 | /* 49660 */ // Label 42: @49660 |
| 19549 | /* 49660 */ GIM_Try, /*On fail goto*//*Label 1265*/ GIMT_Encode4(50659), |
| 19550 | /* 49665 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 19551 | /* 49668 */ GIM_SwitchType, /*MI*/0, /*Op*/2, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1268*/ GIMT_Encode4(50163), |
| 19552 | /* 49679 */ /*GILLT_s32*//*Label 1266*/ GIMT_Encode4(49687), |
| 19553 | /* 49683 */ /*GILLT_s64*//*Label 1267*/ GIMT_Encode4(49925), |
| 19554 | /* 49687 */ // Label 1266: @49687 |
| 19555 | /* 49687 */ GIM_Try, /*On fail goto*//*Label 1269*/ GIMT_Encode4(49924), |
| 19556 | /* 49692 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 19557 | /* 49695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32CCRegClassID), |
| 19558 | /* 49699 */ GIM_Try, /*On fail goto*//*Label 1270*/ GIMT_Encode4(49731), // Rule ID 387 // |
| 19559 | /* 49704 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19560 | /* 49707 */ // MIs[0] Operand 1 |
| 19561 | /* 49707 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UNO), |
| 19562 | /* 49712 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19563 | /* 49716 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19564 | /* 49720 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETUO:{ *:[Other] }) => (CMP_UN_S:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19565 | /* 49720 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UN_S), |
| 19566 | /* 49723 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19567 | /* 49725 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19568 | /* 49727 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19569 | /* 49729 */ GIR_RootConstrainSelectedInstOperands, |
| 19570 | /* 49730 */ // GIR_Coverage, 387, |
| 19571 | /* 49730 */ GIR_EraseRootFromParent_Done, |
| 19572 | /* 49731 */ // Label 1270: @49731 |
| 19573 | /* 49731 */ GIM_Try, /*On fail goto*//*Label 1271*/ GIMT_Encode4(49763), // Rule ID 388 // |
| 19574 | /* 49736 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19575 | /* 49739 */ // MIs[0] Operand 1 |
| 19576 | /* 49739 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OEQ), |
| 19577 | /* 49744 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19578 | /* 49748 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19579 | /* 49752 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETOEQ:{ *:[Other] }) => (CMP_EQ_S:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19580 | /* 49752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_EQ_S), |
| 19581 | /* 49755 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19582 | /* 49757 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19583 | /* 49759 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19584 | /* 49761 */ GIR_RootConstrainSelectedInstOperands, |
| 19585 | /* 49762 */ // GIR_Coverage, 388, |
| 19586 | /* 49762 */ GIR_EraseRootFromParent_Done, |
| 19587 | /* 49763 */ // Label 1271: @49763 |
| 19588 | /* 49763 */ GIM_Try, /*On fail goto*//*Label 1272*/ GIMT_Encode4(49795), // Rule ID 389 // |
| 19589 | /* 49768 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19590 | /* 49771 */ // MIs[0] Operand 1 |
| 19591 | /* 49771 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UEQ), |
| 19592 | /* 49776 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19593 | /* 49780 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19594 | /* 49784 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETUEQ:{ *:[Other] }) => (CMP_UEQ_S:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19595 | /* 49784 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UEQ_S), |
| 19596 | /* 49787 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19597 | /* 49789 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19598 | /* 49791 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19599 | /* 49793 */ GIR_RootConstrainSelectedInstOperands, |
| 19600 | /* 49794 */ // GIR_Coverage, 389, |
| 19601 | /* 49794 */ GIR_EraseRootFromParent_Done, |
| 19602 | /* 49795 */ // Label 1272: @49795 |
| 19603 | /* 49795 */ GIM_Try, /*On fail goto*//*Label 1273*/ GIMT_Encode4(49827), // Rule ID 390 // |
| 19604 | /* 49800 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19605 | /* 49803 */ // MIs[0] Operand 1 |
| 19606 | /* 49803 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLT), |
| 19607 | /* 49808 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19608 | /* 49812 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19609 | /* 49816 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETOLT:{ *:[Other] }) => (CMP_LT_S:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19610 | /* 49816 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LT_S), |
| 19611 | /* 49819 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19612 | /* 49821 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19613 | /* 49823 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19614 | /* 49825 */ GIR_RootConstrainSelectedInstOperands, |
| 19615 | /* 49826 */ // GIR_Coverage, 390, |
| 19616 | /* 49826 */ GIR_EraseRootFromParent_Done, |
| 19617 | /* 49827 */ // Label 1273: @49827 |
| 19618 | /* 49827 */ GIM_Try, /*On fail goto*//*Label 1274*/ GIMT_Encode4(49859), // Rule ID 391 // |
| 19619 | /* 49832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19620 | /* 49835 */ // MIs[0] Operand 1 |
| 19621 | /* 49835 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULT), |
| 19622 | /* 49840 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19623 | /* 49844 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19624 | /* 49848 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETULT:{ *:[Other] }) => (CMP_ULT_S:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19625 | /* 49848 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULT_S), |
| 19626 | /* 49851 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19627 | /* 49853 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19628 | /* 49855 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19629 | /* 49857 */ GIR_RootConstrainSelectedInstOperands, |
| 19630 | /* 49858 */ // GIR_Coverage, 391, |
| 19631 | /* 49858 */ GIR_EraseRootFromParent_Done, |
| 19632 | /* 49859 */ // Label 1274: @49859 |
| 19633 | /* 49859 */ GIM_Try, /*On fail goto*//*Label 1275*/ GIMT_Encode4(49891), // Rule ID 392 // |
| 19634 | /* 49864 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19635 | /* 49867 */ // MIs[0] Operand 1 |
| 19636 | /* 49867 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLE), |
| 19637 | /* 49872 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19638 | /* 49876 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19639 | /* 49880 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETOLE:{ *:[Other] }) => (CMP_LE_S:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19640 | /* 49880 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LE_S), |
| 19641 | /* 49883 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19642 | /* 49885 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19643 | /* 49887 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19644 | /* 49889 */ GIR_RootConstrainSelectedInstOperands, |
| 19645 | /* 49890 */ // GIR_Coverage, 392, |
| 19646 | /* 49890 */ GIR_EraseRootFromParent_Done, |
| 19647 | /* 49891 */ // Label 1275: @49891 |
| 19648 | /* 49891 */ GIM_Try, /*On fail goto*//*Label 1276*/ GIMT_Encode4(49923), // Rule ID 393 // |
| 19649 | /* 49896 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19650 | /* 49899 */ // MIs[0] Operand 1 |
| 19651 | /* 49899 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULE), |
| 19652 | /* 49904 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19653 | /* 49908 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19654 | /* 49912 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETULE:{ *:[Other] }) => (CMP_ULE_S:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19655 | /* 49912 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULE_S), |
| 19656 | /* 49915 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19657 | /* 49917 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19658 | /* 49919 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19659 | /* 49921 */ GIR_RootConstrainSelectedInstOperands, |
| 19660 | /* 49922 */ // GIR_Coverage, 393, |
| 19661 | /* 49922 */ GIR_EraseRootFromParent_Done, |
| 19662 | /* 49923 */ // Label 1276: @49923 |
| 19663 | /* 49923 */ GIM_Reject, |
| 19664 | /* 49924 */ // Label 1269: @49924 |
| 19665 | /* 49924 */ GIM_Reject, |
| 19666 | /* 49925 */ // Label 1267: @49925 |
| 19667 | /* 49925 */ GIM_Try, /*On fail goto*//*Label 1277*/ GIMT_Encode4(50162), |
| 19668 | /* 49930 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 19669 | /* 49933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64CCRegClassID), |
| 19670 | /* 49937 */ GIM_Try, /*On fail goto*//*Label 1278*/ GIMT_Encode4(49969), // Rule ID 394 // |
| 19671 | /* 49942 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19672 | /* 49945 */ // MIs[0] Operand 1 |
| 19673 | /* 49945 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UNO), |
| 19674 | /* 49950 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19675 | /* 49954 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19676 | /* 49958 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETUO:{ *:[Other] }) => (CMP_UN_D:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19677 | /* 49958 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UN_D), |
| 19678 | /* 49961 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19679 | /* 49963 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19680 | /* 49965 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19681 | /* 49967 */ GIR_RootConstrainSelectedInstOperands, |
| 19682 | /* 49968 */ // GIR_Coverage, 394, |
| 19683 | /* 49968 */ GIR_EraseRootFromParent_Done, |
| 19684 | /* 49969 */ // Label 1278: @49969 |
| 19685 | /* 49969 */ GIM_Try, /*On fail goto*//*Label 1279*/ GIMT_Encode4(50001), // Rule ID 395 // |
| 19686 | /* 49974 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19687 | /* 49977 */ // MIs[0] Operand 1 |
| 19688 | /* 49977 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OEQ), |
| 19689 | /* 49982 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19690 | /* 49986 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19691 | /* 49990 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETOEQ:{ *:[Other] }) => (CMP_EQ_D:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19692 | /* 49990 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_EQ_D), |
| 19693 | /* 49993 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19694 | /* 49995 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19695 | /* 49997 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19696 | /* 49999 */ GIR_RootConstrainSelectedInstOperands, |
| 19697 | /* 50000 */ // GIR_Coverage, 395, |
| 19698 | /* 50000 */ GIR_EraseRootFromParent_Done, |
| 19699 | /* 50001 */ // Label 1279: @50001 |
| 19700 | /* 50001 */ GIM_Try, /*On fail goto*//*Label 1280*/ GIMT_Encode4(50033), // Rule ID 396 // |
| 19701 | /* 50006 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19702 | /* 50009 */ // MIs[0] Operand 1 |
| 19703 | /* 50009 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UEQ), |
| 19704 | /* 50014 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19705 | /* 50018 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19706 | /* 50022 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETUEQ:{ *:[Other] }) => (CMP_UEQ_D:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19707 | /* 50022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UEQ_D), |
| 19708 | /* 50025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19709 | /* 50027 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19710 | /* 50029 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19711 | /* 50031 */ GIR_RootConstrainSelectedInstOperands, |
| 19712 | /* 50032 */ // GIR_Coverage, 396, |
| 19713 | /* 50032 */ GIR_EraseRootFromParent_Done, |
| 19714 | /* 50033 */ // Label 1280: @50033 |
| 19715 | /* 50033 */ GIM_Try, /*On fail goto*//*Label 1281*/ GIMT_Encode4(50065), // Rule ID 397 // |
| 19716 | /* 50038 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19717 | /* 50041 */ // MIs[0] Operand 1 |
| 19718 | /* 50041 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLT), |
| 19719 | /* 50046 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19720 | /* 50050 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19721 | /* 50054 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETOLT:{ *:[Other] }) => (CMP_LT_D:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19722 | /* 50054 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LT_D), |
| 19723 | /* 50057 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19724 | /* 50059 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19725 | /* 50061 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19726 | /* 50063 */ GIR_RootConstrainSelectedInstOperands, |
| 19727 | /* 50064 */ // GIR_Coverage, 397, |
| 19728 | /* 50064 */ GIR_EraseRootFromParent_Done, |
| 19729 | /* 50065 */ // Label 1281: @50065 |
| 19730 | /* 50065 */ GIM_Try, /*On fail goto*//*Label 1282*/ GIMT_Encode4(50097), // Rule ID 398 // |
| 19731 | /* 50070 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19732 | /* 50073 */ // MIs[0] Operand 1 |
| 19733 | /* 50073 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULT), |
| 19734 | /* 50078 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19735 | /* 50082 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19736 | /* 50086 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETULT:{ *:[Other] }) => (CMP_ULT_D:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19737 | /* 50086 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULT_D), |
| 19738 | /* 50089 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19739 | /* 50091 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19740 | /* 50093 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19741 | /* 50095 */ GIR_RootConstrainSelectedInstOperands, |
| 19742 | /* 50096 */ // GIR_Coverage, 398, |
| 19743 | /* 50096 */ GIR_EraseRootFromParent_Done, |
| 19744 | /* 50097 */ // Label 1282: @50097 |
| 19745 | /* 50097 */ GIM_Try, /*On fail goto*//*Label 1283*/ GIMT_Encode4(50129), // Rule ID 399 // |
| 19746 | /* 50102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19747 | /* 50105 */ // MIs[0] Operand 1 |
| 19748 | /* 50105 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLE), |
| 19749 | /* 50110 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19750 | /* 50114 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19751 | /* 50118 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETOLE:{ *:[Other] }) => (CMP_LE_D:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19752 | /* 50118 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LE_D), |
| 19753 | /* 50121 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19754 | /* 50123 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19755 | /* 50125 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19756 | /* 50127 */ GIR_RootConstrainSelectedInstOperands, |
| 19757 | /* 50128 */ // GIR_Coverage, 399, |
| 19758 | /* 50128 */ GIR_EraseRootFromParent_Done, |
| 19759 | /* 50129 */ // Label 1283: @50129 |
| 19760 | /* 50129 */ GIM_Try, /*On fail goto*//*Label 1284*/ GIMT_Encode4(50161), // Rule ID 400 // |
| 19761 | /* 50134 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 19762 | /* 50137 */ // MIs[0] Operand 1 |
| 19763 | /* 50137 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULE), |
| 19764 | /* 50142 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19765 | /* 50146 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19766 | /* 50150 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETULE:{ *:[Other] }) => (CMP_ULE_D:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19767 | /* 50150 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULE_D), |
| 19768 | /* 50153 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19769 | /* 50155 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19770 | /* 50157 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19771 | /* 50159 */ GIR_RootConstrainSelectedInstOperands, |
| 19772 | /* 50160 */ // GIR_Coverage, 400, |
| 19773 | /* 50160 */ GIR_EraseRootFromParent_Done, |
| 19774 | /* 50161 */ // Label 1284: @50161 |
| 19775 | /* 50161 */ GIM_Reject, |
| 19776 | /* 50162 */ // Label 1277: @50162 |
| 19777 | /* 50162 */ GIM_Reject, |
| 19778 | /* 50163 */ // Label 1268: @50163 |
| 19779 | /* 50163 */ GIM_SwitchType, /*MI*/0, /*Op*/2, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1287*/ GIMT_Encode4(50658), |
| 19780 | /* 50174 */ /*GILLT_s32*//*Label 1285*/ GIMT_Encode4(50182), |
| 19781 | /* 50178 */ /*GILLT_s64*//*Label 1286*/ GIMT_Encode4(50420), |
| 19782 | /* 50182 */ // Label 1285: @50182 |
| 19783 | /* 50182 */ GIM_Try, /*On fail goto*//*Label 1288*/ GIMT_Encode4(50419), |
| 19784 | /* 50187 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 19785 | /* 50190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32CCRegClassID), |
| 19786 | /* 50194 */ GIM_Try, /*On fail goto*//*Label 1289*/ GIMT_Encode4(50226), // Rule ID 1268 // |
| 19787 | /* 50199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19788 | /* 50202 */ // MIs[0] Operand 1 |
| 19789 | /* 50202 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UNO), |
| 19790 | /* 50207 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19791 | /* 50211 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19792 | /* 50215 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETUO:{ *:[Other] }) => (CMP_UN_S_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19793 | /* 50215 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UN_S_MMR6), |
| 19794 | /* 50218 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19795 | /* 50220 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19796 | /* 50222 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19797 | /* 50224 */ GIR_RootConstrainSelectedInstOperands, |
| 19798 | /* 50225 */ // GIR_Coverage, 1268, |
| 19799 | /* 50225 */ GIR_EraseRootFromParent_Done, |
| 19800 | /* 50226 */ // Label 1289: @50226 |
| 19801 | /* 50226 */ GIM_Try, /*On fail goto*//*Label 1290*/ GIMT_Encode4(50258), // Rule ID 1269 // |
| 19802 | /* 50231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19803 | /* 50234 */ // MIs[0] Operand 1 |
| 19804 | /* 50234 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OEQ), |
| 19805 | /* 50239 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19806 | /* 50243 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19807 | /* 50247 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETOEQ:{ *:[Other] }) => (CMP_EQ_S_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19808 | /* 50247 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_EQ_S_MMR6), |
| 19809 | /* 50250 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19810 | /* 50252 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19811 | /* 50254 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19812 | /* 50256 */ GIR_RootConstrainSelectedInstOperands, |
| 19813 | /* 50257 */ // GIR_Coverage, 1269, |
| 19814 | /* 50257 */ GIR_EraseRootFromParent_Done, |
| 19815 | /* 50258 */ // Label 1290: @50258 |
| 19816 | /* 50258 */ GIM_Try, /*On fail goto*//*Label 1291*/ GIMT_Encode4(50290), // Rule ID 1270 // |
| 19817 | /* 50263 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19818 | /* 50266 */ // MIs[0] Operand 1 |
| 19819 | /* 50266 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UEQ), |
| 19820 | /* 50271 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19821 | /* 50275 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19822 | /* 50279 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETUEQ:{ *:[Other] }) => (CMP_UEQ_S_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19823 | /* 50279 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UEQ_S_MMR6), |
| 19824 | /* 50282 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19825 | /* 50284 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19826 | /* 50286 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19827 | /* 50288 */ GIR_RootConstrainSelectedInstOperands, |
| 19828 | /* 50289 */ // GIR_Coverage, 1270, |
| 19829 | /* 50289 */ GIR_EraseRootFromParent_Done, |
| 19830 | /* 50290 */ // Label 1291: @50290 |
| 19831 | /* 50290 */ GIM_Try, /*On fail goto*//*Label 1292*/ GIMT_Encode4(50322), // Rule ID 1271 // |
| 19832 | /* 50295 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19833 | /* 50298 */ // MIs[0] Operand 1 |
| 19834 | /* 50298 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLT), |
| 19835 | /* 50303 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19836 | /* 50307 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19837 | /* 50311 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETOLT:{ *:[Other] }) => (CMP_LT_S_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19838 | /* 50311 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LT_S_MMR6), |
| 19839 | /* 50314 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19840 | /* 50316 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19841 | /* 50318 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19842 | /* 50320 */ GIR_RootConstrainSelectedInstOperands, |
| 19843 | /* 50321 */ // GIR_Coverage, 1271, |
| 19844 | /* 50321 */ GIR_EraseRootFromParent_Done, |
| 19845 | /* 50322 */ // Label 1292: @50322 |
| 19846 | /* 50322 */ GIM_Try, /*On fail goto*//*Label 1293*/ GIMT_Encode4(50354), // Rule ID 1272 // |
| 19847 | /* 50327 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19848 | /* 50330 */ // MIs[0] Operand 1 |
| 19849 | /* 50330 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULT), |
| 19850 | /* 50335 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19851 | /* 50339 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19852 | /* 50343 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETULT:{ *:[Other] }) => (CMP_ULT_S_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19853 | /* 50343 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULT_S_MMR6), |
| 19854 | /* 50346 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19855 | /* 50348 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19856 | /* 50350 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19857 | /* 50352 */ GIR_RootConstrainSelectedInstOperands, |
| 19858 | /* 50353 */ // GIR_Coverage, 1272, |
| 19859 | /* 50353 */ GIR_EraseRootFromParent_Done, |
| 19860 | /* 50354 */ // Label 1293: @50354 |
| 19861 | /* 50354 */ GIM_Try, /*On fail goto*//*Label 1294*/ GIMT_Encode4(50386), // Rule ID 1273 // |
| 19862 | /* 50359 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19863 | /* 50362 */ // MIs[0] Operand 1 |
| 19864 | /* 50362 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLE), |
| 19865 | /* 50367 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19866 | /* 50371 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19867 | /* 50375 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETOLE:{ *:[Other] }) => (CMP_LE_S_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19868 | /* 50375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LE_S_MMR6), |
| 19869 | /* 50378 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19870 | /* 50380 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19871 | /* 50382 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19872 | /* 50384 */ GIR_RootConstrainSelectedInstOperands, |
| 19873 | /* 50385 */ // GIR_Coverage, 1273, |
| 19874 | /* 50385 */ GIR_EraseRootFromParent_Done, |
| 19875 | /* 50386 */ // Label 1294: @50386 |
| 19876 | /* 50386 */ GIM_Try, /*On fail goto*//*Label 1295*/ GIMT_Encode4(50418), // Rule ID 1274 // |
| 19877 | /* 50391 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19878 | /* 50394 */ // MIs[0] Operand 1 |
| 19879 | /* 50394 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULE), |
| 19880 | /* 50399 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19881 | /* 50403 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 19882 | /* 50407 */ // (setcc:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft, SETULE:{ *:[Other] }) => (CMP_ULE_S_MMR6:{ *:[i32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 19883 | /* 50407 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULE_S_MMR6), |
| 19884 | /* 50410 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19885 | /* 50412 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19886 | /* 50414 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19887 | /* 50416 */ GIR_RootConstrainSelectedInstOperands, |
| 19888 | /* 50417 */ // GIR_Coverage, 1274, |
| 19889 | /* 50417 */ GIR_EraseRootFromParent_Done, |
| 19890 | /* 50418 */ // Label 1295: @50418 |
| 19891 | /* 50418 */ GIM_Reject, |
| 19892 | /* 50419 */ // Label 1288: @50419 |
| 19893 | /* 50419 */ GIM_Reject, |
| 19894 | /* 50420 */ // Label 1286: @50420 |
| 19895 | /* 50420 */ GIM_Try, /*On fail goto*//*Label 1296*/ GIMT_Encode4(50657), |
| 19896 | /* 50425 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 19897 | /* 50428 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64CCRegClassID), |
| 19898 | /* 50432 */ GIM_Try, /*On fail goto*//*Label 1297*/ GIMT_Encode4(50464), // Rule ID 1275 // |
| 19899 | /* 50437 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19900 | /* 50440 */ // MIs[0] Operand 1 |
| 19901 | /* 50440 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UNO), |
| 19902 | /* 50445 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19903 | /* 50449 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19904 | /* 50453 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETUO:{ *:[Other] }) => (CMP_UN_D_MMR6:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19905 | /* 50453 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UN_D_MMR6), |
| 19906 | /* 50456 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19907 | /* 50458 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19908 | /* 50460 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19909 | /* 50462 */ GIR_RootConstrainSelectedInstOperands, |
| 19910 | /* 50463 */ // GIR_Coverage, 1275, |
| 19911 | /* 50463 */ GIR_EraseRootFromParent_Done, |
| 19912 | /* 50464 */ // Label 1297: @50464 |
| 19913 | /* 50464 */ GIM_Try, /*On fail goto*//*Label 1298*/ GIMT_Encode4(50496), // Rule ID 1276 // |
| 19914 | /* 50469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19915 | /* 50472 */ // MIs[0] Operand 1 |
| 19916 | /* 50472 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OEQ), |
| 19917 | /* 50477 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19918 | /* 50481 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19919 | /* 50485 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETOEQ:{ *:[Other] }) => (CMP_EQ_D_MMR6:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19920 | /* 50485 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_EQ_D_MMR6), |
| 19921 | /* 50488 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19922 | /* 50490 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19923 | /* 50492 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19924 | /* 50494 */ GIR_RootConstrainSelectedInstOperands, |
| 19925 | /* 50495 */ // GIR_Coverage, 1276, |
| 19926 | /* 50495 */ GIR_EraseRootFromParent_Done, |
| 19927 | /* 50496 */ // Label 1298: @50496 |
| 19928 | /* 50496 */ GIM_Try, /*On fail goto*//*Label 1299*/ GIMT_Encode4(50528), // Rule ID 1277 // |
| 19929 | /* 50501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19930 | /* 50504 */ // MIs[0] Operand 1 |
| 19931 | /* 50504 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_UEQ), |
| 19932 | /* 50509 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19933 | /* 50513 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19934 | /* 50517 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETUEQ:{ *:[Other] }) => (CMP_UEQ_D_MMR6:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19935 | /* 50517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_UEQ_D_MMR6), |
| 19936 | /* 50520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19937 | /* 50522 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19938 | /* 50524 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19939 | /* 50526 */ GIR_RootConstrainSelectedInstOperands, |
| 19940 | /* 50527 */ // GIR_Coverage, 1277, |
| 19941 | /* 50527 */ GIR_EraseRootFromParent_Done, |
| 19942 | /* 50528 */ // Label 1299: @50528 |
| 19943 | /* 50528 */ GIM_Try, /*On fail goto*//*Label 1300*/ GIMT_Encode4(50560), // Rule ID 1278 // |
| 19944 | /* 50533 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19945 | /* 50536 */ // MIs[0] Operand 1 |
| 19946 | /* 50536 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLT), |
| 19947 | /* 50541 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19948 | /* 50545 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19949 | /* 50549 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETOLT:{ *:[Other] }) => (CMP_LT_D_MMR6:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19950 | /* 50549 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LT_D_MMR6), |
| 19951 | /* 50552 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19952 | /* 50554 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19953 | /* 50556 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19954 | /* 50558 */ GIR_RootConstrainSelectedInstOperands, |
| 19955 | /* 50559 */ // GIR_Coverage, 1278, |
| 19956 | /* 50559 */ GIR_EraseRootFromParent_Done, |
| 19957 | /* 50560 */ // Label 1300: @50560 |
| 19958 | /* 50560 */ GIM_Try, /*On fail goto*//*Label 1301*/ GIMT_Encode4(50592), // Rule ID 1279 // |
| 19959 | /* 50565 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19960 | /* 50568 */ // MIs[0] Operand 1 |
| 19961 | /* 50568 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULT), |
| 19962 | /* 50573 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19963 | /* 50577 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19964 | /* 50581 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETULT:{ *:[Other] }) => (CMP_ULT_D_MMR6:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19965 | /* 50581 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULT_D_MMR6), |
| 19966 | /* 50584 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19967 | /* 50586 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19968 | /* 50588 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19969 | /* 50590 */ GIR_RootConstrainSelectedInstOperands, |
| 19970 | /* 50591 */ // GIR_Coverage, 1279, |
| 19971 | /* 50591 */ GIR_EraseRootFromParent_Done, |
| 19972 | /* 50592 */ // Label 1301: @50592 |
| 19973 | /* 50592 */ GIM_Try, /*On fail goto*//*Label 1302*/ GIMT_Encode4(50624), // Rule ID 1280 // |
| 19974 | /* 50597 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19975 | /* 50600 */ // MIs[0] Operand 1 |
| 19976 | /* 50600 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_OLE), |
| 19977 | /* 50605 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19978 | /* 50609 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19979 | /* 50613 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETOLE:{ *:[Other] }) => (CMP_LE_D_MMR6:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19980 | /* 50613 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_LE_D_MMR6), |
| 19981 | /* 50616 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19982 | /* 50618 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19983 | /* 50620 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19984 | /* 50622 */ GIR_RootConstrainSelectedInstOperands, |
| 19985 | /* 50623 */ // GIR_Coverage, 1280, |
| 19986 | /* 50623 */ GIR_EraseRootFromParent_Done, |
| 19987 | /* 50624 */ // Label 1302: @50624 |
| 19988 | /* 50624 */ GIM_Try, /*On fail goto*//*Label 1303*/ GIMT_Encode4(50656), // Rule ID 1281 // |
| 19989 | /* 50629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 19990 | /* 50632 */ // MIs[0] Operand 1 |
| 19991 | /* 50632 */ GIM_CheckCmpPredicate, /*MI*/0, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::FCMP_ULE), |
| 19992 | /* 50637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19993 | /* 50641 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 19994 | /* 50645 */ // (setcc:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft, SETULE:{ *:[Other] }) => (CMP_ULE_D_MMR6:{ *:[i32] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 19995 | /* 50645 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CMP_ULE_D_MMR6), |
| 19996 | /* 50648 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 19997 | /* 50650 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 19998 | /* 50652 */ GIR_RootToRootCopy, /*OpIdx*/3, // ft |
| 19999 | /* 50654 */ GIR_RootConstrainSelectedInstOperands, |
| 20000 | /* 50655 */ // GIR_Coverage, 1281, |
| 20001 | /* 50655 */ GIR_EraseRootFromParent_Done, |
| 20002 | /* 50656 */ // Label 1303: @50656 |
| 20003 | /* 50656 */ GIM_Reject, |
| 20004 | /* 50657 */ // Label 1296: @50657 |
| 20005 | /* 50657 */ GIM_Reject, |
| 20006 | /* 50658 */ // Label 1287: @50658 |
| 20007 | /* 50658 */ GIM_Reject, |
| 20008 | /* 50659 */ // Label 1265: @50659 |
| 20009 | /* 50659 */ GIM_Reject, |
| 20010 | /* 50660 */ // Label 43: @50660 |
| 20011 | /* 50660 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 1310*/ GIMT_Encode4(62789), |
| 20012 | /* 50671 */ /*GILLT_s32*//*Label 1304*/ GIMT_Encode4(50703), |
| 20013 | /* 50675 */ /*GILLT_s64*//*Label 1305*/ GIMT_Encode4(57380), GIMT_Encode4(0), |
| 20014 | /* 50683 */ /*GILLT_v2s64*//*Label 1306*/ GIMT_Encode4(62499), GIMT_Encode4(0), |
| 20015 | /* 50691 */ /*GILLT_v4s32*//*Label 1307*/ GIMT_Encode4(62573), |
| 20016 | /* 50695 */ /*GILLT_v8s16*//*Label 1308*/ GIMT_Encode4(62647), |
| 20017 | /* 50699 */ /*GILLT_v16s8*//*Label 1309*/ GIMT_Encode4(62694), |
| 20018 | /* 50703 */ // Label 1304: @50703 |
| 20019 | /* 50703 */ GIM_Try, /*On fail goto*//*Label 1311*/ GIMT_Encode4(50779), // Rule ID 1746 // |
| 20020 | /* 50708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20021 | /* 50711 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20022 | /* 50714 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20023 | /* 50717 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20024 | /* 50720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20025 | /* 50724 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20026 | /* 50728 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20027 | /* 50732 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20028 | /* 50736 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20029 | /* 50740 */ // MIs[1] Operand 1 |
| 20030 | /* 50740 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20031 | /* 50745 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20032 | /* 50750 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20033 | /* 50754 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20034 | /* 50758 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20035 | /* 50762 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20036 | /* 50764 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20037 | /* 50764 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20038 | /* 50767 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20039 | /* 50769 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20040 | /* 50771 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20041 | /* 50775 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20042 | /* 50777 */ GIR_RootConstrainSelectedInstOperands, |
| 20043 | /* 50778 */ // GIR_Coverage, 1746, |
| 20044 | /* 50778 */ GIR_EraseRootFromParent_Done, |
| 20045 | /* 50779 */ // Label 1311: @50779 |
| 20046 | /* 50779 */ GIM_Try, /*On fail goto*//*Label 1312*/ GIMT_Encode4(50855), // Rule ID 1750 // |
| 20047 | /* 50784 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20048 | /* 50787 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20049 | /* 50790 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20050 | /* 50793 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20051 | /* 50796 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20052 | /* 50800 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20053 | /* 50804 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20054 | /* 50808 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20055 | /* 50812 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20056 | /* 50816 */ // MIs[1] Operand 1 |
| 20057 | /* 50816 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20058 | /* 50821 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20059 | /* 50826 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20060 | /* 50830 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20061 | /* 50834 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20062 | /* 50838 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20063 | /* 50840 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20064 | /* 50840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_I), |
| 20065 | /* 50843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20066 | /* 50845 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20067 | /* 50847 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20068 | /* 50851 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20069 | /* 50853 */ GIR_RootConstrainSelectedInstOperands, |
| 20070 | /* 50854 */ // GIR_Coverage, 1750, |
| 20071 | /* 50854 */ GIR_EraseRootFromParent_Done, |
| 20072 | /* 50855 */ // Label 1312: @50855 |
| 20073 | /* 50855 */ GIM_Try, /*On fail goto*//*Label 1313*/ GIMT_Encode4(50931), // Rule ID 1778 // |
| 20074 | /* 50860 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20075 | /* 50863 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20076 | /* 50866 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20077 | /* 50869 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20078 | /* 50872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20079 | /* 50876 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20080 | /* 50880 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20081 | /* 50884 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20082 | /* 50888 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20083 | /* 50892 */ // MIs[1] Operand 1 |
| 20084 | /* 50892 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20085 | /* 50897 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20086 | /* 50902 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20087 | /* 50906 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20088 | /* 50910 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20089 | /* 50914 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20090 | /* 50916 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I64_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR64:{ *:[i64] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20091 | /* 50916 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_I), |
| 20092 | /* 50919 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20093 | /* 50921 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20094 | /* 50923 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20095 | /* 50927 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20096 | /* 50929 */ GIR_RootConstrainSelectedInstOperands, |
| 20097 | /* 50930 */ // GIR_Coverage, 1778, |
| 20098 | /* 50930 */ GIR_EraseRootFromParent_Done, |
| 20099 | /* 50931 */ // Label 1313: @50931 |
| 20100 | /* 50931 */ GIM_Try, /*On fail goto*//*Label 1314*/ GIMT_Encode4(51007), // Rule ID 1789 // |
| 20101 | /* 50936 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20102 | /* 50939 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20103 | /* 50942 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20104 | /* 50945 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20105 | /* 50948 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20106 | /* 50952 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20107 | /* 50956 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20108 | /* 50960 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20109 | /* 50964 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20110 | /* 50968 */ // MIs[1] Operand 1 |
| 20111 | /* 50968 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20112 | /* 50973 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20113 | /* 50978 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20114 | /* 50982 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20115 | /* 50986 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20116 | /* 50990 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20117 | /* 50992 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I64_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR64:{ *:[i64] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20118 | /* 50992 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_I), |
| 20119 | /* 50995 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20120 | /* 50997 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20121 | /* 50999 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20122 | /* 51003 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20123 | /* 51005 */ GIR_RootConstrainSelectedInstOperands, |
| 20124 | /* 51006 */ // GIR_Coverage, 1789, |
| 20125 | /* 51006 */ GIR_EraseRootFromParent_Done, |
| 20126 | /* 51007 */ // Label 1314: @51007 |
| 20127 | /* 51007 */ GIM_Try, /*On fail goto*//*Label 1315*/ GIMT_Encode4(51083), // Rule ID 1802 // |
| 20128 | /* 51012 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20129 | /* 51015 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20130 | /* 51018 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20131 | /* 51021 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20132 | /* 51024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20133 | /* 51028 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20134 | /* 51032 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20135 | /* 51036 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20136 | /* 51040 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20137 | /* 51044 */ // MIs[1] Operand 1 |
| 20138 | /* 51044 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20139 | /* 51049 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20140 | /* 51054 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20141 | /* 51058 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20142 | /* 51062 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20143 | /* 51066 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20144 | /* 51068 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR32:{ *:[i32] }:$lhs, FGR32:{ *:[f32] }:$F) |
| 20145 | /* 51068 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 20146 | /* 51071 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20147 | /* 51073 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20148 | /* 51075 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20149 | /* 51079 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20150 | /* 51081 */ GIR_RootConstrainSelectedInstOperands, |
| 20151 | /* 51082 */ // GIR_Coverage, 1802, |
| 20152 | /* 51082 */ GIR_EraseRootFromParent_Done, |
| 20153 | /* 51083 */ // Label 1315: @51083 |
| 20154 | /* 51083 */ GIM_Try, /*On fail goto*//*Label 1316*/ GIMT_Encode4(51159), // Rule ID 1805 // |
| 20155 | /* 51088 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20156 | /* 51091 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20157 | /* 51094 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20158 | /* 51097 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20159 | /* 51100 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20160 | /* 51104 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20161 | /* 51108 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20162 | /* 51112 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20163 | /* 51116 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20164 | /* 51120 */ // MIs[1] Operand 1 |
| 20165 | /* 51120 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20166 | /* 51125 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20167 | /* 51130 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20168 | /* 51134 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20169 | /* 51138 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20170 | /* 51142 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20171 | /* 51144 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR32:{ *:[i32] }:$lhs, FGR32:{ *:[f32] }:$F) |
| 20172 | /* 51144 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_S), |
| 20173 | /* 51147 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20174 | /* 51149 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20175 | /* 51151 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20176 | /* 51155 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20177 | /* 51157 */ GIR_RootConstrainSelectedInstOperands, |
| 20178 | /* 51158 */ // GIR_Coverage, 1805, |
| 20179 | /* 51158 */ GIR_EraseRootFromParent_Done, |
| 20180 | /* 51159 */ // Label 1316: @51159 |
| 20181 | /* 51159 */ GIM_Try, /*On fail goto*//*Label 1317*/ GIMT_Encode4(51235), // Rule ID 1815 // |
| 20182 | /* 51164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20183 | /* 51167 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20184 | /* 51170 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20185 | /* 51173 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20186 | /* 51176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20187 | /* 51180 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20188 | /* 51184 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20189 | /* 51188 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20190 | /* 51192 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20191 | /* 51196 */ // MIs[1] Operand 1 |
| 20192 | /* 51196 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20193 | /* 51201 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20194 | /* 51206 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20195 | /* 51210 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20196 | /* 51214 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20197 | /* 51218 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20198 | /* 51220 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETEQ:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I64_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR64:{ *:[i64] }:$lhs, FGR32:{ *:[f32] }:$F) |
| 20199 | /* 51220 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_S), |
| 20200 | /* 51223 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20201 | /* 51225 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20202 | /* 51227 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20203 | /* 51231 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20204 | /* 51233 */ GIR_RootConstrainSelectedInstOperands, |
| 20205 | /* 51234 */ // GIR_Coverage, 1815, |
| 20206 | /* 51234 */ GIR_EraseRootFromParent_Done, |
| 20207 | /* 51235 */ // Label 1317: @51235 |
| 20208 | /* 51235 */ GIM_Try, /*On fail goto*//*Label 1318*/ GIMT_Encode4(51311), // Rule ID 1818 // |
| 20209 | /* 51240 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20210 | /* 51243 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20211 | /* 51246 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20212 | /* 51249 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20213 | /* 51252 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20214 | /* 51256 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20215 | /* 51260 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20216 | /* 51264 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20217 | /* 51268 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20218 | /* 51272 */ // MIs[1] Operand 1 |
| 20219 | /* 51272 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20220 | /* 51277 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20221 | /* 51282 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20222 | /* 51286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20223 | /* 51290 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20224 | /* 51294 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20225 | /* 51296 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETNE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I64_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR64:{ *:[i64] }:$lhs, FGR32:{ *:[f32] }:$F) |
| 20226 | /* 51296 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_S), |
| 20227 | /* 51299 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20228 | /* 51301 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20229 | /* 51303 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20230 | /* 51307 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20231 | /* 51309 */ GIR_RootConstrainSelectedInstOperands, |
| 20232 | /* 51310 */ // GIR_Coverage, 1818, |
| 20233 | /* 51310 */ GIR_EraseRootFromParent_Done, |
| 20234 | /* 51311 */ // Label 1318: @51311 |
| 20235 | /* 51311 */ GIM_Try, /*On fail goto*//*Label 1319*/ GIMT_Encode4(51387), // Rule ID 2007 // |
| 20236 | /* 51316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 20237 | /* 51319 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20238 | /* 51322 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20239 | /* 51325 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20240 | /* 51328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20241 | /* 51332 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20242 | /* 51336 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20243 | /* 51340 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20244 | /* 51344 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20245 | /* 51348 */ // MIs[1] Operand 1 |
| 20246 | /* 51348 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20247 | /* 51353 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20248 | /* 51358 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20249 | /* 51362 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20250 | /* 51366 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20251 | /* 51370 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20252 | /* 51372 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelBeqZ:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$a) |
| 20253 | /* 51372 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelBeqZ), |
| 20254 | /* 51375 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 20255 | /* 51377 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 20256 | /* 51379 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 20257 | /* 51381 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 20258 | /* 51385 */ GIR_RootConstrainSelectedInstOperands, |
| 20259 | /* 51386 */ // GIR_Coverage, 2007, |
| 20260 | /* 51386 */ GIR_EraseRootFromParent_Done, |
| 20261 | /* 51387 */ // Label 1319: @51387 |
| 20262 | /* 51387 */ GIM_Try, /*On fail goto*//*Label 1320*/ GIMT_Encode4(51463), // Rule ID 2010 // |
| 20263 | /* 51392 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 20264 | /* 51395 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20265 | /* 51398 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20266 | /* 51401 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20267 | /* 51404 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20268 | /* 51408 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20269 | /* 51412 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20270 | /* 51416 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20271 | /* 51420 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20272 | /* 51424 */ // MIs[1] Operand 1 |
| 20273 | /* 51424 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20274 | /* 51429 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20275 | /* 51434 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20276 | /* 51438 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20277 | /* 51442 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 20278 | /* 51446 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20279 | /* 51448 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, 0:{ *:[i32] }, SETNE:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelBneZ:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$a) |
| 20280 | /* 51448 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelBneZ), |
| 20281 | /* 51451 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 20282 | /* 51453 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 20283 | /* 51455 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 20284 | /* 51457 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 20285 | /* 51461 */ GIR_RootConstrainSelectedInstOperands, |
| 20286 | /* 51462 */ // GIR_Coverage, 2010, |
| 20287 | /* 51462 */ GIR_EraseRootFromParent_Done, |
| 20288 | /* 51463 */ // Label 1320: @51463 |
| 20289 | /* 51463 */ GIM_Try, /*On fail goto*//*Label 1321*/ GIMT_Encode4(51539), // Rule ID 2356 // |
| 20290 | /* 51468 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 20291 | /* 51471 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20292 | /* 51474 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20293 | /* 51477 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20294 | /* 51480 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20295 | /* 51484 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20296 | /* 51488 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20297 | /* 51492 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20298 | /* 51496 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20299 | /* 51500 */ // MIs[1] Operand 1 |
| 20300 | /* 51500 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20301 | /* 51505 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20302 | /* 51510 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20303 | /* 51514 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20304 | /* 51518 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20305 | /* 51522 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20306 | /* 51524 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20307 | /* 51524 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 20308 | /* 51527 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20309 | /* 51529 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20310 | /* 51531 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20311 | /* 51535 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20312 | /* 51537 */ GIR_RootConstrainSelectedInstOperands, |
| 20313 | /* 51538 */ // GIR_Coverage, 2356, |
| 20314 | /* 51538 */ GIR_EraseRootFromParent_Done, |
| 20315 | /* 51539 */ // Label 1321: @51539 |
| 20316 | /* 51539 */ GIM_Try, /*On fail goto*//*Label 1322*/ GIMT_Encode4(51615), // Rule ID 2360 // |
| 20317 | /* 51544 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotMips32r6_NotMips64r6), |
| 20318 | /* 51547 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20319 | /* 51550 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20320 | /* 51553 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20321 | /* 51556 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20322 | /* 51560 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20323 | /* 51564 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20324 | /* 51568 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20325 | /* 51572 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20326 | /* 51576 */ // MIs[1] Operand 1 |
| 20327 | /* 51576 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20328 | /* 51581 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20329 | /* 51586 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20330 | /* 51590 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20331 | /* 51594 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20332 | /* 51598 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20333 | /* 51600 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20334 | /* 51600 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_MM), |
| 20335 | /* 51603 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20336 | /* 51605 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20337 | /* 51607 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20338 | /* 51611 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20339 | /* 51613 */ GIR_RootConstrainSelectedInstOperands, |
| 20340 | /* 51614 */ // GIR_Coverage, 2360, |
| 20341 | /* 51614 */ GIR_EraseRootFromParent_Done, |
| 20342 | /* 51615 */ // Label 1322: @51615 |
| 20343 | /* 51615 */ GIM_Try, /*On fail goto*//*Label 1323*/ GIMT_Encode4(51691), // Rule ID 2370 // |
| 20344 | /* 51620 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 20345 | /* 51623 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20346 | /* 51626 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20347 | /* 51629 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20348 | /* 51632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20349 | /* 51636 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20350 | /* 51640 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20351 | /* 51644 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20352 | /* 51648 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20353 | /* 51652 */ // MIs[1] Operand 1 |
| 20354 | /* 51652 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20355 | /* 51657 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20356 | /* 51662 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20357 | /* 51666 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20358 | /* 51670 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20359 | /* 51674 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20360 | /* 51676 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20361 | /* 51676 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 20362 | /* 51679 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20363 | /* 51681 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20364 | /* 51683 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20365 | /* 51687 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20366 | /* 51689 */ GIR_RootConstrainSelectedInstOperands, |
| 20367 | /* 51690 */ // GIR_Coverage, 2370, |
| 20368 | /* 51690 */ GIR_EraseRootFromParent_Done, |
| 20369 | /* 51691 */ // Label 1323: @51691 |
| 20370 | /* 51691 */ GIM_Try, /*On fail goto*//*Label 1324*/ GIMT_Encode4(51767), // Rule ID 2374 // |
| 20371 | /* 51696 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 20372 | /* 51699 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20373 | /* 51702 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20374 | /* 51705 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20375 | /* 51708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20376 | /* 51712 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20377 | /* 51716 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20378 | /* 51720 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20379 | /* 51724 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20380 | /* 51728 */ // MIs[1] Operand 1 |
| 20381 | /* 51728 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20382 | /* 51733 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20383 | /* 51738 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20384 | /* 51742 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20385 | /* 51746 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20386 | /* 51750 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20387 | /* 51752 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$F) |
| 20388 | /* 51752 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_MM), |
| 20389 | /* 51755 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20390 | /* 51757 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20391 | /* 51759 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20392 | /* 51763 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20393 | /* 51765 */ GIR_RootConstrainSelectedInstOperands, |
| 20394 | /* 51766 */ // GIR_Coverage, 2374, |
| 20395 | /* 51766 */ GIR_EraseRootFromParent_Done, |
| 20396 | /* 51767 */ // Label 1324: @51767 |
| 20397 | /* 51767 */ GIM_Try, /*On fail goto*//*Label 1325*/ GIMT_Encode4(51843), // Rule ID 2416 // |
| 20398 | /* 51772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 20399 | /* 51775 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20400 | /* 51778 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20401 | /* 51781 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20402 | /* 51784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20403 | /* 51788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20404 | /* 51792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20405 | /* 51796 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20406 | /* 51800 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20407 | /* 51804 */ // MIs[1] Operand 1 |
| 20408 | /* 51804 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20409 | /* 51809 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20410 | /* 51814 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20411 | /* 51818 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20412 | /* 51822 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20413 | /* 51826 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20414 | /* 51828 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR32:{ *:[i32] }:$lhs, FGR32:{ *:[f32] }:$F) |
| 20415 | /* 51828 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S_MM), |
| 20416 | /* 51831 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20417 | /* 51833 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20418 | /* 51835 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20419 | /* 51839 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20420 | /* 51841 */ GIR_RootConstrainSelectedInstOperands, |
| 20421 | /* 51842 */ // GIR_Coverage, 2416, |
| 20422 | /* 51842 */ GIR_EraseRootFromParent_Done, |
| 20423 | /* 51843 */ // Label 1325: @51843 |
| 20424 | /* 51843 */ GIM_Try, /*On fail goto*//*Label 1326*/ GIMT_Encode4(51919), // Rule ID 2419 // |
| 20425 | /* 51848 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 20426 | /* 51851 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20427 | /* 51854 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20428 | /* 51857 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20429 | /* 51860 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20430 | /* 51864 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20431 | /* 51868 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20432 | /* 51872 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20433 | /* 51876 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20434 | /* 51880 */ // MIs[1] Operand 1 |
| 20435 | /* 51880 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20436 | /* 51885 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20437 | /* 51890 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 20438 | /* 51894 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20439 | /* 51898 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20440 | /* 51902 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20441 | /* 51904 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR32:{ *:[i32] }:$lhs, FGR32:{ *:[f32] }:$F) |
| 20442 | /* 51904 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_S_MM), |
| 20443 | /* 51907 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20444 | /* 51909 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20445 | /* 51911 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20446 | /* 51915 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20447 | /* 51917 */ GIR_RootConstrainSelectedInstOperands, |
| 20448 | /* 51918 */ // GIR_Coverage, 2419, |
| 20449 | /* 51918 */ GIR_EraseRootFromParent_Done, |
| 20450 | /* 51919 */ // Label 1326: @51919 |
| 20451 | /* 51919 */ GIM_Try, /*On fail goto*//*Label 1327*/ GIMT_Encode4(52017), // Rule ID 1737 // |
| 20452 | /* 51924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20453 | /* 51927 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20454 | /* 51930 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20455 | /* 51933 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20456 | /* 51936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20457 | /* 51940 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20458 | /* 51944 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20459 | /* 51948 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20460 | /* 51952 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20461 | /* 51956 */ // MIs[1] Operand 1 |
| 20462 | /* 51956 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 20463 | /* 51961 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20464 | /* 51966 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20465 | /* 51971 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20466 | /* 51975 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20467 | /* 51979 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20468 | /* 51981 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20469 | /* 51981 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20470 | /* 51984 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 20471 | /* 51988 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20472 | /* 51993 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20473 | /* 51997 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20474 | /* 52001 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20475 | /* 52003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20476 | /* 52006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20477 | /* 52008 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20478 | /* 52010 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20479 | /* 52013 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20480 | /* 52015 */ GIR_RootConstrainSelectedInstOperands, |
| 20481 | /* 52016 */ // GIR_Coverage, 1737, |
| 20482 | /* 52016 */ GIR_EraseRootFromParent_Done, |
| 20483 | /* 52017 */ // Label 1327: @52017 |
| 20484 | /* 52017 */ GIM_Try, /*On fail goto*//*Label 1328*/ GIMT_Encode4(52115), // Rule ID 1738 // |
| 20485 | /* 52022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20486 | /* 52025 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20487 | /* 52028 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20488 | /* 52031 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20489 | /* 52034 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20490 | /* 52038 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20491 | /* 52042 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20492 | /* 52046 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20493 | /* 52050 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20494 | /* 52054 */ // MIs[1] Operand 1 |
| 20495 | /* 52054 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 20496 | /* 52059 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20497 | /* 52064 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20498 | /* 52069 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20499 | /* 52073 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20500 | /* 52077 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20501 | /* 52079 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20502 | /* 52079 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20503 | /* 52082 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 20504 | /* 52086 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20505 | /* 52091 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20506 | /* 52095 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20507 | /* 52099 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20508 | /* 52101 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20509 | /* 52104 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20510 | /* 52106 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20511 | /* 52108 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20512 | /* 52111 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20513 | /* 52113 */ GIR_RootConstrainSelectedInstOperands, |
| 20514 | /* 52114 */ // GIR_Coverage, 1738, |
| 20515 | /* 52114 */ GIR_EraseRootFromParent_Done, |
| 20516 | /* 52115 */ // Label 1328: @52115 |
| 20517 | /* 52115 */ GIM_Try, /*On fail goto*//*Label 1329*/ GIMT_Encode4(52213), // Rule ID 1741 // |
| 20518 | /* 52120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20519 | /* 52123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20520 | /* 52126 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20521 | /* 52129 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20522 | /* 52132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20523 | /* 52136 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20524 | /* 52140 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20525 | /* 52144 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20526 | /* 52148 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20527 | /* 52152 */ // MIs[1] Operand 1 |
| 20528 | /* 52152 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 20529 | /* 52157 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20530 | /* 52162 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20531 | /* 52167 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20532 | /* 52171 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20533 | /* 52175 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20534 | /* 52177 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 20535 | /* 52177 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20536 | /* 52180 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 20537 | /* 52184 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20538 | /* 52189 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20539 | /* 52193 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20540 | /* 52197 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20541 | /* 52199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20542 | /* 52202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20543 | /* 52204 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20544 | /* 52206 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20545 | /* 52209 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20546 | /* 52211 */ GIR_RootConstrainSelectedInstOperands, |
| 20547 | /* 52212 */ // GIR_Coverage, 1741, |
| 20548 | /* 52212 */ GIR_EraseRootFromParent_Done, |
| 20549 | /* 52213 */ // Label 1329: @52213 |
| 20550 | /* 52213 */ GIM_Try, /*On fail goto*//*Label 1330*/ GIMT_Encode4(52311), // Rule ID 1742 // |
| 20551 | /* 52218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20552 | /* 52221 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20553 | /* 52224 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20554 | /* 52227 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20555 | /* 52230 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20556 | /* 52234 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20557 | /* 52238 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20558 | /* 52242 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20559 | /* 52246 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20560 | /* 52250 */ // MIs[1] Operand 1 |
| 20561 | /* 52250 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 20562 | /* 52255 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20563 | /* 52260 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20564 | /* 52265 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20565 | /* 52269 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20566 | /* 52273 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20567 | /* 52275 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 20568 | /* 52275 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20569 | /* 52278 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 20570 | /* 52282 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20571 | /* 52287 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20572 | /* 52291 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20573 | /* 52295 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20574 | /* 52297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20575 | /* 52300 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20576 | /* 52302 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20577 | /* 52304 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20578 | /* 52307 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20579 | /* 52309 */ GIR_RootConstrainSelectedInstOperands, |
| 20580 | /* 52310 */ // GIR_Coverage, 1742, |
| 20581 | /* 52310 */ GIR_EraseRootFromParent_Done, |
| 20582 | /* 52311 */ // Label 1330: @52311 |
| 20583 | /* 52311 */ GIM_Try, /*On fail goto*//*Label 1331*/ GIMT_Encode4(52409), // Rule ID 1745 // |
| 20584 | /* 52316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20585 | /* 52319 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20586 | /* 52322 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20587 | /* 52325 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20588 | /* 52328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20589 | /* 52332 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20590 | /* 52336 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20591 | /* 52340 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20592 | /* 52344 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20593 | /* 52348 */ // MIs[1] Operand 1 |
| 20594 | /* 52348 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20595 | /* 52353 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20596 | /* 52358 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20597 | /* 52363 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20598 | /* 52367 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20599 | /* 52371 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20600 | /* 52373 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20601 | /* 52373 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20602 | /* 52376 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 20603 | /* 52380 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20604 | /* 52385 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20605 | /* 52389 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20606 | /* 52393 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20607 | /* 52395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20608 | /* 52398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20609 | /* 52400 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20610 | /* 52402 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20611 | /* 52405 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20612 | /* 52407 */ GIR_RootConstrainSelectedInstOperands, |
| 20613 | /* 52408 */ // GIR_Coverage, 1745, |
| 20614 | /* 52408 */ GIR_EraseRootFromParent_Done, |
| 20615 | /* 52409 */ // Label 1331: @52409 |
| 20616 | /* 52409 */ GIM_Try, /*On fail goto*//*Label 1332*/ GIMT_Encode4(52507), // Rule ID 1748 // |
| 20617 | /* 52414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20618 | /* 52417 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20619 | /* 52420 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20620 | /* 52423 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20621 | /* 52426 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20622 | /* 52430 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20623 | /* 52434 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20624 | /* 52438 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20625 | /* 52442 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20626 | /* 52446 */ // MIs[1] Operand 1 |
| 20627 | /* 52446 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20628 | /* 52451 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20629 | /* 52456 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20630 | /* 52461 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20631 | /* 52465 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20632 | /* 52469 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20633 | /* 52471 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20634 | /* 52471 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20635 | /* 52474 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 20636 | /* 52478 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20637 | /* 52483 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20638 | /* 52487 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20639 | /* 52491 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20640 | /* 52493 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_I), |
| 20641 | /* 52496 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20642 | /* 52498 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20643 | /* 52500 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20644 | /* 52503 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20645 | /* 52505 */ GIR_RootConstrainSelectedInstOperands, |
| 20646 | /* 52506 */ // GIR_Coverage, 1748, |
| 20647 | /* 52506 */ GIR_EraseRootFromParent_Done, |
| 20648 | /* 52507 */ // Label 1332: @52507 |
| 20649 | /* 52507 */ GIM_Try, /*On fail goto*//*Label 1333*/ GIMT_Encode4(52605), // Rule ID 1759 // |
| 20650 | /* 52512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20651 | /* 52515 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20652 | /* 52518 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20653 | /* 52521 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20654 | /* 52524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20655 | /* 52528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20656 | /* 52532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20657 | /* 52536 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20658 | /* 52540 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20659 | /* 52544 */ // MIs[1] Operand 1 |
| 20660 | /* 52544 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 20661 | /* 52549 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20662 | /* 52554 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20663 | /* 52559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20664 | /* 52563 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20665 | /* 52567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20666 | /* 52569 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20667 | /* 52569 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20668 | /* 52572 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 20669 | /* 52576 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20670 | /* 52581 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20671 | /* 52585 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20672 | /* 52589 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20673 | /* 52591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20674 | /* 52594 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20675 | /* 52596 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20676 | /* 52598 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20677 | /* 52601 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20678 | /* 52603 */ GIR_RootConstrainSelectedInstOperands, |
| 20679 | /* 52604 */ // GIR_Coverage, 1759, |
| 20680 | /* 52604 */ GIR_EraseRootFromParent_Done, |
| 20681 | /* 52605 */ // Label 1333: @52605 |
| 20682 | /* 52605 */ GIM_Try, /*On fail goto*//*Label 1334*/ GIMT_Encode4(52703), // Rule ID 1760 // |
| 20683 | /* 52610 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20684 | /* 52613 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20685 | /* 52616 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20686 | /* 52619 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20687 | /* 52622 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20688 | /* 52626 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20689 | /* 52630 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20690 | /* 52634 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20691 | /* 52638 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20692 | /* 52642 */ // MIs[1] Operand 1 |
| 20693 | /* 52642 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 20694 | /* 52647 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20695 | /* 52652 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20696 | /* 52657 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20697 | /* 52661 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20698 | /* 52665 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20699 | /* 52667 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETUGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20700 | /* 52667 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20701 | /* 52670 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 20702 | /* 52674 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20703 | /* 52679 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20704 | /* 52683 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20705 | /* 52687 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20706 | /* 52689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20707 | /* 52692 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20708 | /* 52694 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20709 | /* 52696 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20710 | /* 52699 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20711 | /* 52701 */ GIR_RootConstrainSelectedInstOperands, |
| 20712 | /* 52702 */ // GIR_Coverage, 1760, |
| 20713 | /* 52702 */ GIR_EraseRootFromParent_Done, |
| 20714 | /* 52703 */ // Label 1334: @52703 |
| 20715 | /* 52703 */ GIM_Try, /*On fail goto*//*Label 1335*/ GIMT_Encode4(52801), // Rule ID 1763 // |
| 20716 | /* 52708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20717 | /* 52711 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20718 | /* 52714 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20719 | /* 52717 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20720 | /* 52720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20721 | /* 52724 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20722 | /* 52728 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20723 | /* 52732 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20724 | /* 52736 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20725 | /* 52740 */ // MIs[1] Operand 1 |
| 20726 | /* 52740 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 20727 | /* 52745 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20728 | /* 52750 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20729 | /* 52755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20730 | /* 52759 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20731 | /* 52763 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20732 | /* 52765 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETLE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 20733 | /* 52765 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20734 | /* 52768 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 20735 | /* 52772 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20736 | /* 52777 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20737 | /* 52781 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20738 | /* 52785 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20739 | /* 52787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20740 | /* 52790 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20741 | /* 52792 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20742 | /* 52794 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20743 | /* 52797 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20744 | /* 52799 */ GIR_RootConstrainSelectedInstOperands, |
| 20745 | /* 52800 */ // GIR_Coverage, 1763, |
| 20746 | /* 52800 */ GIR_EraseRootFromParent_Done, |
| 20747 | /* 52801 */ // Label 1335: @52801 |
| 20748 | /* 52801 */ GIM_Try, /*On fail goto*//*Label 1336*/ GIMT_Encode4(52899), // Rule ID 1764 // |
| 20749 | /* 52806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20750 | /* 52809 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20751 | /* 52812 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20752 | /* 52815 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20753 | /* 52818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20754 | /* 52822 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20755 | /* 52826 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20756 | /* 52830 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20757 | /* 52834 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20758 | /* 52838 */ // MIs[1] Operand 1 |
| 20759 | /* 52838 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 20760 | /* 52843 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20761 | /* 52848 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20762 | /* 52853 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20763 | /* 52857 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20764 | /* 52861 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20765 | /* 52863 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETULE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 20766 | /* 52863 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20767 | /* 52866 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 20768 | /* 52870 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20769 | /* 52875 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20770 | /* 52879 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20771 | /* 52883 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20772 | /* 52885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I), |
| 20773 | /* 52888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20774 | /* 52890 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20775 | /* 52892 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20776 | /* 52895 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20777 | /* 52897 */ GIR_RootConstrainSelectedInstOperands, |
| 20778 | /* 52898 */ // GIR_Coverage, 1764, |
| 20779 | /* 52898 */ GIR_EraseRootFromParent_Done, |
| 20780 | /* 52899 */ // Label 1336: @52899 |
| 20781 | /* 52899 */ GIM_Try, /*On fail goto*//*Label 1337*/ GIMT_Encode4(52997), // Rule ID 1777 // |
| 20782 | /* 52904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20783 | /* 52907 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20784 | /* 52910 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20785 | /* 52913 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20786 | /* 52916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20787 | /* 52920 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20788 | /* 52924 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20789 | /* 52928 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20790 | /* 52932 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20791 | /* 52936 */ // MIs[1] Operand 1 |
| 20792 | /* 52936 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20793 | /* 52941 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20794 | /* 52946 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20795 | /* 52951 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20796 | /* 52955 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20797 | /* 52959 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20798 | /* 52961 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I64_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20799 | /* 52961 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 20800 | /* 52964 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 20801 | /* 52968 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20802 | /* 52973 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20803 | /* 52977 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20804 | /* 52981 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20805 | /* 52983 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_I), |
| 20806 | /* 52986 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20807 | /* 52988 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20808 | /* 52990 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20809 | /* 52993 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20810 | /* 52995 */ GIR_RootConstrainSelectedInstOperands, |
| 20811 | /* 52996 */ // GIR_Coverage, 1777, |
| 20812 | /* 52996 */ GIR_EraseRootFromParent_Done, |
| 20813 | /* 52997 */ // Label 1337: @52997 |
| 20814 | /* 52997 */ GIM_Try, /*On fail goto*//*Label 1338*/ GIMT_Encode4(53095), // Rule ID 1787 // |
| 20815 | /* 53002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20816 | /* 53005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20817 | /* 53008 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20818 | /* 53011 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20819 | /* 53014 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20820 | /* 53018 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20821 | /* 53022 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20822 | /* 53026 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 20823 | /* 53030 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 20824 | /* 53034 */ // MIs[1] Operand 1 |
| 20825 | /* 53034 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 20826 | /* 53039 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20827 | /* 53044 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 20828 | /* 53049 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20829 | /* 53053 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20830 | /* 53057 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20831 | /* 53059 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I64_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 20832 | /* 53059 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 20833 | /* 53062 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 20834 | /* 53066 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20835 | /* 53071 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20836 | /* 53075 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20837 | /* 53079 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20838 | /* 53081 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_I), |
| 20839 | /* 53084 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 20840 | /* 53086 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20841 | /* 53088 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20842 | /* 53091 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20843 | /* 53093 */ GIR_RootConstrainSelectedInstOperands, |
| 20844 | /* 53094 */ // GIR_Coverage, 1787, |
| 20845 | /* 53094 */ GIR_EraseRootFromParent_Done, |
| 20846 | /* 53095 */ // Label 1338: @53095 |
| 20847 | /* 53095 */ GIM_Try, /*On fail goto*//*Label 1339*/ GIMT_Encode4(53193), // Rule ID 1793 // |
| 20848 | /* 53100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20849 | /* 53103 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20850 | /* 53106 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20851 | /* 53109 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20852 | /* 53112 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20853 | /* 53116 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20854 | /* 53120 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20855 | /* 53124 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20856 | /* 53128 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20857 | /* 53132 */ // MIs[1] Operand 1 |
| 20858 | /* 53132 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 20859 | /* 53137 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20860 | /* 53142 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20861 | /* 53147 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20862 | /* 53151 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20863 | /* 53155 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20864 | /* 53157 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 20865 | /* 53157 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20866 | /* 53160 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 20867 | /* 53164 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20868 | /* 53169 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20869 | /* 53173 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20870 | /* 53177 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20871 | /* 53179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 20872 | /* 53182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20873 | /* 53184 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20874 | /* 53186 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20875 | /* 53189 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20876 | /* 53191 */ GIR_RootConstrainSelectedInstOperands, |
| 20877 | /* 53192 */ // GIR_Coverage, 1793, |
| 20878 | /* 53192 */ GIR_EraseRootFromParent_Done, |
| 20879 | /* 53193 */ // Label 1339: @53193 |
| 20880 | /* 53193 */ GIM_Try, /*On fail goto*//*Label 1340*/ GIMT_Encode4(53291), // Rule ID 1794 // |
| 20881 | /* 53198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20882 | /* 53201 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20883 | /* 53204 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20884 | /* 53207 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20885 | /* 53210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20886 | /* 53214 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20887 | /* 53218 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20888 | /* 53222 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20889 | /* 53226 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20890 | /* 53230 */ // MIs[1] Operand 1 |
| 20891 | /* 53230 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 20892 | /* 53235 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20893 | /* 53240 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20894 | /* 53245 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20895 | /* 53249 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20896 | /* 53253 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20897 | /* 53255 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 20898 | /* 53255 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20899 | /* 53258 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 20900 | /* 53262 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20901 | /* 53267 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20902 | /* 53271 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20903 | /* 53275 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20904 | /* 53277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 20905 | /* 53280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20906 | /* 53282 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20907 | /* 53284 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20908 | /* 53287 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20909 | /* 53289 */ GIR_RootConstrainSelectedInstOperands, |
| 20910 | /* 53290 */ // GIR_Coverage, 1794, |
| 20911 | /* 53290 */ GIR_EraseRootFromParent_Done, |
| 20912 | /* 53291 */ // Label 1340: @53291 |
| 20913 | /* 53291 */ GIM_Try, /*On fail goto*//*Label 1341*/ GIMT_Encode4(53389), // Rule ID 1797 // |
| 20914 | /* 53296 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20915 | /* 53299 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20916 | /* 53302 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20917 | /* 53305 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20918 | /* 53308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20919 | /* 53312 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20920 | /* 53316 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20921 | /* 53320 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20922 | /* 53324 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20923 | /* 53328 */ // MIs[1] Operand 1 |
| 20924 | /* 53328 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 20925 | /* 53333 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20926 | /* 53338 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20927 | /* 53343 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20928 | /* 53347 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20929 | /* 53351 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20930 | /* 53353 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), FGR32:{ *:[f32] }:$F) |
| 20931 | /* 53353 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20932 | /* 53356 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 20933 | /* 53360 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20934 | /* 53365 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20935 | /* 53369 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20936 | /* 53373 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20937 | /* 53375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 20938 | /* 53378 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20939 | /* 53380 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20940 | /* 53382 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20941 | /* 53385 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20942 | /* 53387 */ GIR_RootConstrainSelectedInstOperands, |
| 20943 | /* 53388 */ // GIR_Coverage, 1797, |
| 20944 | /* 53388 */ GIR_EraseRootFromParent_Done, |
| 20945 | /* 53389 */ // Label 1341: @53389 |
| 20946 | /* 53389 */ GIM_Try, /*On fail goto*//*Label 1342*/ GIMT_Encode4(53487), // Rule ID 1798 // |
| 20947 | /* 53394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20948 | /* 53397 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20949 | /* 53400 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20950 | /* 53403 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20951 | /* 53406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20952 | /* 53410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20953 | /* 53414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20954 | /* 53418 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20955 | /* 53422 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20956 | /* 53426 */ // MIs[1] Operand 1 |
| 20957 | /* 53426 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 20958 | /* 53431 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20959 | /* 53436 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20960 | /* 53441 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20961 | /* 53445 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20962 | /* 53449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20963 | /* 53451 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), FGR32:{ *:[f32] }:$F) |
| 20964 | /* 53451 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20965 | /* 53454 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 20966 | /* 53458 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 20967 | /* 53463 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 20968 | /* 53467 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 20969 | /* 53471 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 20970 | /* 53473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 20971 | /* 53476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 20972 | /* 53478 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 20973 | /* 53480 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 20974 | /* 53483 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 20975 | /* 53485 */ GIR_RootConstrainSelectedInstOperands, |
| 20976 | /* 53486 */ // GIR_Coverage, 1798, |
| 20977 | /* 53486 */ GIR_EraseRootFromParent_Done, |
| 20978 | /* 53487 */ // Label 1342: @53487 |
| 20979 | /* 53487 */ GIM_Try, /*On fail goto*//*Label 1343*/ GIMT_Encode4(53585), // Rule ID 1801 // |
| 20980 | /* 53492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 20981 | /* 53495 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 20982 | /* 53498 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 20983 | /* 53501 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 20984 | /* 53504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20985 | /* 53508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 20986 | /* 53512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 20987 | /* 53516 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 20988 | /* 53520 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 20989 | /* 53524 */ // MIs[1] Operand 1 |
| 20990 | /* 53524 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 20991 | /* 53529 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20992 | /* 53534 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 20993 | /* 53539 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20994 | /* 53543 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 20995 | /* 53547 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 20996 | /* 53549 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 20997 | /* 53549 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 20998 | /* 53552 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 20999 | /* 53556 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21000 | /* 53561 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21001 | /* 53565 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21002 | /* 53569 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21003 | /* 53571 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 21004 | /* 53574 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21005 | /* 53576 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21006 | /* 53578 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21007 | /* 53581 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21008 | /* 53583 */ GIR_RootConstrainSelectedInstOperands, |
| 21009 | /* 53584 */ // GIR_Coverage, 1801, |
| 21010 | /* 53584 */ GIR_EraseRootFromParent_Done, |
| 21011 | /* 53585 */ // Label 1343: @53585 |
| 21012 | /* 53585 */ GIM_Try, /*On fail goto*//*Label 1344*/ GIMT_Encode4(53683), // Rule ID 1803 // |
| 21013 | /* 53590 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 21014 | /* 53593 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21015 | /* 53596 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21016 | /* 53599 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21017 | /* 53602 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21018 | /* 53606 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21019 | /* 53610 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21020 | /* 53614 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21021 | /* 53618 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21022 | /* 53622 */ // MIs[1] Operand 1 |
| 21023 | /* 53622 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 21024 | /* 53627 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21025 | /* 53632 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21026 | /* 53637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21027 | /* 53641 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21028 | /* 53645 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21029 | /* 53647 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 21030 | /* 53647 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21031 | /* 53650 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 21032 | /* 53654 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21033 | /* 53659 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21034 | /* 53663 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21035 | /* 53667 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21036 | /* 53669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_S), |
| 21037 | /* 53672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21038 | /* 53674 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21039 | /* 53676 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21040 | /* 53679 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21041 | /* 53681 */ GIR_RootConstrainSelectedInstOperands, |
| 21042 | /* 53682 */ // GIR_Coverage, 1803, |
| 21043 | /* 53682 */ GIR_EraseRootFromParent_Done, |
| 21044 | /* 53683 */ // Label 1344: @53683 |
| 21045 | /* 53683 */ GIM_Try, /*On fail goto*//*Label 1345*/ GIMT_Encode4(53781), // Rule ID 1806 // |
| 21046 | /* 53688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 21047 | /* 53691 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21048 | /* 53694 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21049 | /* 53697 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21050 | /* 53700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21051 | /* 53704 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21052 | /* 53708 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21053 | /* 53712 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 21054 | /* 53716 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 21055 | /* 53720 */ // MIs[1] Operand 1 |
| 21056 | /* 53720 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 21057 | /* 53725 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21058 | /* 53730 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21059 | /* 53735 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21060 | /* 53739 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21061 | /* 53743 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21062 | /* 53745 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETGE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 21063 | /* 53745 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21064 | /* 53748 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 21065 | /* 53752 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21066 | /* 53757 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21067 | /* 53761 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21068 | /* 53765 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21069 | /* 53767 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 21070 | /* 53770 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21071 | /* 53772 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21072 | /* 53774 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21073 | /* 53777 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21074 | /* 53779 */ GIR_RootConstrainSelectedInstOperands, |
| 21075 | /* 53780 */ // GIR_Coverage, 1806, |
| 21076 | /* 53780 */ GIR_EraseRootFromParent_Done, |
| 21077 | /* 53781 */ // Label 1345: @53781 |
| 21078 | /* 53781 */ GIM_Try, /*On fail goto*//*Label 1346*/ GIMT_Encode4(53879), // Rule ID 1807 // |
| 21079 | /* 53786 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 21080 | /* 53789 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21081 | /* 53792 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21082 | /* 53795 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21083 | /* 53798 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21084 | /* 53802 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21085 | /* 53806 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21086 | /* 53810 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 21087 | /* 53814 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 21088 | /* 53818 */ // MIs[1] Operand 1 |
| 21089 | /* 53818 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 21090 | /* 53823 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21091 | /* 53828 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21092 | /* 53833 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21093 | /* 53837 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21094 | /* 53841 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21095 | /* 53843 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETUGE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 21096 | /* 53843 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21097 | /* 53846 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 21098 | /* 53850 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21099 | /* 53855 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21100 | /* 53859 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21101 | /* 53863 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21102 | /* 53865 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 21103 | /* 53868 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21104 | /* 53870 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21105 | /* 53872 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21106 | /* 53875 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21107 | /* 53877 */ GIR_RootConstrainSelectedInstOperands, |
| 21108 | /* 53878 */ // GIR_Coverage, 1807, |
| 21109 | /* 53878 */ GIR_EraseRootFromParent_Done, |
| 21110 | /* 53879 */ // Label 1346: @53879 |
| 21111 | /* 53879 */ GIM_Try, /*On fail goto*//*Label 1347*/ GIMT_Encode4(53977), // Rule ID 1810 // |
| 21112 | /* 53884 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 21113 | /* 53887 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21114 | /* 53890 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21115 | /* 53893 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21116 | /* 53896 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21117 | /* 53900 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21118 | /* 53904 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21119 | /* 53908 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 21120 | /* 53912 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 21121 | /* 53916 */ // MIs[1] Operand 1 |
| 21122 | /* 53916 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 21123 | /* 53921 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21124 | /* 53926 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21125 | /* 53931 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21126 | /* 53935 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21127 | /* 53939 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21128 | /* 53941 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETLE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), FGR32:{ *:[f32] }:$F) |
| 21129 | /* 53941 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21130 | /* 53944 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 21131 | /* 53948 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21132 | /* 53953 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21133 | /* 53957 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21134 | /* 53961 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21135 | /* 53963 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 21136 | /* 53966 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21137 | /* 53968 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21138 | /* 53970 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21139 | /* 53973 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21140 | /* 53975 */ GIR_RootConstrainSelectedInstOperands, |
| 21141 | /* 53976 */ // GIR_Coverage, 1810, |
| 21142 | /* 53976 */ GIR_EraseRootFromParent_Done, |
| 21143 | /* 53977 */ // Label 1347: @53977 |
| 21144 | /* 53977 */ GIM_Try, /*On fail goto*//*Label 1348*/ GIMT_Encode4(54075), // Rule ID 1811 // |
| 21145 | /* 53982 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 21146 | /* 53985 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21147 | /* 53988 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21148 | /* 53991 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21149 | /* 53994 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21150 | /* 53998 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21151 | /* 54002 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21152 | /* 54006 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 21153 | /* 54010 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 21154 | /* 54014 */ // MIs[1] Operand 1 |
| 21155 | /* 54014 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 21156 | /* 54019 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21157 | /* 54024 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21158 | /* 54029 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21159 | /* 54033 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21160 | /* 54037 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21161 | /* 54039 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETULE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), FGR32:{ *:[f32] }:$F) |
| 21162 | /* 54039 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21163 | /* 54042 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 21164 | /* 54046 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21165 | /* 54051 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21166 | /* 54055 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21167 | /* 54059 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21168 | /* 54061 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S), |
| 21169 | /* 54064 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21170 | /* 54066 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21171 | /* 54068 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21172 | /* 54071 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21173 | /* 54073 */ GIR_RootConstrainSelectedInstOperands, |
| 21174 | /* 54074 */ // GIR_Coverage, 1811, |
| 21175 | /* 54074 */ GIR_EraseRootFromParent_Done, |
| 21176 | /* 54075 */ // Label 1348: @54075 |
| 21177 | /* 54075 */ GIM_Try, /*On fail goto*//*Label 1349*/ GIMT_Encode4(54173), // Rule ID 1814 // |
| 21178 | /* 54080 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 21179 | /* 54083 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21180 | /* 54086 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21181 | /* 54089 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21182 | /* 54092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21183 | /* 54096 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21184 | /* 54100 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21185 | /* 54104 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 21186 | /* 54108 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 21187 | /* 54112 */ // MIs[1] Operand 1 |
| 21188 | /* 54112 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 21189 | /* 54117 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21190 | /* 54122 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21191 | /* 54127 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21192 | /* 54131 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21193 | /* 54135 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21194 | /* 54137 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETEQ:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I64_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 21195 | /* 54137 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 21196 | /* 54140 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 21197 | /* 54144 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21198 | /* 54149 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21199 | /* 54153 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21200 | /* 54157 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21201 | /* 54159 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_S), |
| 21202 | /* 54162 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21203 | /* 54164 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21204 | /* 54166 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21205 | /* 54169 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21206 | /* 54171 */ GIR_RootConstrainSelectedInstOperands, |
| 21207 | /* 54172 */ // GIR_Coverage, 1814, |
| 21208 | /* 54172 */ GIR_EraseRootFromParent_Done, |
| 21209 | /* 54173 */ // Label 1349: @54173 |
| 21210 | /* 54173 */ GIM_Try, /*On fail goto*//*Label 1350*/ GIMT_Encode4(54271), // Rule ID 1816 // |
| 21211 | /* 54178 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 21212 | /* 54181 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21213 | /* 54184 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21214 | /* 54187 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21215 | /* 54190 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21216 | /* 54194 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21217 | /* 54198 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21218 | /* 54202 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 21219 | /* 54206 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 21220 | /* 54210 */ // MIs[1] Operand 1 |
| 21221 | /* 54210 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 21222 | /* 54215 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21223 | /* 54220 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 21224 | /* 54225 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21225 | /* 54229 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21226 | /* 54233 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21227 | /* 54235 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETNE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I64_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 21228 | /* 54235 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 21229 | /* 54238 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 21230 | /* 54242 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21231 | /* 54247 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21232 | /* 54251 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21233 | /* 54255 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21234 | /* 54257 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_S), |
| 21235 | /* 54260 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21236 | /* 54262 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21237 | /* 54264 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21238 | /* 54267 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21239 | /* 54269 */ GIR_RootConstrainSelectedInstOperands, |
| 21240 | /* 54270 */ // GIR_Coverage, 1816, |
| 21241 | /* 54270 */ GIR_EraseRootFromParent_Done, |
| 21242 | /* 54271 */ // Label 1350: @54271 |
| 21243 | /* 54271 */ GIM_Try, /*On fail goto*//*Label 1351*/ GIMT_Encode4(54352), // Rule ID 1999 // |
| 21244 | /* 54276 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21245 | /* 54279 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21246 | /* 54282 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21247 | /* 54285 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21248 | /* 54288 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21249 | /* 54292 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21250 | /* 54296 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21251 | /* 54300 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21252 | /* 54304 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21253 | /* 54308 */ // MIs[1] Operand 1 |
| 21254 | /* 54308 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 21255 | /* 54313 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21256 | /* 54318 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21257 | /* 54323 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21258 | /* 54327 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21259 | /* 54331 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21260 | /* 54333 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETGE:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBteqZSlt:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b) |
| 21261 | /* 54333 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBteqZSlt), |
| 21262 | /* 54336 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21263 | /* 54338 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21264 | /* 54340 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21265 | /* 54342 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21266 | /* 54346 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21267 | /* 54350 */ GIR_RootConstrainSelectedInstOperands, |
| 21268 | /* 54351 */ // GIR_Coverage, 1999, |
| 21269 | /* 54351 */ GIR_EraseRootFromParent_Done, |
| 21270 | /* 54352 */ // Label 1351: @54352 |
| 21271 | /* 54352 */ GIM_Try, /*On fail goto*//*Label 1352*/ GIMT_Encode4(54433), // Rule ID 2000 // |
| 21272 | /* 54357 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21273 | /* 54360 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21274 | /* 54363 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21275 | /* 54366 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21276 | /* 54369 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21277 | /* 54373 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21278 | /* 54377 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21279 | /* 54381 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21280 | /* 54385 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21281 | /* 54389 */ // MIs[1] Operand 1 |
| 21282 | /* 54389 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGT), |
| 21283 | /* 54394 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21284 | /* 54399 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21285 | /* 54404 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21286 | /* 54408 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21287 | /* 54412 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21288 | /* 54414 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETGT:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBtneZSlt:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$b, CPU16Regs:{ *:[i32] }:$a) |
| 21289 | /* 54414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBtneZSlt), |
| 21290 | /* 54417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21291 | /* 54419 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21292 | /* 54421 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21293 | /* 54423 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21294 | /* 54427 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21295 | /* 54431 */ GIR_RootConstrainSelectedInstOperands, |
| 21296 | /* 54432 */ // GIR_Coverage, 2000, |
| 21297 | /* 54432 */ GIR_EraseRootFromParent_Done, |
| 21298 | /* 54433 */ // Label 1352: @54433 |
| 21299 | /* 54433 */ GIM_Try, /*On fail goto*//*Label 1353*/ GIMT_Encode4(54514), // Rule ID 2001 // |
| 21300 | /* 54438 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21301 | /* 54441 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21302 | /* 54444 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21303 | /* 54447 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21304 | /* 54450 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21305 | /* 54454 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21306 | /* 54458 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21307 | /* 54462 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21308 | /* 54466 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21309 | /* 54470 */ // MIs[1] Operand 1 |
| 21310 | /* 54470 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 21311 | /* 54475 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21312 | /* 54480 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21313 | /* 54485 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21314 | /* 54489 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21315 | /* 54493 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21316 | /* 54495 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETUGE:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBteqZSltu:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b) |
| 21317 | /* 54495 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBteqZSltu), |
| 21318 | /* 54498 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21319 | /* 54500 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21320 | /* 54502 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21321 | /* 54504 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21322 | /* 54508 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21323 | /* 54512 */ GIR_RootConstrainSelectedInstOperands, |
| 21324 | /* 54513 */ // GIR_Coverage, 2001, |
| 21325 | /* 54513 */ GIR_EraseRootFromParent_Done, |
| 21326 | /* 54514 */ // Label 1353: @54514 |
| 21327 | /* 54514 */ GIM_Try, /*On fail goto*//*Label 1354*/ GIMT_Encode4(54595), // Rule ID 2002 // |
| 21328 | /* 54519 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21329 | /* 54522 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21330 | /* 54525 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21331 | /* 54528 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21332 | /* 54531 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21333 | /* 54535 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21334 | /* 54539 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21335 | /* 54543 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21336 | /* 54547 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21337 | /* 54551 */ // MIs[1] Operand 1 |
| 21338 | /* 54551 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGT), |
| 21339 | /* 54556 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21340 | /* 54561 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21341 | /* 54566 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21342 | /* 54570 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21343 | /* 54574 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21344 | /* 54576 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETUGT:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBtneZSltu:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$b, CPU16Regs:{ *:[i32] }:$a) |
| 21345 | /* 54576 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBtneZSltu), |
| 21346 | /* 54579 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21347 | /* 54581 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21348 | /* 54583 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21349 | /* 54585 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21350 | /* 54589 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21351 | /* 54593 */ GIR_RootConstrainSelectedInstOperands, |
| 21352 | /* 54594 */ // GIR_Coverage, 2002, |
| 21353 | /* 54594 */ GIR_EraseRootFromParent_Done, |
| 21354 | /* 54595 */ // Label 1354: @54595 |
| 21355 | /* 54595 */ GIM_Try, /*On fail goto*//*Label 1355*/ GIMT_Encode4(54676), // Rule ID 2004 // |
| 21356 | /* 54600 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21357 | /* 54603 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21358 | /* 54606 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21359 | /* 54609 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21360 | /* 54612 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21361 | /* 54616 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21362 | /* 54620 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21363 | /* 54624 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21364 | /* 54628 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21365 | /* 54632 */ // MIs[1] Operand 1 |
| 21366 | /* 54632 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 21367 | /* 54637 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21368 | /* 54642 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21369 | /* 54647 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21370 | /* 54651 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21371 | /* 54655 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21372 | /* 54657 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETLE:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBteqZSlt:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$b, CPU16Regs:{ *:[i32] }:$a) |
| 21373 | /* 54657 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBteqZSlt), |
| 21374 | /* 54660 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21375 | /* 54662 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21376 | /* 54664 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21377 | /* 54666 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21378 | /* 54670 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21379 | /* 54674 */ GIR_RootConstrainSelectedInstOperands, |
| 21380 | /* 54675 */ // GIR_Coverage, 2004, |
| 21381 | /* 54675 */ GIR_EraseRootFromParent_Done, |
| 21382 | /* 54676 */ // Label 1355: @54676 |
| 21383 | /* 54676 */ GIM_Try, /*On fail goto*//*Label 1356*/ GIMT_Encode4(54757), // Rule ID 2005 // |
| 21384 | /* 54681 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21385 | /* 54684 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21386 | /* 54687 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21387 | /* 54690 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21388 | /* 54693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21389 | /* 54697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21390 | /* 54701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21391 | /* 54705 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21392 | /* 54709 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21393 | /* 54713 */ // MIs[1] Operand 1 |
| 21394 | /* 54713 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 21395 | /* 54718 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21396 | /* 54723 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21397 | /* 54728 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21398 | /* 54732 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21399 | /* 54736 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21400 | /* 54738 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETULE:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBteqZSltu:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$b, CPU16Regs:{ *:[i32] }:$a) |
| 21401 | /* 54738 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBteqZSltu), |
| 21402 | /* 54741 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21403 | /* 54743 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21404 | /* 54745 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21405 | /* 54747 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21406 | /* 54751 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21407 | /* 54755 */ GIR_RootConstrainSelectedInstOperands, |
| 21408 | /* 54756 */ // GIR_Coverage, 2005, |
| 21409 | /* 54756 */ GIR_EraseRootFromParent_Done, |
| 21410 | /* 54757 */ // Label 1356: @54757 |
| 21411 | /* 54757 */ GIM_Try, /*On fail goto*//*Label 1357*/ GIMT_Encode4(54838), // Rule ID 2006 // |
| 21412 | /* 54762 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21413 | /* 54765 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21414 | /* 54768 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21415 | /* 54771 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21416 | /* 54774 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21417 | /* 54778 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21418 | /* 54782 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21419 | /* 54786 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21420 | /* 54790 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21421 | /* 54794 */ // MIs[1] Operand 1 |
| 21422 | /* 54794 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 21423 | /* 54799 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21424 | /* 54804 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21425 | /* 54809 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21426 | /* 54813 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21427 | /* 54817 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21428 | /* 54819 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETEQ:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBteqZCmp:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$b, CPU16Regs:{ *:[i32] }:$a) |
| 21429 | /* 54819 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBteqZCmp), |
| 21430 | /* 54822 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21431 | /* 54824 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21432 | /* 54826 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21433 | /* 54828 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21434 | /* 54832 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21435 | /* 54836 */ GIR_RootConstrainSelectedInstOperands, |
| 21436 | /* 54837 */ // GIR_Coverage, 2006, |
| 21437 | /* 54837 */ GIR_EraseRootFromParent_Done, |
| 21438 | /* 54838 */ // Label 1357: @54838 |
| 21439 | /* 54838 */ GIM_Try, /*On fail goto*//*Label 1358*/ GIMT_Encode4(54919), // Rule ID 2009 // |
| 21440 | /* 54843 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 21441 | /* 54846 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21442 | /* 54849 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21443 | /* 54852 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21444 | /* 54855 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21445 | /* 54859 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21446 | /* 54863 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21447 | /* 54867 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21448 | /* 54871 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21449 | /* 54875 */ // MIs[1] Operand 1 |
| 21450 | /* 54875 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 21451 | /* 54880 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21452 | /* 54885 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21453 | /* 54890 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21454 | /* 54894 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 21455 | /* 54898 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21456 | /* 54900 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$b, SETNE:{ *:[Other] }), CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelTBtneZCmp:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$b, CPU16Regs:{ *:[i32] }:$a) |
| 21457 | /* 54900 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelTBtneZCmp), |
| 21458 | /* 54903 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 21459 | /* 54905 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 21460 | /* 54907 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 21461 | /* 54909 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/3, // b |
| 21462 | /* 54913 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // a |
| 21463 | /* 54917 */ GIR_RootConstrainSelectedInstOperands, |
| 21464 | /* 54918 */ // GIR_Coverage, 2009, |
| 21465 | /* 54918 */ GIR_EraseRootFromParent_Done, |
| 21466 | /* 54919 */ // Label 1358: @54919 |
| 21467 | /* 54919 */ GIM_Try, /*On fail goto*//*Label 1359*/ GIMT_Encode4(55017), // Rule ID 2347 // |
| 21468 | /* 54924 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21469 | /* 54927 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21470 | /* 54930 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21471 | /* 54933 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21472 | /* 54936 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21473 | /* 54940 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21474 | /* 54944 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21475 | /* 54948 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21476 | /* 54952 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21477 | /* 54956 */ // MIs[1] Operand 1 |
| 21478 | /* 54956 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 21479 | /* 54961 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21480 | /* 54966 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21481 | /* 54971 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21482 | /* 54975 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21483 | /* 54979 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21484 | /* 54981 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21485 | /* 54981 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21486 | /* 54984 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 21487 | /* 54988 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21488 | /* 54993 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21489 | /* 54997 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21490 | /* 55001 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21491 | /* 55003 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21492 | /* 55006 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21493 | /* 55008 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21494 | /* 55010 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21495 | /* 55013 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21496 | /* 55015 */ GIR_RootConstrainSelectedInstOperands, |
| 21497 | /* 55016 */ // GIR_Coverage, 2347, |
| 21498 | /* 55016 */ GIR_EraseRootFromParent_Done, |
| 21499 | /* 55017 */ // Label 1359: @55017 |
| 21500 | /* 55017 */ GIM_Try, /*On fail goto*//*Label 1360*/ GIMT_Encode4(55115), // Rule ID 2348 // |
| 21501 | /* 55022 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21502 | /* 55025 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21503 | /* 55028 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21504 | /* 55031 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21505 | /* 55034 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21506 | /* 55038 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21507 | /* 55042 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21508 | /* 55046 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21509 | /* 55050 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21510 | /* 55054 */ // MIs[1] Operand 1 |
| 21511 | /* 55054 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 21512 | /* 55059 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21513 | /* 55064 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21514 | /* 55069 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21515 | /* 55073 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21516 | /* 55077 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21517 | /* 55079 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21518 | /* 55079 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21519 | /* 55082 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 21520 | /* 55086 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21521 | /* 55091 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21522 | /* 55095 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21523 | /* 55099 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21524 | /* 55101 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21525 | /* 55104 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21526 | /* 55106 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21527 | /* 55108 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21528 | /* 55111 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21529 | /* 55113 */ GIR_RootConstrainSelectedInstOperands, |
| 21530 | /* 55114 */ // GIR_Coverage, 2348, |
| 21531 | /* 55114 */ GIR_EraseRootFromParent_Done, |
| 21532 | /* 55115 */ // Label 1360: @55115 |
| 21533 | /* 55115 */ GIM_Try, /*On fail goto*//*Label 1361*/ GIMT_Encode4(55213), // Rule ID 2351 // |
| 21534 | /* 55120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21535 | /* 55123 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21536 | /* 55126 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21537 | /* 55129 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21538 | /* 55132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21539 | /* 55136 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21540 | /* 55140 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21541 | /* 55144 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21542 | /* 55148 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21543 | /* 55152 */ // MIs[1] Operand 1 |
| 21544 | /* 55152 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 21545 | /* 55157 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21546 | /* 55162 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21547 | /* 55167 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21548 | /* 55171 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21549 | /* 55175 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21550 | /* 55177 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 21551 | /* 55177 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21552 | /* 55180 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 21553 | /* 55184 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21554 | /* 55189 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21555 | /* 55193 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21556 | /* 55197 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21557 | /* 55199 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21558 | /* 55202 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21559 | /* 55204 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21560 | /* 55206 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21561 | /* 55209 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21562 | /* 55211 */ GIR_RootConstrainSelectedInstOperands, |
| 21563 | /* 55212 */ // GIR_Coverage, 2351, |
| 21564 | /* 55212 */ GIR_EraseRootFromParent_Done, |
| 21565 | /* 55213 */ // Label 1361: @55213 |
| 21566 | /* 55213 */ GIM_Try, /*On fail goto*//*Label 1362*/ GIMT_Encode4(55311), // Rule ID 2352 // |
| 21567 | /* 55218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21568 | /* 55221 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21569 | /* 55224 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21570 | /* 55227 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21571 | /* 55230 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21572 | /* 55234 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21573 | /* 55238 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21574 | /* 55242 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21575 | /* 55246 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21576 | /* 55250 */ // MIs[1] Operand 1 |
| 21577 | /* 55250 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 21578 | /* 55255 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21579 | /* 55260 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21580 | /* 55265 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21581 | /* 55269 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21582 | /* 55273 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21583 | /* 55275 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 21584 | /* 55275 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21585 | /* 55278 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 21586 | /* 55282 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21587 | /* 55287 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21588 | /* 55291 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21589 | /* 55295 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21590 | /* 55297 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21591 | /* 55300 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21592 | /* 55302 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21593 | /* 55304 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21594 | /* 55307 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21595 | /* 55309 */ GIR_RootConstrainSelectedInstOperands, |
| 21596 | /* 55310 */ // GIR_Coverage, 2352, |
| 21597 | /* 55310 */ GIR_EraseRootFromParent_Done, |
| 21598 | /* 55311 */ // Label 1362: @55311 |
| 21599 | /* 55311 */ GIM_Try, /*On fail goto*//*Label 1363*/ GIMT_Encode4(55409), // Rule ID 2355 // |
| 21600 | /* 55316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21601 | /* 55319 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21602 | /* 55322 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21603 | /* 55325 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21604 | /* 55328 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21605 | /* 55332 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21606 | /* 55336 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21607 | /* 55340 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21608 | /* 55344 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21609 | /* 55348 */ // MIs[1] Operand 1 |
| 21610 | /* 55348 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 21611 | /* 55353 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21612 | /* 55358 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21613 | /* 55363 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21614 | /* 55367 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21615 | /* 55371 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21616 | /* 55373 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21617 | /* 55373 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21618 | /* 55376 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 21619 | /* 55380 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21620 | /* 55385 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21621 | /* 55389 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21622 | /* 55393 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21623 | /* 55395 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21624 | /* 55398 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21625 | /* 55400 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21626 | /* 55402 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21627 | /* 55405 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21628 | /* 55407 */ GIR_RootConstrainSelectedInstOperands, |
| 21629 | /* 55408 */ // GIR_Coverage, 2355, |
| 21630 | /* 55408 */ GIR_EraseRootFromParent_Done, |
| 21631 | /* 55409 */ // Label 1363: @55409 |
| 21632 | /* 55409 */ GIM_Try, /*On fail goto*//*Label 1364*/ GIMT_Encode4(55507), // Rule ID 2358 // |
| 21633 | /* 55414 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotMips32r6_NotMips64r6), |
| 21634 | /* 55417 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21635 | /* 55420 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21636 | /* 55423 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21637 | /* 55426 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21638 | /* 55430 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21639 | /* 55434 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21640 | /* 55438 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21641 | /* 55442 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21642 | /* 55446 */ // MIs[1] Operand 1 |
| 21643 | /* 55446 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 21644 | /* 55451 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21645 | /* 55456 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21646 | /* 55461 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21647 | /* 55465 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21648 | /* 55469 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21649 | /* 55471 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21650 | /* 55471 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21651 | /* 55474 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 21652 | /* 55478 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21653 | /* 55483 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21654 | /* 55487 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21655 | /* 55491 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21656 | /* 55493 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_MM), |
| 21657 | /* 55496 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21658 | /* 55498 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21659 | /* 55500 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21660 | /* 55503 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21661 | /* 55505 */ GIR_RootConstrainSelectedInstOperands, |
| 21662 | /* 55506 */ // GIR_Coverage, 2358, |
| 21663 | /* 55506 */ GIR_EraseRootFromParent_Done, |
| 21664 | /* 55507 */ // Label 1364: @55507 |
| 21665 | /* 55507 */ GIM_Try, /*On fail goto*//*Label 1365*/ GIMT_Encode4(55605), // Rule ID 2361 // |
| 21666 | /* 55512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21667 | /* 55515 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21668 | /* 55518 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21669 | /* 55521 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21670 | /* 55524 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21671 | /* 55528 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21672 | /* 55532 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21673 | /* 55536 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21674 | /* 55540 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21675 | /* 55544 */ // MIs[1] Operand 1 |
| 21676 | /* 55544 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 21677 | /* 55549 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21678 | /* 55554 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21679 | /* 55559 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21680 | /* 55563 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21681 | /* 55567 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21682 | /* 55569 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21683 | /* 55569 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21684 | /* 55572 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 21685 | /* 55576 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21686 | /* 55581 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21687 | /* 55585 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21688 | /* 55589 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21689 | /* 55591 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21690 | /* 55594 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21691 | /* 55596 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21692 | /* 55598 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21693 | /* 55601 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21694 | /* 55603 */ GIR_RootConstrainSelectedInstOperands, |
| 21695 | /* 55604 */ // GIR_Coverage, 2361, |
| 21696 | /* 55604 */ GIR_EraseRootFromParent_Done, |
| 21697 | /* 55605 */ // Label 1365: @55605 |
| 21698 | /* 55605 */ GIM_Try, /*On fail goto*//*Label 1366*/ GIMT_Encode4(55703), // Rule ID 2362 // |
| 21699 | /* 55610 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21700 | /* 55613 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21701 | /* 55616 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21702 | /* 55619 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21703 | /* 55622 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21704 | /* 55626 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21705 | /* 55630 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21706 | /* 55634 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21707 | /* 55638 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21708 | /* 55642 */ // MIs[1] Operand 1 |
| 21709 | /* 55642 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 21710 | /* 55647 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21711 | /* 55652 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21712 | /* 55657 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21713 | /* 55661 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21714 | /* 55665 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21715 | /* 55667 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21716 | /* 55667 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21717 | /* 55670 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 21718 | /* 55674 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21719 | /* 55679 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21720 | /* 55683 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21721 | /* 55687 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21722 | /* 55689 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21723 | /* 55692 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21724 | /* 55694 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21725 | /* 55696 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21726 | /* 55699 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21727 | /* 55701 */ GIR_RootConstrainSelectedInstOperands, |
| 21728 | /* 55702 */ // GIR_Coverage, 2362, |
| 21729 | /* 55702 */ GIR_EraseRootFromParent_Done, |
| 21730 | /* 55703 */ // Label 1366: @55703 |
| 21731 | /* 55703 */ GIM_Try, /*On fail goto*//*Label 1367*/ GIMT_Encode4(55801), // Rule ID 2365 // |
| 21732 | /* 55708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21733 | /* 55711 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21734 | /* 55714 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21735 | /* 55717 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21736 | /* 55720 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21737 | /* 55724 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21738 | /* 55728 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21739 | /* 55732 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21740 | /* 55736 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21741 | /* 55740 */ // MIs[1] Operand 1 |
| 21742 | /* 55740 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 21743 | /* 55745 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21744 | /* 55750 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21745 | /* 55755 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21746 | /* 55759 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21747 | /* 55763 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21748 | /* 55765 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 21749 | /* 55765 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21750 | /* 55768 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 21751 | /* 55772 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21752 | /* 55777 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21753 | /* 55781 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21754 | /* 55785 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21755 | /* 55787 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21756 | /* 55790 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21757 | /* 55792 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21758 | /* 55794 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21759 | /* 55797 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21760 | /* 55799 */ GIR_RootConstrainSelectedInstOperands, |
| 21761 | /* 55800 */ // GIR_Coverage, 2365, |
| 21762 | /* 55800 */ GIR_EraseRootFromParent_Done, |
| 21763 | /* 55801 */ // Label 1367: @55801 |
| 21764 | /* 55801 */ GIM_Try, /*On fail goto*//*Label 1368*/ GIMT_Encode4(55899), // Rule ID 2366 // |
| 21765 | /* 55806 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21766 | /* 55809 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21767 | /* 55812 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21768 | /* 55815 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21769 | /* 55818 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21770 | /* 55822 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21771 | /* 55826 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21772 | /* 55830 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21773 | /* 55834 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21774 | /* 55838 */ // MIs[1] Operand 1 |
| 21775 | /* 55838 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 21776 | /* 55843 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21777 | /* 55848 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21778 | /* 55853 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21779 | /* 55857 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21780 | /* 55861 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21781 | /* 55863 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR32:{ *:[i32] }:$F) |
| 21782 | /* 55863 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21783 | /* 55866 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 21784 | /* 55870 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21785 | /* 55875 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21786 | /* 55879 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21787 | /* 55883 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21788 | /* 55885 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21789 | /* 55888 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21790 | /* 55890 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21791 | /* 55892 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21792 | /* 55895 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21793 | /* 55897 */ GIR_RootConstrainSelectedInstOperands, |
| 21794 | /* 55898 */ // GIR_Coverage, 2366, |
| 21795 | /* 55898 */ GIR_EraseRootFromParent_Done, |
| 21796 | /* 55899 */ // Label 1368: @55899 |
| 21797 | /* 55899 */ GIM_Try, /*On fail goto*//*Label 1369*/ GIMT_Encode4(55997), // Rule ID 2369 // |
| 21798 | /* 55904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21799 | /* 55907 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21800 | /* 55910 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21801 | /* 55913 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21802 | /* 55916 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21803 | /* 55920 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21804 | /* 55924 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21805 | /* 55928 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21806 | /* 55932 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21807 | /* 55936 */ // MIs[1] Operand 1 |
| 21808 | /* 55936 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 21809 | /* 55941 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21810 | /* 55946 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21811 | /* 55951 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21812 | /* 55955 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21813 | /* 55959 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21814 | /* 55961 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVZ_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21815 | /* 55961 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21816 | /* 55964 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 21817 | /* 55968 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21818 | /* 55973 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21819 | /* 55977 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21820 | /* 55981 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21821 | /* 55983 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_MM), |
| 21822 | /* 55986 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21823 | /* 55988 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21824 | /* 55990 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21825 | /* 55993 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21826 | /* 55995 */ GIR_RootConstrainSelectedInstOperands, |
| 21827 | /* 55996 */ // GIR_Coverage, 2369, |
| 21828 | /* 55996 */ GIR_EraseRootFromParent_Done, |
| 21829 | /* 55997 */ // Label 1369: @55997 |
| 21830 | /* 55997 */ GIM_Try, /*On fail goto*//*Label 1370*/ GIMT_Encode4(56095), // Rule ID 2372 // |
| 21831 | /* 56002 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21832 | /* 56005 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21833 | /* 56008 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21834 | /* 56011 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21835 | /* 56014 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21836 | /* 56018 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21837 | /* 56022 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21838 | /* 56026 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21839 | /* 56030 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21840 | /* 56034 */ // MIs[1] Operand 1 |
| 21841 | /* 56034 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 21842 | /* 56039 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21843 | /* 56044 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21844 | /* 56049 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21845 | /* 56053 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21846 | /* 56057 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21847 | /* 56059 */ // (select:{ *:[i32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR32:{ *:[i32] }:$F) |
| 21848 | /* 56059 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21849 | /* 56062 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 21850 | /* 56066 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21851 | /* 56071 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21852 | /* 56075 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21853 | /* 56079 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21854 | /* 56081 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_MM), |
| 21855 | /* 56084 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 21856 | /* 56086 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21857 | /* 56088 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21858 | /* 56091 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21859 | /* 56093 */ GIR_RootConstrainSelectedInstOperands, |
| 21860 | /* 56094 */ // GIR_Coverage, 2372, |
| 21861 | /* 56094 */ GIR_EraseRootFromParent_Done, |
| 21862 | /* 56095 */ // Label 1370: @56095 |
| 21863 | /* 56095 */ GIM_Try, /*On fail goto*//*Label 1371*/ GIMT_Encode4(56193), // Rule ID 2407 // |
| 21864 | /* 56100 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21865 | /* 56103 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21866 | /* 56106 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21867 | /* 56109 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21868 | /* 56112 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21869 | /* 56116 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21870 | /* 56120 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21871 | /* 56124 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21872 | /* 56128 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21873 | /* 56132 */ // MIs[1] Operand 1 |
| 21874 | /* 56132 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 21875 | /* 56137 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21876 | /* 56142 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21877 | /* 56147 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21878 | /* 56151 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21879 | /* 56155 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21880 | /* 56157 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 21881 | /* 56157 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21882 | /* 56160 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 21883 | /* 56164 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21884 | /* 56169 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21885 | /* 56173 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21886 | /* 56177 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21887 | /* 56179 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S_MM), |
| 21888 | /* 56182 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21889 | /* 56184 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21890 | /* 56186 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21891 | /* 56189 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21892 | /* 56191 */ GIR_RootConstrainSelectedInstOperands, |
| 21893 | /* 56192 */ // GIR_Coverage, 2407, |
| 21894 | /* 56192 */ GIR_EraseRootFromParent_Done, |
| 21895 | /* 56193 */ // Label 1371: @56193 |
| 21896 | /* 56193 */ GIM_Try, /*On fail goto*//*Label 1372*/ GIMT_Encode4(56291), // Rule ID 2408 // |
| 21897 | /* 56198 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21898 | /* 56201 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21899 | /* 56204 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21900 | /* 56207 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21901 | /* 56210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21902 | /* 56214 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21903 | /* 56218 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21904 | /* 56222 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21905 | /* 56226 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21906 | /* 56230 */ // MIs[1] Operand 1 |
| 21907 | /* 56230 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 21908 | /* 56235 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21909 | /* 56240 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21910 | /* 56245 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21911 | /* 56249 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21912 | /* 56253 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21913 | /* 56255 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 21914 | /* 56255 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21915 | /* 56258 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 21916 | /* 56262 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21917 | /* 56267 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21918 | /* 56271 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21919 | /* 56275 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21920 | /* 56277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S_MM), |
| 21921 | /* 56280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21922 | /* 56282 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21923 | /* 56284 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21924 | /* 56287 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21925 | /* 56289 */ GIR_RootConstrainSelectedInstOperands, |
| 21926 | /* 56290 */ // GIR_Coverage, 2408, |
| 21927 | /* 56290 */ GIR_EraseRootFromParent_Done, |
| 21928 | /* 56291 */ // Label 1372: @56291 |
| 21929 | /* 56291 */ GIM_Try, /*On fail goto*//*Label 1373*/ GIMT_Encode4(56389), // Rule ID 2411 // |
| 21930 | /* 56296 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21931 | /* 56299 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21932 | /* 56302 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21933 | /* 56305 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21934 | /* 56308 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21935 | /* 56312 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21936 | /* 56316 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21937 | /* 56320 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21938 | /* 56324 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21939 | /* 56328 */ // MIs[1] Operand 1 |
| 21940 | /* 56328 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 21941 | /* 56333 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21942 | /* 56338 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21943 | /* 56343 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21944 | /* 56347 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21945 | /* 56351 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21946 | /* 56353 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), FGR32:{ *:[f32] }:$F) |
| 21947 | /* 56353 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21948 | /* 56356 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 21949 | /* 56360 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21950 | /* 56365 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21951 | /* 56369 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21952 | /* 56373 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21953 | /* 56375 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S_MM), |
| 21954 | /* 56378 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21955 | /* 56380 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21956 | /* 56382 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21957 | /* 56385 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21958 | /* 56387 */ GIR_RootConstrainSelectedInstOperands, |
| 21959 | /* 56388 */ // GIR_Coverage, 2411, |
| 21960 | /* 56388 */ GIR_EraseRootFromParent_Done, |
| 21961 | /* 56389 */ // Label 1373: @56389 |
| 21962 | /* 56389 */ GIM_Try, /*On fail goto*//*Label 1374*/ GIMT_Encode4(56487), // Rule ID 2412 // |
| 21963 | /* 56394 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21964 | /* 56397 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21965 | /* 56400 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21966 | /* 56403 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 21967 | /* 56406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21968 | /* 56410 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 21969 | /* 56414 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 21970 | /* 56418 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 21971 | /* 56422 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 21972 | /* 56426 */ // MIs[1] Operand 1 |
| 21973 | /* 56426 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 21974 | /* 56431 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21975 | /* 56436 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 21976 | /* 56441 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21977 | /* 56445 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 21978 | /* 56449 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 21979 | /* 56451 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), FGR32:{ *:[f32] }:$F) |
| 21980 | /* 56451 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 21981 | /* 56454 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 21982 | /* 56458 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 21983 | /* 56463 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 21984 | /* 56467 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 21985 | /* 56471 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 21986 | /* 56473 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S_MM), |
| 21987 | /* 56476 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 21988 | /* 56478 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 21989 | /* 56480 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 21990 | /* 56483 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 21991 | /* 56485 */ GIR_RootConstrainSelectedInstOperands, |
| 21992 | /* 56486 */ // GIR_Coverage, 2412, |
| 21993 | /* 56486 */ GIR_EraseRootFromParent_Done, |
| 21994 | /* 56487 */ // Label 1374: @56487 |
| 21995 | /* 56487 */ GIM_Try, /*On fail goto*//*Label 1375*/ GIMT_Encode4(56585), // Rule ID 2415 // |
| 21996 | /* 56492 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 21997 | /* 56495 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 21998 | /* 56498 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 21999 | /* 56501 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22000 | /* 56504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22001 | /* 56508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22002 | /* 56512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22003 | /* 56516 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22004 | /* 56520 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22005 | /* 56524 */ // MIs[1] Operand 1 |
| 22006 | /* 56524 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22007 | /* 56529 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22008 | /* 56534 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22009 | /* 56539 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22010 | /* 56543 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22011 | /* 56547 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22012 | /* 56549 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVZ_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 22013 | /* 56549 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22014 | /* 56552 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 22015 | /* 56556 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22016 | /* 56561 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22017 | /* 56565 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22018 | /* 56569 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22019 | /* 56571 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_S_MM), |
| 22020 | /* 56574 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22021 | /* 56576 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22022 | /* 56578 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22023 | /* 56581 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22024 | /* 56583 */ GIR_RootConstrainSelectedInstOperands, |
| 22025 | /* 56584 */ // GIR_Coverage, 2415, |
| 22026 | /* 56584 */ GIR_EraseRootFromParent_Done, |
| 22027 | /* 56585 */ // Label 1375: @56585 |
| 22028 | /* 56585 */ GIM_Try, /*On fail goto*//*Label 1376*/ GIMT_Encode4(56683), // Rule ID 2417 // |
| 22029 | /* 56590 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 22030 | /* 56593 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22031 | /* 56596 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22032 | /* 56599 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22033 | /* 56602 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22034 | /* 56606 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22035 | /* 56610 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22036 | /* 56614 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22037 | /* 56618 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22038 | /* 56622 */ // MIs[1] Operand 1 |
| 22039 | /* 56622 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 22040 | /* 56627 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22041 | /* 56632 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22042 | /* 56637 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22043 | /* 56641 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22044 | /* 56645 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22045 | /* 56647 */ // (select:{ *:[f32] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR32:{ *:[f32] }:$F) |
| 22046 | /* 56647 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22047 | /* 56650 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 22048 | /* 56654 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22049 | /* 56659 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22050 | /* 56663 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22051 | /* 56667 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22052 | /* 56669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_S_MM), |
| 22053 | /* 56672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22054 | /* 56674 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22055 | /* 56676 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22056 | /* 56679 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22057 | /* 56681 */ GIR_RootConstrainSelectedInstOperands, |
| 22058 | /* 56682 */ // GIR_Coverage, 2417, |
| 22059 | /* 56682 */ GIR_EraseRootFromParent_Done, |
| 22060 | /* 56683 */ // Label 1376: @56683 |
| 22061 | /* 56683 */ GIM_Try, /*On fail goto*//*Label 1377*/ GIMT_Encode4(56723), // Rule ID 370 // |
| 22062 | /* 56688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotMips4_32), |
| 22063 | /* 56691 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22064 | /* 56694 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22065 | /* 56697 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22066 | /* 56700 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22067 | /* 56704 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22068 | /* 56708 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22069 | /* 56712 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22070 | /* 56716 */ // (select:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$cond, GPR32Opnd:{ *:[i32] }:$T, GPR32Opnd:{ *:[i32] }:$F) => (PseudoSELECT_I:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$cond, GPR32Opnd:{ *:[i32] }:$T, GPR32Opnd:{ *:[i32] }:$F) |
| 22071 | /* 56716 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoSELECT_I), |
| 22072 | /* 56721 */ GIR_RootConstrainSelectedInstOperands, |
| 22073 | /* 56722 */ // GIR_Coverage, 370, |
| 22074 | /* 56722 */ GIR_Done, |
| 22075 | /* 56723 */ // Label 1377: @56723 |
| 22076 | /* 56723 */ GIM_Try, /*On fail goto*//*Label 1378*/ GIMT_Encode4(56763), // Rule ID 372 // |
| 22077 | /* 56728 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotMips4_32), |
| 22078 | /* 56731 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22079 | /* 56734 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22080 | /* 56737 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22081 | /* 56740 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22082 | /* 56744 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22083 | /* 56748 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22084 | /* 56752 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22085 | /* 56756 */ // (select:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$cond, FGR32Opnd:{ *:[f32] }:$T, FGR32Opnd:{ *:[f32] }:$F) => (PseudoSELECT_S:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$cond, FGR32Opnd:{ *:[f32] }:$T, FGR32Opnd:{ *:[f32] }:$F) |
| 22086 | /* 56756 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoSELECT_S), |
| 22087 | /* 56761 */ GIR_RootConstrainSelectedInstOperands, |
| 22088 | /* 56762 */ // GIR_Coverage, 372, |
| 22089 | /* 56762 */ GIR_Done, |
| 22090 | /* 56763 */ // Label 1378: @56763 |
| 22091 | /* 56763 */ GIM_Try, /*On fail goto*//*Label 1379*/ GIMT_Encode4(56809), // Rule ID 409 // |
| 22092 | /* 56768 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 22093 | /* 56771 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22094 | /* 56774 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22095 | /* 56777 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22096 | /* 56780 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22097 | /* 56784 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32CCRegClassID), |
| 22098 | /* 56788 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22099 | /* 56792 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22100 | /* 56796 */ // (select:{ *:[f32] } FGR32CCOpnd:{ *:[i32] }:$fd_in, FGR32Opnd:{ *:[f32] }:$ft, FGR32Opnd:{ *:[f32] }:$fs) => (SEL_S:{ *:[f32] } FGR32CCOpnd:{ *:[i32] }:$fd_in, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 22101 | /* 56796 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEL_S), |
| 22102 | /* 56799 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22103 | /* 56801 */ GIR_RootToRootCopy, /*OpIdx*/1, // fd_in |
| 22104 | /* 56803 */ GIR_RootToRootCopy, /*OpIdx*/3, // fs |
| 22105 | /* 56805 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 22106 | /* 56807 */ GIR_RootConstrainSelectedInstOperands, |
| 22107 | /* 56808 */ // GIR_Coverage, 409, |
| 22108 | /* 56808 */ GIR_EraseRootFromParent_Done, |
| 22109 | /* 56809 */ // Label 1379: @56809 |
| 22110 | /* 56809 */ GIM_Try, /*On fail goto*//*Label 1380*/ GIMT_Encode4(56855), // Rule ID 1288 // |
| 22111 | /* 56814 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 22112 | /* 56817 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22113 | /* 56820 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22114 | /* 56823 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22115 | /* 56826 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22116 | /* 56830 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32CCRegClassID), |
| 22117 | /* 56834 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22118 | /* 56838 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22119 | /* 56842 */ // (select:{ *:[f32] } FGR32CCOpnd:{ *:[i32] }:$fd_in, FGR32Opnd:{ *:[f32] }:$ft, FGR32Opnd:{ *:[f32] }:$fs) => (SEL_S_MMR6:{ *:[f32] } FGR32CCOpnd:{ *:[i32] }:$fd_in, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 22120 | /* 56842 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEL_S_MMR6), |
| 22121 | /* 56845 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22122 | /* 56847 */ GIR_RootToRootCopy, /*OpIdx*/1, // fd_in |
| 22123 | /* 56849 */ GIR_RootToRootCopy, /*OpIdx*/3, // fs |
| 22124 | /* 56851 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 22125 | /* 56853 */ GIR_RootConstrainSelectedInstOperands, |
| 22126 | /* 56854 */ // GIR_Coverage, 1288, |
| 22127 | /* 56854 */ GIR_EraseRootFromParent_Done, |
| 22128 | /* 56855 */ // Label 1380: @56855 |
| 22129 | /* 56855 */ GIM_Try, /*On fail goto*//*Label 1381*/ GIMT_Encode4(56901), // Rule ID 1749 // |
| 22130 | /* 56860 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22131 | /* 56863 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22132 | /* 56866 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22133 | /* 56869 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22134 | /* 56872 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22135 | /* 56876 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22136 | /* 56880 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22137 | /* 56884 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22138 | /* 56888 */ // (select:{ *:[i32] } GPR32:{ *:[i32] }:$cond, GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$cond, GPR32:{ *:[i32] }:$F) |
| 22139 | /* 56888 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_I), |
| 22140 | /* 56891 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22141 | /* 56893 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22142 | /* 56895 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 22143 | /* 56897 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22144 | /* 56899 */ GIR_RootConstrainSelectedInstOperands, |
| 22145 | /* 56900 */ // GIR_Coverage, 1749, |
| 22146 | /* 56900 */ GIR_EraseRootFromParent_Done, |
| 22147 | /* 56901 */ // Label 1381: @56901 |
| 22148 | /* 56901 */ GIM_Try, /*On fail goto*//*Label 1382*/ GIMT_Encode4(56947), // Rule ID 1788 // |
| 22149 | /* 56906 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22150 | /* 56909 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 22151 | /* 56912 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22152 | /* 56915 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22153 | /* 56918 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22154 | /* 56922 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22155 | /* 56926 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22156 | /* 56930 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22157 | /* 56934 */ // (select:{ *:[i32] } GPR64:{ *:[i64] }:$cond, GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I64_I:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR64:{ *:[i64] }:$cond, GPR32:{ *:[i32] }:$F) |
| 22158 | /* 56934 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_I), |
| 22159 | /* 56937 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22160 | /* 56939 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22161 | /* 56941 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 22162 | /* 56943 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22163 | /* 56945 */ GIR_RootConstrainSelectedInstOperands, |
| 22164 | /* 56946 */ // GIR_Coverage, 1788, |
| 22165 | /* 56946 */ GIR_EraseRootFromParent_Done, |
| 22166 | /* 56947 */ // Label 1382: @56947 |
| 22167 | /* 56947 */ GIM_Try, /*On fail goto*//*Label 1383*/ GIMT_Encode4(56993), // Rule ID 1804 // |
| 22168 | /* 56952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22169 | /* 56955 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22170 | /* 56958 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22171 | /* 56961 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22172 | /* 56964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22173 | /* 56968 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22174 | /* 56972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22175 | /* 56976 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22176 | /* 56980 */ // (select:{ *:[f32] } GPR32:{ *:[i32] }:$cond, FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR32:{ *:[i32] }:$cond, FGR32:{ *:[f32] }:$F) |
| 22177 | /* 56980 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_S), |
| 22178 | /* 56983 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22179 | /* 56985 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22180 | /* 56987 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 22181 | /* 56989 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22182 | /* 56991 */ GIR_RootConstrainSelectedInstOperands, |
| 22183 | /* 56992 */ // GIR_Coverage, 1804, |
| 22184 | /* 56992 */ GIR_EraseRootFromParent_Done, |
| 22185 | /* 56993 */ // Label 1383: @56993 |
| 22186 | /* 56993 */ GIM_Try, /*On fail goto*//*Label 1384*/ GIMT_Encode4(57039), // Rule ID 1817 // |
| 22187 | /* 56998 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22188 | /* 57001 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 22189 | /* 57004 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22190 | /* 57007 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22191 | /* 57010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22192 | /* 57014 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22193 | /* 57018 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22194 | /* 57022 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22195 | /* 57026 */ // (select:{ *:[f32] } GPR64:{ *:[i64] }:$cond, FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I64_S:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR64:{ *:[i64] }:$cond, FGR32:{ *:[f32] }:$F) |
| 22196 | /* 57026 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_S), |
| 22197 | /* 57029 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22198 | /* 57031 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22199 | /* 57033 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 22200 | /* 57035 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22201 | /* 57037 */ GIR_RootConstrainSelectedInstOperands, |
| 22202 | /* 57038 */ // GIR_Coverage, 1817, |
| 22203 | /* 57038 */ GIR_EraseRootFromParent_Done, |
| 22204 | /* 57039 */ // Label 1384: @57039 |
| 22205 | /* 57039 */ GIM_Try, /*On fail goto*//*Label 1385*/ GIMT_Encode4(57085), // Rule ID 2011 // |
| 22206 | /* 57044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 22207 | /* 57047 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22208 | /* 57050 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22209 | /* 57053 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22210 | /* 57056 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 22211 | /* 57060 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 22212 | /* 57064 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 22213 | /* 57068 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::CPU16RegsRegClassID), |
| 22214 | /* 57072 */ // (select:{ *:[i32] } CPU16Regs:{ *:[i32] }:$a, CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y) => (SelBneZ:{ *:[i32] } CPU16Regs:{ *:[i32] }:$x, CPU16Regs:{ *:[i32] }:$y, CPU16Regs:{ *:[i32] }:$a) |
| 22215 | /* 57072 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SelBneZ), |
| 22216 | /* 57075 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd_] |
| 22217 | /* 57077 */ GIR_RootToRootCopy, /*OpIdx*/2, // x |
| 22218 | /* 57079 */ GIR_RootToRootCopy, /*OpIdx*/3, // y |
| 22219 | /* 57081 */ GIR_RootToRootCopy, /*OpIdx*/1, // a |
| 22220 | /* 57083 */ GIR_RootConstrainSelectedInstOperands, |
| 22221 | /* 57084 */ // GIR_Coverage, 2011, |
| 22222 | /* 57084 */ GIR_EraseRootFromParent_Done, |
| 22223 | /* 57085 */ // Label 1385: @57085 |
| 22224 | /* 57085 */ GIM_Try, /*On fail goto*//*Label 1386*/ GIMT_Encode4(57131), // Rule ID 2359 // |
| 22225 | /* 57090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotMips32r6_NotMips64r6), |
| 22226 | /* 57093 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22227 | /* 57096 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22228 | /* 57099 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22229 | /* 57102 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22230 | /* 57106 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22231 | /* 57110 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22232 | /* 57114 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22233 | /* 57118 */ // (select:{ *:[i32] } GPR32:{ *:[i32] }:$cond, GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$cond, GPR32:{ *:[i32] }:$F) |
| 22234 | /* 57118 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_MM), |
| 22235 | /* 57121 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22236 | /* 57123 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22237 | /* 57125 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 22238 | /* 57127 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22239 | /* 57129 */ GIR_RootConstrainSelectedInstOperands, |
| 22240 | /* 57130 */ // GIR_Coverage, 2359, |
| 22241 | /* 57130 */ GIR_EraseRootFromParent_Done, |
| 22242 | /* 57131 */ // Label 1386: @57131 |
| 22243 | /* 57131 */ GIM_Try, /*On fail goto*//*Label 1387*/ GIMT_Encode4(57177), // Rule ID 2373 // |
| 22244 | /* 57136 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 22245 | /* 57139 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22246 | /* 57142 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22247 | /* 57145 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22248 | /* 57148 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22249 | /* 57152 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22250 | /* 57156 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22251 | /* 57160 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22252 | /* 57164 */ // (select:{ *:[i32] } GPR32:{ *:[i32] }:$cond, GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$F) => (MOVN_I_MM:{ *:[i32] } GPR32:{ *:[i32] }:$T, GPR32:{ *:[i32] }:$cond, GPR32:{ *:[i32] }:$F) |
| 22253 | /* 57164 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_MM), |
| 22254 | /* 57167 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22255 | /* 57169 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22256 | /* 57171 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 22257 | /* 57173 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22258 | /* 57175 */ GIR_RootConstrainSelectedInstOperands, |
| 22259 | /* 57176 */ // GIR_Coverage, 2373, |
| 22260 | /* 57176 */ GIR_EraseRootFromParent_Done, |
| 22261 | /* 57177 */ // Label 1387: @57177 |
| 22262 | /* 57177 */ GIM_Try, /*On fail goto*//*Label 1388*/ GIMT_Encode4(57223), // Rule ID 2418 // |
| 22263 | /* 57182 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6), |
| 22264 | /* 57185 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22265 | /* 57188 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22266 | /* 57191 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22267 | /* 57194 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22268 | /* 57198 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22269 | /* 57202 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22270 | /* 57206 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 22271 | /* 57210 */ // (select:{ *:[f32] } GPR32:{ *:[i32] }:$cond, FGR32:{ *:[f32] }:$T, FGR32:{ *:[f32] }:$F) => (MOVN_I_S_MM:{ *:[f32] } FGR32:{ *:[f32] }:$T, GPR32:{ *:[i32] }:$cond, FGR32:{ *:[f32] }:$F) |
| 22272 | /* 57210 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_S_MM), |
| 22273 | /* 57213 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22274 | /* 57215 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22275 | /* 57217 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 22276 | /* 57219 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22277 | /* 57221 */ GIR_RootConstrainSelectedInstOperands, |
| 22278 | /* 57222 */ // GIR_Coverage, 2418, |
| 22279 | /* 57222 */ GIR_EraseRootFromParent_Done, |
| 22280 | /* 57223 */ // Label 1388: @57223 |
| 22281 | /* 57223 */ GIM_Try, /*On fail goto*//*Label 1389*/ GIMT_Encode4(57301), // Rule ID 1878 // |
| 22282 | /* 57228 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 22283 | /* 57231 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22284 | /* 57234 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22285 | /* 57237 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22286 | /* 57240 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22287 | /* 57244 */ // (select:{ *:[i32] } i32:{ *:[i32] }:$cond, i32:{ *:[i32] }:$t, i32:{ *:[i32] }:$f) => (OR:{ *:[i32] } (SELNEZ:{ *:[i32] } i32:{ *:[i32] }:$t, i32:{ *:[i32] }:$cond), (SELEQZ:{ *:[i32] } i32:{ *:[i32] }:$f, i32:{ *:[i32] }:$cond)) |
| 22288 | /* 57244 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 22289 | /* 57247 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SELEQZ), |
| 22290 | /* 57251 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22291 | /* 57256 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // f |
| 22292 | /* 57260 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 22293 | /* 57264 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 22294 | /* 57266 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22295 | /* 57269 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SELNEZ), |
| 22296 | /* 57273 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22297 | /* 57278 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // t |
| 22298 | /* 57282 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 22299 | /* 57286 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22300 | /* 57288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::OR), |
| 22301 | /* 57291 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22302 | /* 57293 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22303 | /* 57296 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 22304 | /* 57299 */ GIR_RootConstrainSelectedInstOperands, |
| 22305 | /* 57300 */ // GIR_Coverage, 1878, |
| 22306 | /* 57300 */ GIR_EraseRootFromParent_Done, |
| 22307 | /* 57301 */ // Label 1389: @57301 |
| 22308 | /* 57301 */ GIM_Try, /*On fail goto*//*Label 1390*/ GIMT_Encode4(57379), // Rule ID 2435 // |
| 22309 | /* 57306 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 22310 | /* 57309 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22311 | /* 57312 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 22312 | /* 57315 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 22313 | /* 57318 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22314 | /* 57322 */ // (select:{ *:[i32] } i32:{ *:[i32] }:$cond, i32:{ *:[i32] }:$t, i32:{ *:[i32] }:$f) => (OR_MM:{ *:[i32] } (SELNEZ_MMR6:{ *:[i32] } i32:{ *:[i32] }:$t, i32:{ *:[i32] }:$cond), (SELEQZ_MMR6:{ *:[i32] } i32:{ *:[i32] }:$f, i32:{ *:[i32] }:$cond)) |
| 22315 | /* 57322 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s32, |
| 22316 | /* 57325 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SELEQZ_MMR6), |
| 22317 | /* 57329 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22318 | /* 57334 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // f |
| 22319 | /* 57338 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 22320 | /* 57342 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 22321 | /* 57344 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22322 | /* 57347 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SELNEZ_MMR6), |
| 22323 | /* 57351 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22324 | /* 57356 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // t |
| 22325 | /* 57360 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 22326 | /* 57364 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22327 | /* 57366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::OR_MM), |
| 22328 | /* 57369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22329 | /* 57371 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22330 | /* 57374 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 22331 | /* 57377 */ GIR_RootConstrainSelectedInstOperands, |
| 22332 | /* 57378 */ // GIR_Coverage, 2435, |
| 22333 | /* 57378 */ GIR_EraseRootFromParent_Done, |
| 22334 | /* 57379 */ // Label 1390: @57379 |
| 22335 | /* 57379 */ GIM_Reject, |
| 22336 | /* 57380 */ // Label 1305: @57380 |
| 22337 | /* 57380 */ GIM_Try, /*On fail goto*//*Label 1391*/ GIMT_Encode4(57456), // Rule ID 1776 // |
| 22338 | /* 57385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22339 | /* 57388 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22340 | /* 57391 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22341 | /* 57394 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22342 | /* 57397 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22343 | /* 57401 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22344 | /* 57405 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22345 | /* 57409 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22346 | /* 57413 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22347 | /* 57417 */ // MIs[1] Operand 1 |
| 22348 | /* 57417 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22349 | /* 57422 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22350 | /* 57427 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22351 | /* 57431 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22352 | /* 57435 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22353 | /* 57439 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22354 | /* 57441 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, GPR32:{ *:[i32] }:$lhs, GPR64:{ *:[i64] }:$F) |
| 22355 | /* 57441 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22356 | /* 57444 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22357 | /* 57446 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22358 | /* 57448 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22359 | /* 57452 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22360 | /* 57454 */ GIR_RootConstrainSelectedInstOperands, |
| 22361 | /* 57455 */ // GIR_Coverage, 1776, |
| 22362 | /* 57455 */ GIR_EraseRootFromParent_Done, |
| 22363 | /* 57456 */ // Label 1391: @57456 |
| 22364 | /* 57456 */ GIM_Try, /*On fail goto*//*Label 1392*/ GIMT_Encode4(57532), // Rule ID 1780 // |
| 22365 | /* 57461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22366 | /* 57464 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22367 | /* 57467 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22368 | /* 57470 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22369 | /* 57473 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22370 | /* 57477 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22371 | /* 57481 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22372 | /* 57485 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22373 | /* 57489 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22374 | /* 57493 */ // MIs[1] Operand 1 |
| 22375 | /* 57493 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22376 | /* 57498 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22377 | /* 57503 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22378 | /* 57507 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22379 | /* 57511 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22380 | /* 57515 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22381 | /* 57517 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETEQ:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I64_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$F) |
| 22382 | /* 57517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_I64), |
| 22383 | /* 57520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22384 | /* 57522 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22385 | /* 57524 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22386 | /* 57528 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22387 | /* 57530 */ GIR_RootConstrainSelectedInstOperands, |
| 22388 | /* 57531 */ // GIR_Coverage, 1780, |
| 22389 | /* 57531 */ GIR_EraseRootFromParent_Done, |
| 22390 | /* 57532 */ // Label 1392: @57532 |
| 22391 | /* 57532 */ GIM_Try, /*On fail goto*//*Label 1393*/ GIMT_Encode4(57608), // Rule ID 1786 // |
| 22392 | /* 57537 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22393 | /* 57540 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22394 | /* 57543 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22395 | /* 57546 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22396 | /* 57549 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22397 | /* 57553 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22398 | /* 57557 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22399 | /* 57561 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22400 | /* 57565 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22401 | /* 57569 */ // MIs[1] Operand 1 |
| 22402 | /* 57569 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 22403 | /* 57574 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22404 | /* 57579 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22405 | /* 57583 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22406 | /* 57587 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22407 | /* 57591 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22408 | /* 57593 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVN_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, GPR32:{ *:[i32] }:$lhs, GPR64:{ *:[i64] }:$F) |
| 22409 | /* 57593 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_I64), |
| 22410 | /* 57596 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22411 | /* 57598 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22412 | /* 57600 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22413 | /* 57604 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22414 | /* 57606 */ GIR_RootConstrainSelectedInstOperands, |
| 22415 | /* 57607 */ // GIR_Coverage, 1786, |
| 22416 | /* 57607 */ GIR_EraseRootFromParent_Done, |
| 22417 | /* 57608 */ // Label 1393: @57608 |
| 22418 | /* 57608 */ GIM_Try, /*On fail goto*//*Label 1394*/ GIMT_Encode4(57684), // Rule ID 1792 // |
| 22419 | /* 57613 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22420 | /* 57616 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22421 | /* 57619 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22422 | /* 57622 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22423 | /* 57625 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22424 | /* 57629 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22425 | /* 57633 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22426 | /* 57637 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22427 | /* 57641 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22428 | /* 57645 */ // MIs[1] Operand 1 |
| 22429 | /* 57645 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 22430 | /* 57650 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22431 | /* 57655 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22432 | /* 57659 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22433 | /* 57663 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22434 | /* 57667 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22435 | /* 57669 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETNE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVN_I64_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$F) |
| 22436 | /* 57669 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_I64), |
| 22437 | /* 57672 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22438 | /* 57674 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22439 | /* 57676 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22440 | /* 57680 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22441 | /* 57682 */ GIR_RootConstrainSelectedInstOperands, |
| 22442 | /* 57683 */ // GIR_Coverage, 1792, |
| 22443 | /* 57683 */ GIR_EraseRootFromParent_Done, |
| 22444 | /* 57684 */ // Label 1394: @57684 |
| 22445 | /* 57684 */ GIM_Try, /*On fail goto*//*Label 1395*/ GIMT_Encode4(57760), // Rule ID 1828 // |
| 22446 | /* 57689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22447 | /* 57692 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22448 | /* 57695 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22449 | /* 57698 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22450 | /* 57701 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22451 | /* 57705 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22452 | /* 57709 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22453 | /* 57713 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22454 | /* 57717 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22455 | /* 57721 */ // MIs[1] Operand 1 |
| 22456 | /* 57721 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22457 | /* 57726 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22458 | /* 57731 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22459 | /* 57735 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22460 | /* 57739 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22461 | /* 57743 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22462 | /* 57745 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$lhs, AFGR64:{ *:[f64] }:$F) |
| 22463 | /* 57745 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32), |
| 22464 | /* 57748 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22465 | /* 57750 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22466 | /* 57752 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22467 | /* 57756 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22468 | /* 57758 */ GIR_RootConstrainSelectedInstOperands, |
| 22469 | /* 57759 */ // GIR_Coverage, 1828, |
| 22470 | /* 57759 */ GIR_EraseRootFromParent_Done, |
| 22471 | /* 57760 */ // Label 1395: @57760 |
| 22472 | /* 57760 */ GIM_Try, /*On fail goto*//*Label 1396*/ GIMT_Encode4(57836), // Rule ID 1831 // |
| 22473 | /* 57765 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22474 | /* 57768 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22475 | /* 57771 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22476 | /* 57774 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22477 | /* 57777 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22478 | /* 57781 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22479 | /* 57785 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22480 | /* 57789 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22481 | /* 57793 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22482 | /* 57797 */ // MIs[1] Operand 1 |
| 22483 | /* 57797 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 22484 | /* 57802 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22485 | /* 57807 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22486 | /* 57811 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22487 | /* 57815 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22488 | /* 57819 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22489 | /* 57821 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVN_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$lhs, AFGR64:{ *:[f64] }:$F) |
| 22490 | /* 57821 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D32), |
| 22491 | /* 57824 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22492 | /* 57826 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22493 | /* 57828 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22494 | /* 57832 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22495 | /* 57834 */ GIR_RootConstrainSelectedInstOperands, |
| 22496 | /* 57835 */ // GIR_Coverage, 1831, |
| 22497 | /* 57835 */ GIR_EraseRootFromParent_Done, |
| 22498 | /* 57836 */ // Label 1396: @57836 |
| 22499 | /* 57836 */ GIM_Try, /*On fail goto*//*Label 1397*/ GIMT_Encode4(57912), // Rule ID 1849 // |
| 22500 | /* 57841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22501 | /* 57844 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22502 | /* 57847 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22503 | /* 57850 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22504 | /* 57853 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22505 | /* 57857 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22506 | /* 57861 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22507 | /* 57865 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22508 | /* 57869 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22509 | /* 57873 */ // MIs[1] Operand 1 |
| 22510 | /* 57873 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22511 | /* 57878 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22512 | /* 57883 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22513 | /* 57887 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22514 | /* 57891 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22515 | /* 57895 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22516 | /* 57897 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$lhs, FGR64:{ *:[f64] }:$F) |
| 22517 | /* 57897 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 22518 | /* 57900 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22519 | /* 57902 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22520 | /* 57904 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22521 | /* 57908 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22522 | /* 57910 */ GIR_RootConstrainSelectedInstOperands, |
| 22523 | /* 57911 */ // GIR_Coverage, 1849, |
| 22524 | /* 57911 */ GIR_EraseRootFromParent_Done, |
| 22525 | /* 57912 */ // Label 1397: @57912 |
| 22526 | /* 57912 */ GIM_Try, /*On fail goto*//*Label 1398*/ GIMT_Encode4(57988), // Rule ID 1851 // |
| 22527 | /* 57917 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22528 | /* 57920 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22529 | /* 57923 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22530 | /* 57926 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22531 | /* 57929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22532 | /* 57933 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22533 | /* 57937 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22534 | /* 57941 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22535 | /* 57945 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22536 | /* 57949 */ // MIs[1] Operand 1 |
| 22537 | /* 57949 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22538 | /* 57954 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22539 | /* 57959 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22540 | /* 57963 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22541 | /* 57967 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22542 | /* 57971 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22543 | /* 57973 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETEQ:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I64_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, GPR64:{ *:[i64] }:$lhs, FGR64:{ *:[f64] }:$F) |
| 22544 | /* 57973 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_D64), |
| 22545 | /* 57976 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22546 | /* 57978 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22547 | /* 57980 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22548 | /* 57984 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22549 | /* 57986 */ GIR_RootConstrainSelectedInstOperands, |
| 22550 | /* 57987 */ // GIR_Coverage, 1851, |
| 22551 | /* 57987 */ GIR_EraseRootFromParent_Done, |
| 22552 | /* 57988 */ // Label 1398: @57988 |
| 22553 | /* 57988 */ GIM_Try, /*On fail goto*//*Label 1399*/ GIMT_Encode4(58064), // Rule ID 1854 // |
| 22554 | /* 57993 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22555 | /* 57996 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22556 | /* 57999 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22557 | /* 58002 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22558 | /* 58005 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22559 | /* 58009 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22560 | /* 58013 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22561 | /* 58017 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22562 | /* 58021 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22563 | /* 58025 */ // MIs[1] Operand 1 |
| 22564 | /* 58025 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 22565 | /* 58030 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22566 | /* 58035 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22567 | /* 58039 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22568 | /* 58043 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22569 | /* 58047 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22570 | /* 58049 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVN_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$lhs, FGR64:{ *:[f64] }:$F) |
| 22571 | /* 58049 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D64), |
| 22572 | /* 58052 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22573 | /* 58054 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22574 | /* 58056 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22575 | /* 58060 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22576 | /* 58062 */ GIR_RootConstrainSelectedInstOperands, |
| 22577 | /* 58063 */ // GIR_Coverage, 1854, |
| 22578 | /* 58063 */ GIR_EraseRootFromParent_Done, |
| 22579 | /* 58064 */ // Label 1399: @58064 |
| 22580 | /* 58064 */ GIM_Try, /*On fail goto*//*Label 1400*/ GIMT_Encode4(58140), // Rule ID 1857 // |
| 22581 | /* 58069 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22582 | /* 58072 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22583 | /* 58075 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22584 | /* 58078 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22585 | /* 58081 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22586 | /* 58085 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22587 | /* 58089 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22588 | /* 58093 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22589 | /* 58097 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22590 | /* 58101 */ // MIs[1] Operand 1 |
| 22591 | /* 58101 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 22592 | /* 58106 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22593 | /* 58111 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22594 | /* 58115 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22595 | /* 58119 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 22596 | /* 58123 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22597 | /* 58125 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, 0:{ *:[i64] }, SETNE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVN_I64_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, GPR64:{ *:[i64] }:$lhs, FGR64:{ *:[f64] }:$F) |
| 22598 | /* 58125 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_D64), |
| 22599 | /* 58128 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22600 | /* 58130 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22601 | /* 58132 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22602 | /* 58136 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22603 | /* 58138 */ GIR_RootConstrainSelectedInstOperands, |
| 22604 | /* 58139 */ // GIR_Coverage, 1857, |
| 22605 | /* 58139 */ GIR_EraseRootFromParent_Done, |
| 22606 | /* 58140 */ // Label 1400: @58140 |
| 22607 | /* 58140 */ GIM_Try, /*On fail goto*//*Label 1401*/ GIMT_Encode4(58216), // Rule ID 2429 // |
| 22608 | /* 58145 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 22609 | /* 58148 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22610 | /* 58151 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22611 | /* 58154 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22612 | /* 58157 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22613 | /* 58161 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22614 | /* 58165 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22615 | /* 58169 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22616 | /* 58173 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22617 | /* 58177 */ // MIs[1] Operand 1 |
| 22618 | /* 58177 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22619 | /* 58182 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22620 | /* 58187 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22621 | /* 58191 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22622 | /* 58195 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22623 | /* 58199 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22624 | /* 58201 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETEQ:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$lhs, AFGR64:{ *:[f64] }:$F) |
| 22625 | /* 58201 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32_MM), |
| 22626 | /* 58204 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22627 | /* 58206 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22628 | /* 58208 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22629 | /* 58212 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22630 | /* 58214 */ GIR_RootConstrainSelectedInstOperands, |
| 22631 | /* 58215 */ // GIR_Coverage, 2429, |
| 22632 | /* 58215 */ GIR_EraseRootFromParent_Done, |
| 22633 | /* 58216 */ // Label 1401: @58216 |
| 22634 | /* 58216 */ GIM_Try, /*On fail goto*//*Label 1402*/ GIMT_Encode4(58292), // Rule ID 2432 // |
| 22635 | /* 58221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 22636 | /* 58224 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22637 | /* 58227 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22638 | /* 58230 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22639 | /* 58233 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22640 | /* 58237 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22641 | /* 58241 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22642 | /* 58245 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22643 | /* 58249 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22644 | /* 58253 */ // MIs[1] Operand 1 |
| 22645 | /* 58253 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 22646 | /* 58258 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22647 | /* 58263 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/3, 0, |
| 22648 | /* 58267 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22649 | /* 58271 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 22650 | /* 58275 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22651 | /* 58277 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, 0:{ *:[i32] }, SETNE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVN_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$lhs, AFGR64:{ *:[f64] }:$F) |
| 22652 | /* 58277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D32_MM), |
| 22653 | /* 58280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 22654 | /* 58282 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22655 | /* 58284 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22656 | /* 58288 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22657 | /* 58290 */ GIR_RootConstrainSelectedInstOperands, |
| 22658 | /* 58291 */ // GIR_Coverage, 2432, |
| 22659 | /* 58291 */ GIR_EraseRootFromParent_Done, |
| 22660 | /* 58292 */ // Label 1402: @58292 |
| 22661 | /* 58292 */ GIM_Try, /*On fail goto*//*Label 1403*/ GIMT_Encode4(58390), // Rule ID 1751 // |
| 22662 | /* 58297 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22663 | /* 58300 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22664 | /* 58303 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22665 | /* 58306 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22666 | /* 58309 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22667 | /* 58313 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22668 | /* 58317 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22669 | /* 58321 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22670 | /* 58325 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22671 | /* 58329 */ // MIs[1] Operand 1 |
| 22672 | /* 58329 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 22673 | /* 58334 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22674 | /* 58339 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22675 | /* 58344 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22676 | /* 58348 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22677 | /* 58352 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22678 | /* 58354 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 22679 | /* 58354 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22680 | /* 58357 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 22681 | /* 58361 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22682 | /* 58366 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22683 | /* 58370 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22684 | /* 58374 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22685 | /* 58376 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22686 | /* 58379 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22687 | /* 58381 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22688 | /* 58383 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22689 | /* 58386 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22690 | /* 58388 */ GIR_RootConstrainSelectedInstOperands, |
| 22691 | /* 58389 */ // GIR_Coverage, 1751, |
| 22692 | /* 58389 */ GIR_EraseRootFromParent_Done, |
| 22693 | /* 58390 */ // Label 1403: @58390 |
| 22694 | /* 58390 */ GIM_Try, /*On fail goto*//*Label 1404*/ GIMT_Encode4(58488), // Rule ID 1752 // |
| 22695 | /* 58395 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22696 | /* 58398 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22697 | /* 58401 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22698 | /* 58404 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22699 | /* 58407 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22700 | /* 58411 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22701 | /* 58415 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22702 | /* 58419 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22703 | /* 58423 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22704 | /* 58427 */ // MIs[1] Operand 1 |
| 22705 | /* 58427 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 22706 | /* 58432 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22707 | /* 58437 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22708 | /* 58442 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22709 | /* 58446 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22710 | /* 58450 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22711 | /* 58452 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 22712 | /* 58452 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22713 | /* 58455 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 22714 | /* 58459 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22715 | /* 58464 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22716 | /* 58468 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22717 | /* 58472 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22718 | /* 58474 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22719 | /* 58477 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22720 | /* 58479 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22721 | /* 58481 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22722 | /* 58484 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22723 | /* 58486 */ GIR_RootConstrainSelectedInstOperands, |
| 22724 | /* 58487 */ // GIR_Coverage, 1752, |
| 22725 | /* 58487 */ GIR_EraseRootFromParent_Done, |
| 22726 | /* 58488 */ // Label 1404: @58488 |
| 22727 | /* 58488 */ GIM_Try, /*On fail goto*//*Label 1405*/ GIMT_Encode4(58586), // Rule ID 1755 // |
| 22728 | /* 58493 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22729 | /* 58496 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22730 | /* 58499 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22731 | /* 58502 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22732 | /* 58505 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22733 | /* 58509 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22734 | /* 58513 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22735 | /* 58517 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22736 | /* 58521 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22737 | /* 58525 */ // MIs[1] Operand 1 |
| 22738 | /* 58525 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 22739 | /* 58530 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22740 | /* 58535 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22741 | /* 58540 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22742 | /* 58544 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22743 | /* 58548 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22744 | /* 58550 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR64:{ *:[i64] }:$F) |
| 22745 | /* 58550 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22746 | /* 58553 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 22747 | /* 58557 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22748 | /* 58562 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22749 | /* 58566 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22750 | /* 58570 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22751 | /* 58572 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22752 | /* 58575 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22753 | /* 58577 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22754 | /* 58579 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22755 | /* 58582 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22756 | /* 58584 */ GIR_RootConstrainSelectedInstOperands, |
| 22757 | /* 58585 */ // GIR_Coverage, 1755, |
| 22758 | /* 58585 */ GIR_EraseRootFromParent_Done, |
| 22759 | /* 58586 */ // Label 1405: @58586 |
| 22760 | /* 58586 */ GIM_Try, /*On fail goto*//*Label 1406*/ GIMT_Encode4(58684), // Rule ID 1756 // |
| 22761 | /* 58591 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22762 | /* 58594 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22763 | /* 58597 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22764 | /* 58600 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22765 | /* 58603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22766 | /* 58607 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22767 | /* 58611 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22768 | /* 58615 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22769 | /* 58619 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22770 | /* 58623 */ // MIs[1] Operand 1 |
| 22771 | /* 58623 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 22772 | /* 58628 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22773 | /* 58633 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22774 | /* 58638 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22775 | /* 58642 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22776 | /* 58646 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22777 | /* 58648 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), GPR64:{ *:[i64] }:$F) |
| 22778 | /* 58648 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22779 | /* 58651 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 22780 | /* 58655 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22781 | /* 58660 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22782 | /* 58664 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22783 | /* 58668 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22784 | /* 58670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22785 | /* 58673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22786 | /* 58675 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22787 | /* 58677 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22788 | /* 58680 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22789 | /* 58682 */ GIR_RootConstrainSelectedInstOperands, |
| 22790 | /* 58683 */ // GIR_Coverage, 1756, |
| 22791 | /* 58683 */ GIR_EraseRootFromParent_Done, |
| 22792 | /* 58684 */ // Label 1406: @58684 |
| 22793 | /* 58684 */ GIM_Try, /*On fail goto*//*Label 1407*/ GIMT_Encode4(58782), // Rule ID 1767 // |
| 22794 | /* 58689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22795 | /* 58692 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22796 | /* 58695 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22797 | /* 58698 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22798 | /* 58701 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22799 | /* 58705 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22800 | /* 58709 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22801 | /* 58713 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22802 | /* 58717 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22803 | /* 58721 */ // MIs[1] Operand 1 |
| 22804 | /* 58721 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 22805 | /* 58726 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22806 | /* 58731 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22807 | /* 58736 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22808 | /* 58740 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22809 | /* 58744 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22810 | /* 58746 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETGE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 22811 | /* 58746 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22812 | /* 58749 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 22813 | /* 58753 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22814 | /* 58758 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22815 | /* 58762 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22816 | /* 58766 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22817 | /* 58768 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22818 | /* 58771 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22819 | /* 58773 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22820 | /* 58775 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22821 | /* 58778 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22822 | /* 58780 */ GIR_RootConstrainSelectedInstOperands, |
| 22823 | /* 58781 */ // GIR_Coverage, 1767, |
| 22824 | /* 58781 */ GIR_EraseRootFromParent_Done, |
| 22825 | /* 58782 */ // Label 1407: @58782 |
| 22826 | /* 58782 */ GIM_Try, /*On fail goto*//*Label 1408*/ GIMT_Encode4(58880), // Rule ID 1768 // |
| 22827 | /* 58787 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22828 | /* 58790 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22829 | /* 58793 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22830 | /* 58796 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22831 | /* 58799 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22832 | /* 58803 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22833 | /* 58807 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22834 | /* 58811 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22835 | /* 58815 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22836 | /* 58819 */ // MIs[1] Operand 1 |
| 22837 | /* 58819 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 22838 | /* 58824 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22839 | /* 58829 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22840 | /* 58834 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22841 | /* 58838 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22842 | /* 58842 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22843 | /* 58844 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETUGE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 22844 | /* 58844 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22845 | /* 58847 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 22846 | /* 58851 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22847 | /* 58856 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22848 | /* 58860 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22849 | /* 58864 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22850 | /* 58866 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22851 | /* 58869 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22852 | /* 58871 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22853 | /* 58873 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22854 | /* 58876 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22855 | /* 58878 */ GIR_RootConstrainSelectedInstOperands, |
| 22856 | /* 58879 */ // GIR_Coverage, 1768, |
| 22857 | /* 58879 */ GIR_EraseRootFromParent_Done, |
| 22858 | /* 58880 */ // Label 1408: @58880 |
| 22859 | /* 58880 */ GIM_Try, /*On fail goto*//*Label 1409*/ GIMT_Encode4(58978), // Rule ID 1771 // |
| 22860 | /* 58885 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22861 | /* 58888 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22862 | /* 58891 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22863 | /* 58894 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22864 | /* 58897 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22865 | /* 58901 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22866 | /* 58905 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22867 | /* 58909 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22868 | /* 58913 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22869 | /* 58917 */ // MIs[1] Operand 1 |
| 22870 | /* 58917 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 22871 | /* 58922 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22872 | /* 58927 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22873 | /* 58932 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22874 | /* 58936 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22875 | /* 58940 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22876 | /* 58942 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETLE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), GPR64:{ *:[i64] }:$F) |
| 22877 | /* 58942 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22878 | /* 58945 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 22879 | /* 58949 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22880 | /* 58954 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22881 | /* 58958 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22882 | /* 58962 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22883 | /* 58964 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22884 | /* 58967 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22885 | /* 58969 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22886 | /* 58971 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22887 | /* 58974 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22888 | /* 58976 */ GIR_RootConstrainSelectedInstOperands, |
| 22889 | /* 58977 */ // GIR_Coverage, 1771, |
| 22890 | /* 58977 */ GIR_EraseRootFromParent_Done, |
| 22891 | /* 58978 */ // Label 1409: @58978 |
| 22892 | /* 58978 */ GIM_Try, /*On fail goto*//*Label 1410*/ GIMT_Encode4(59076), // Rule ID 1772 // |
| 22893 | /* 58983 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22894 | /* 58986 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22895 | /* 58989 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22896 | /* 58992 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22897 | /* 58995 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22898 | /* 58999 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22899 | /* 59003 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22900 | /* 59007 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22901 | /* 59011 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22902 | /* 59015 */ // MIs[1] Operand 1 |
| 22903 | /* 59015 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 22904 | /* 59020 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22905 | /* 59025 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22906 | /* 59030 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22907 | /* 59034 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22908 | /* 59038 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22909 | /* 59040 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETULE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), GPR64:{ *:[i64] }:$F) |
| 22910 | /* 59040 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22911 | /* 59043 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 22912 | /* 59047 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22913 | /* 59052 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22914 | /* 59056 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22915 | /* 59060 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22916 | /* 59062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22917 | /* 59065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22918 | /* 59067 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22919 | /* 59069 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22920 | /* 59072 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22921 | /* 59074 */ GIR_RootConstrainSelectedInstOperands, |
| 22922 | /* 59075 */ // GIR_Coverage, 1772, |
| 22923 | /* 59075 */ GIR_EraseRootFromParent_Done, |
| 22924 | /* 59076 */ // Label 1410: @59076 |
| 22925 | /* 59076 */ GIM_Try, /*On fail goto*//*Label 1411*/ GIMT_Encode4(59174), // Rule ID 1775 // |
| 22926 | /* 59081 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22927 | /* 59084 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22928 | /* 59087 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22929 | /* 59090 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22930 | /* 59093 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22931 | /* 59097 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22932 | /* 59101 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22933 | /* 59105 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 22934 | /* 59109 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 22935 | /* 59113 */ // MIs[1] Operand 1 |
| 22936 | /* 59113 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22937 | /* 59118 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22938 | /* 59123 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 22939 | /* 59128 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22940 | /* 59132 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22941 | /* 59136 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22942 | /* 59138 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 22943 | /* 59138 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 22944 | /* 59141 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 22945 | /* 59145 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22946 | /* 59150 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22947 | /* 59154 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22948 | /* 59158 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22949 | /* 59160 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_I64), |
| 22950 | /* 59163 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22951 | /* 59165 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22952 | /* 59167 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22953 | /* 59170 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22954 | /* 59172 */ GIR_RootConstrainSelectedInstOperands, |
| 22955 | /* 59173 */ // GIR_Coverage, 1775, |
| 22956 | /* 59173 */ GIR_EraseRootFromParent_Done, |
| 22957 | /* 59174 */ // Label 1411: @59174 |
| 22958 | /* 59174 */ GIM_Try, /*On fail goto*//*Label 1412*/ GIMT_Encode4(59272), // Rule ID 1779 // |
| 22959 | /* 59179 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22960 | /* 59182 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22961 | /* 59185 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22962 | /* 59188 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22963 | /* 59191 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22964 | /* 59195 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22965 | /* 59199 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22966 | /* 59203 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 22967 | /* 59207 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 22968 | /* 59211 */ // MIs[1] Operand 1 |
| 22969 | /* 59211 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 22970 | /* 59216 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22971 | /* 59221 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22972 | /* 59226 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22973 | /* 59230 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22974 | /* 59234 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 22975 | /* 59236 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETEQ:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVZ_I64_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 22976 | /* 59236 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 22977 | /* 59239 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 22978 | /* 59243 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 22979 | /* 59248 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 22980 | /* 59252 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 22981 | /* 59256 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 22982 | /* 59258 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_I64), |
| 22983 | /* 59261 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 22984 | /* 59263 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 22985 | /* 59265 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 22986 | /* 59268 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 22987 | /* 59270 */ GIR_RootConstrainSelectedInstOperands, |
| 22988 | /* 59271 */ // GIR_Coverage, 1779, |
| 22989 | /* 59271 */ GIR_EraseRootFromParent_Done, |
| 22990 | /* 59272 */ // Label 1412: @59272 |
| 22991 | /* 59272 */ GIM_Try, /*On fail goto*//*Label 1413*/ GIMT_Encode4(59370), // Rule ID 1784 // |
| 22992 | /* 59277 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 22993 | /* 59280 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 22994 | /* 59283 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 22995 | /* 59286 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 22996 | /* 59289 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 22997 | /* 59293 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 22998 | /* 59297 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 22999 | /* 59301 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23000 | /* 59305 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23001 | /* 59309 */ // MIs[1] Operand 1 |
| 23002 | /* 59309 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 23003 | /* 59314 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23004 | /* 59319 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23005 | /* 59324 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23006 | /* 59328 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23007 | /* 59332 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23008 | /* 59334 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVN_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 23009 | /* 59334 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23010 | /* 59337 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 23011 | /* 59341 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23012 | /* 59346 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23013 | /* 59350 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23014 | /* 59354 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23015 | /* 59356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_I64), |
| 23016 | /* 59359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 23017 | /* 59361 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23018 | /* 59363 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23019 | /* 59366 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23020 | /* 59368 */ GIR_RootConstrainSelectedInstOperands, |
| 23021 | /* 59369 */ // GIR_Coverage, 1784, |
| 23022 | /* 59369 */ GIR_EraseRootFromParent_Done, |
| 23023 | /* 59370 */ // Label 1413: @59370 |
| 23024 | /* 59370 */ GIM_Try, /*On fail goto*//*Label 1414*/ GIMT_Encode4(59468), // Rule ID 1790 // |
| 23025 | /* 59375 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23026 | /* 59378 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23027 | /* 59381 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23028 | /* 59384 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23029 | /* 59387 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23030 | /* 59391 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23031 | /* 59395 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23032 | /* 59399 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 23033 | /* 59403 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 23034 | /* 59407 */ // MIs[1] Operand 1 |
| 23035 | /* 59407 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 23036 | /* 59412 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23037 | /* 59417 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23038 | /* 59422 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23039 | /* 59426 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23040 | /* 59430 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23041 | /* 59432 */ // (select:{ *:[i64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETNE:{ *:[Other] }), GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVN_I64_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), GPR64:{ *:[i64] }:$F) |
| 23042 | /* 59432 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 23043 | /* 59435 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 23044 | /* 59439 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23045 | /* 59444 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23046 | /* 59448 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23047 | /* 59452 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23048 | /* 59454 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_I64), |
| 23049 | /* 59457 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 23050 | /* 59459 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23051 | /* 59461 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23052 | /* 59464 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23053 | /* 59466 */ GIR_RootConstrainSelectedInstOperands, |
| 23054 | /* 59467 */ // GIR_Coverage, 1790, |
| 23055 | /* 59467 */ GIR_EraseRootFromParent_Done, |
| 23056 | /* 59468 */ // Label 1414: @59468 |
| 23057 | /* 59468 */ GIM_Try, /*On fail goto*//*Label 1415*/ GIMT_Encode4(59566), // Rule ID 1819 // |
| 23058 | /* 59473 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23059 | /* 59476 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23060 | /* 59479 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23061 | /* 59482 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23062 | /* 59485 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23063 | /* 59489 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23064 | /* 59493 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23065 | /* 59497 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23066 | /* 59501 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23067 | /* 59505 */ // MIs[1] Operand 1 |
| 23068 | /* 59505 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 23069 | /* 59510 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23070 | /* 59515 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23071 | /* 59520 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23072 | /* 59524 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23073 | /* 59528 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23074 | /* 59530 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23075 | /* 59530 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23076 | /* 59533 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 23077 | /* 59537 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23078 | /* 59542 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23079 | /* 59546 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23080 | /* 59550 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23081 | /* 59552 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32), |
| 23082 | /* 59555 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23083 | /* 59557 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23084 | /* 59559 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23085 | /* 59562 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23086 | /* 59564 */ GIR_RootConstrainSelectedInstOperands, |
| 23087 | /* 59565 */ // GIR_Coverage, 1819, |
| 23088 | /* 59565 */ GIR_EraseRootFromParent_Done, |
| 23089 | /* 59566 */ // Label 1415: @59566 |
| 23090 | /* 59566 */ GIM_Try, /*On fail goto*//*Label 1416*/ GIMT_Encode4(59664), // Rule ID 1820 // |
| 23091 | /* 59571 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23092 | /* 59574 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23093 | /* 59577 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23094 | /* 59580 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23095 | /* 59583 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23096 | /* 59587 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23097 | /* 59591 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23098 | /* 59595 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23099 | /* 59599 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23100 | /* 59603 */ // MIs[1] Operand 1 |
| 23101 | /* 59603 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 23102 | /* 59608 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23103 | /* 59613 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23104 | /* 59618 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23105 | /* 59622 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23106 | /* 59626 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23107 | /* 59628 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23108 | /* 59628 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23109 | /* 59631 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 23110 | /* 59635 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23111 | /* 59640 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23112 | /* 59644 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23113 | /* 59648 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23114 | /* 59650 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32), |
| 23115 | /* 59653 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23116 | /* 59655 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23117 | /* 59657 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23118 | /* 59660 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23119 | /* 59662 */ GIR_RootConstrainSelectedInstOperands, |
| 23120 | /* 59663 */ // GIR_Coverage, 1820, |
| 23121 | /* 59663 */ GIR_EraseRootFromParent_Done, |
| 23122 | /* 59664 */ // Label 1416: @59664 |
| 23123 | /* 59664 */ GIM_Try, /*On fail goto*//*Label 1417*/ GIMT_Encode4(59762), // Rule ID 1823 // |
| 23124 | /* 59669 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23125 | /* 59672 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23126 | /* 59675 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23127 | /* 59678 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23128 | /* 59681 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23129 | /* 59685 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23130 | /* 59689 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23131 | /* 59693 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23132 | /* 59697 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23133 | /* 59701 */ // MIs[1] Operand 1 |
| 23134 | /* 59701 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 23135 | /* 59706 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23136 | /* 59711 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23137 | /* 59716 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23138 | /* 59720 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23139 | /* 59724 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23140 | /* 59726 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), AFGR64:{ *:[f64] }:$F) |
| 23141 | /* 59726 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23142 | /* 59729 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 23143 | /* 59733 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23144 | /* 59738 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23145 | /* 59742 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23146 | /* 59746 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23147 | /* 59748 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32), |
| 23148 | /* 59751 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23149 | /* 59753 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23150 | /* 59755 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23151 | /* 59758 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23152 | /* 59760 */ GIR_RootConstrainSelectedInstOperands, |
| 23153 | /* 59761 */ // GIR_Coverage, 1823, |
| 23154 | /* 59761 */ GIR_EraseRootFromParent_Done, |
| 23155 | /* 59762 */ // Label 1417: @59762 |
| 23156 | /* 59762 */ GIM_Try, /*On fail goto*//*Label 1418*/ GIMT_Encode4(59860), // Rule ID 1824 // |
| 23157 | /* 59767 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23158 | /* 59770 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23159 | /* 59773 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23160 | /* 59776 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23161 | /* 59779 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23162 | /* 59783 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23163 | /* 59787 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23164 | /* 59791 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23165 | /* 59795 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23166 | /* 59799 */ // MIs[1] Operand 1 |
| 23167 | /* 59799 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 23168 | /* 59804 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23169 | /* 59809 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23170 | /* 59814 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23171 | /* 59818 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23172 | /* 59822 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23173 | /* 59824 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), AFGR64:{ *:[f64] }:$F) |
| 23174 | /* 59824 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23175 | /* 59827 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 23176 | /* 59831 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23177 | /* 59836 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23178 | /* 59840 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23179 | /* 59844 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23180 | /* 59846 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32), |
| 23181 | /* 59849 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23182 | /* 59851 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23183 | /* 59853 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23184 | /* 59856 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23185 | /* 59858 */ GIR_RootConstrainSelectedInstOperands, |
| 23186 | /* 59859 */ // GIR_Coverage, 1824, |
| 23187 | /* 59859 */ GIR_EraseRootFromParent_Done, |
| 23188 | /* 59860 */ // Label 1418: @59860 |
| 23189 | /* 59860 */ GIM_Try, /*On fail goto*//*Label 1419*/ GIMT_Encode4(59958), // Rule ID 1827 // |
| 23190 | /* 59865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23191 | /* 59868 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23192 | /* 59871 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23193 | /* 59874 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23194 | /* 59877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23195 | /* 59881 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23196 | /* 59885 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23197 | /* 59889 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23198 | /* 59893 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23199 | /* 59897 */ // MIs[1] Operand 1 |
| 23200 | /* 59897 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 23201 | /* 59902 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23202 | /* 59907 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23203 | /* 59912 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23204 | /* 59916 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23205 | /* 59920 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23206 | /* 59922 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23207 | /* 59922 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23208 | /* 59925 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 23209 | /* 59929 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23210 | /* 59934 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23211 | /* 59938 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23212 | /* 59942 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23213 | /* 59944 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32), |
| 23214 | /* 59947 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23215 | /* 59949 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23216 | /* 59951 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23217 | /* 59954 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23218 | /* 59956 */ GIR_RootConstrainSelectedInstOperands, |
| 23219 | /* 59957 */ // GIR_Coverage, 1827, |
| 23220 | /* 59957 */ GIR_EraseRootFromParent_Done, |
| 23221 | /* 59958 */ // Label 1419: @59958 |
| 23222 | /* 59958 */ GIM_Try, /*On fail goto*//*Label 1420*/ GIMT_Encode4(60056), // Rule ID 1829 // |
| 23223 | /* 59963 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23224 | /* 59966 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23225 | /* 59969 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23226 | /* 59972 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23227 | /* 59975 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23228 | /* 59979 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23229 | /* 59983 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23230 | /* 59987 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23231 | /* 59991 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23232 | /* 59995 */ // MIs[1] Operand 1 |
| 23233 | /* 59995 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 23234 | /* 60000 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23235 | /* 60005 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23236 | /* 60010 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23237 | /* 60014 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23238 | /* 60018 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23239 | /* 60020 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVN_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23240 | /* 60020 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23241 | /* 60023 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 23242 | /* 60027 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23243 | /* 60032 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23244 | /* 60036 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23245 | /* 60040 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23246 | /* 60042 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D32), |
| 23247 | /* 60045 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23248 | /* 60047 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23249 | /* 60049 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23250 | /* 60052 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23251 | /* 60054 */ GIR_RootConstrainSelectedInstOperands, |
| 23252 | /* 60055 */ // GIR_Coverage, 1829, |
| 23253 | /* 60055 */ GIR_EraseRootFromParent_Done, |
| 23254 | /* 60056 */ // Label 1420: @60056 |
| 23255 | /* 60056 */ GIM_Try, /*On fail goto*//*Label 1421*/ GIMT_Encode4(60154), // Rule ID 1832 // |
| 23256 | /* 60061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23257 | /* 60064 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23258 | /* 60067 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23259 | /* 60070 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23260 | /* 60073 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23261 | /* 60077 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23262 | /* 60081 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23263 | /* 60085 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23264 | /* 60089 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23265 | /* 60093 */ // MIs[1] Operand 1 |
| 23266 | /* 60093 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 23267 | /* 60098 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23268 | /* 60103 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23269 | /* 60108 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23270 | /* 60112 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23271 | /* 60116 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23272 | /* 60118 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23273 | /* 60118 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23274 | /* 60121 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 23275 | /* 60125 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23276 | /* 60130 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23277 | /* 60134 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23278 | /* 60138 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23279 | /* 60140 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23280 | /* 60143 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23281 | /* 60145 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23282 | /* 60147 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23283 | /* 60150 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23284 | /* 60152 */ GIR_RootConstrainSelectedInstOperands, |
| 23285 | /* 60153 */ // GIR_Coverage, 1832, |
| 23286 | /* 60153 */ GIR_EraseRootFromParent_Done, |
| 23287 | /* 60154 */ // Label 1421: @60154 |
| 23288 | /* 60154 */ GIM_Try, /*On fail goto*//*Label 1422*/ GIMT_Encode4(60252), // Rule ID 1833 // |
| 23289 | /* 60159 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23290 | /* 60162 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23291 | /* 60165 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23292 | /* 60168 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23293 | /* 60171 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23294 | /* 60175 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23295 | /* 60179 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23296 | /* 60183 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23297 | /* 60187 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23298 | /* 60191 */ // MIs[1] Operand 1 |
| 23299 | /* 60191 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 23300 | /* 60196 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23301 | /* 60201 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23302 | /* 60206 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23303 | /* 60210 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23304 | /* 60214 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23305 | /* 60216 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23306 | /* 60216 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23307 | /* 60219 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 23308 | /* 60223 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23309 | /* 60228 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23310 | /* 60232 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23311 | /* 60236 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23312 | /* 60238 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23313 | /* 60241 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23314 | /* 60243 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23315 | /* 60245 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23316 | /* 60248 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23317 | /* 60250 */ GIR_RootConstrainSelectedInstOperands, |
| 23318 | /* 60251 */ // GIR_Coverage, 1833, |
| 23319 | /* 60251 */ GIR_EraseRootFromParent_Done, |
| 23320 | /* 60252 */ // Label 1422: @60252 |
| 23321 | /* 60252 */ GIM_Try, /*On fail goto*//*Label 1423*/ GIMT_Encode4(60350), // Rule ID 1836 // |
| 23322 | /* 60257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23323 | /* 60260 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23324 | /* 60263 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23325 | /* 60266 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23326 | /* 60269 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23327 | /* 60273 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23328 | /* 60277 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23329 | /* 60281 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23330 | /* 60285 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23331 | /* 60289 */ // MIs[1] Operand 1 |
| 23332 | /* 60289 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 23333 | /* 60294 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23334 | /* 60299 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23335 | /* 60304 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23336 | /* 60308 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23337 | /* 60312 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23338 | /* 60314 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLT:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), FGR64:{ *:[f64] }:$F) |
| 23339 | /* 60314 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23340 | /* 60317 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT), |
| 23341 | /* 60321 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23342 | /* 60326 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23343 | /* 60330 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23344 | /* 60334 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23345 | /* 60336 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23346 | /* 60339 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23347 | /* 60341 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23348 | /* 60343 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23349 | /* 60346 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23350 | /* 60348 */ GIR_RootConstrainSelectedInstOperands, |
| 23351 | /* 60349 */ // GIR_Coverage, 1836, |
| 23352 | /* 60349 */ GIR_EraseRootFromParent_Done, |
| 23353 | /* 60350 */ // Label 1423: @60350 |
| 23354 | /* 60350 */ GIM_Try, /*On fail goto*//*Label 1424*/ GIMT_Encode4(60448), // Rule ID 1837 // |
| 23355 | /* 60355 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23356 | /* 60358 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23357 | /* 60361 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23358 | /* 60364 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23359 | /* 60367 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23360 | /* 60371 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23361 | /* 60375 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23362 | /* 60379 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23363 | /* 60383 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23364 | /* 60387 */ // MIs[1] Operand 1 |
| 23365 | /* 60387 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 23366 | /* 60392 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23367 | /* 60397 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23368 | /* 60402 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23369 | /* 60406 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23370 | /* 60410 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23371 | /* 60412 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLTu:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), FGR64:{ *:[f64] }:$F) |
| 23372 | /* 60412 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23373 | /* 60415 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu), |
| 23374 | /* 60419 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23375 | /* 60424 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23376 | /* 60428 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23377 | /* 60432 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23378 | /* 60434 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23379 | /* 60437 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23380 | /* 60439 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23381 | /* 60441 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23382 | /* 60444 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23383 | /* 60446 */ GIR_RootConstrainSelectedInstOperands, |
| 23384 | /* 60447 */ // GIR_Coverage, 1837, |
| 23385 | /* 60447 */ GIR_EraseRootFromParent_Done, |
| 23386 | /* 60448 */ // Label 1424: @60448 |
| 23387 | /* 60448 */ GIM_Try, /*On fail goto*//*Label 1425*/ GIMT_Encode4(60546), // Rule ID 1840 // |
| 23388 | /* 60453 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23389 | /* 60456 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23390 | /* 60459 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23391 | /* 60462 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23392 | /* 60465 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23393 | /* 60469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23394 | /* 60473 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23395 | /* 60477 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 23396 | /* 60481 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 23397 | /* 60485 */ // MIs[1] Operand 1 |
| 23398 | /* 60485 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 23399 | /* 60490 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23400 | /* 60495 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23401 | /* 60500 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23402 | /* 60504 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23403 | /* 60508 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23404 | /* 60510 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETGE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23405 | /* 60510 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23406 | /* 60513 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 23407 | /* 60517 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23408 | /* 60522 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23409 | /* 60526 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23410 | /* 60530 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23411 | /* 60532 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23412 | /* 60535 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23413 | /* 60537 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23414 | /* 60539 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23415 | /* 60542 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23416 | /* 60544 */ GIR_RootConstrainSelectedInstOperands, |
| 23417 | /* 60545 */ // GIR_Coverage, 1840, |
| 23418 | /* 60545 */ GIR_EraseRootFromParent_Done, |
| 23419 | /* 60546 */ // Label 1425: @60546 |
| 23420 | /* 60546 */ GIM_Try, /*On fail goto*//*Label 1426*/ GIMT_Encode4(60644), // Rule ID 1841 // |
| 23421 | /* 60551 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23422 | /* 60554 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23423 | /* 60557 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23424 | /* 60560 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23425 | /* 60563 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23426 | /* 60567 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23427 | /* 60571 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23428 | /* 60575 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 23429 | /* 60579 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 23430 | /* 60583 */ // MIs[1] Operand 1 |
| 23431 | /* 60583 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 23432 | /* 60588 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23433 | /* 60593 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23434 | /* 60598 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23435 | /* 60602 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23436 | /* 60606 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23437 | /* 60608 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETUGE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23438 | /* 60608 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23439 | /* 60611 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 23440 | /* 60615 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23441 | /* 60620 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23442 | /* 60624 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23443 | /* 60628 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23444 | /* 60630 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23445 | /* 60633 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23446 | /* 60635 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23447 | /* 60637 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23448 | /* 60640 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23449 | /* 60642 */ GIR_RootConstrainSelectedInstOperands, |
| 23450 | /* 60643 */ // GIR_Coverage, 1841, |
| 23451 | /* 60643 */ GIR_EraseRootFromParent_Done, |
| 23452 | /* 60644 */ // Label 1426: @60644 |
| 23453 | /* 60644 */ GIM_Try, /*On fail goto*//*Label 1427*/ GIMT_Encode4(60742), // Rule ID 1844 // |
| 23454 | /* 60649 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23455 | /* 60652 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23456 | /* 60655 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23457 | /* 60658 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23458 | /* 60661 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23459 | /* 60665 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23460 | /* 60669 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23461 | /* 60673 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 23462 | /* 60677 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 23463 | /* 60681 */ // MIs[1] Operand 1 |
| 23464 | /* 60681 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 23465 | /* 60686 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23466 | /* 60691 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23467 | /* 60696 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23468 | /* 60700 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23469 | /* 60704 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23470 | /* 60706 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETLE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLT64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), FGR64:{ *:[f64] }:$F) |
| 23471 | /* 60706 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23472 | /* 60709 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT64), |
| 23473 | /* 60713 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23474 | /* 60718 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23475 | /* 60722 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23476 | /* 60726 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23477 | /* 60728 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23478 | /* 60731 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23479 | /* 60733 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23480 | /* 60735 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23481 | /* 60738 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23482 | /* 60740 */ GIR_RootConstrainSelectedInstOperands, |
| 23483 | /* 60741 */ // GIR_Coverage, 1844, |
| 23484 | /* 60741 */ GIR_EraseRootFromParent_Done, |
| 23485 | /* 60742 */ // Label 1427: @60742 |
| 23486 | /* 60742 */ GIM_Try, /*On fail goto*//*Label 1428*/ GIMT_Encode4(60840), // Rule ID 1845 // |
| 23487 | /* 60747 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23488 | /* 60750 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23489 | /* 60753 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23490 | /* 60756 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23491 | /* 60759 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23492 | /* 60763 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23493 | /* 60767 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23494 | /* 60771 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 23495 | /* 60775 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 23496 | /* 60779 */ // MIs[1] Operand 1 |
| 23497 | /* 60779 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 23498 | /* 60784 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23499 | /* 60789 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23500 | /* 60794 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23501 | /* 60798 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23502 | /* 60802 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23503 | /* 60804 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETULE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (SLTu64:{ *:[i32] } GPR64:{ *:[i64] }:$rhs, GPR64:{ *:[i64] }:$lhs), FGR64:{ *:[f64] }:$F) |
| 23504 | /* 60804 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23505 | /* 60807 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu64), |
| 23506 | /* 60811 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23507 | /* 60816 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23508 | /* 60820 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23509 | /* 60824 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23510 | /* 60826 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23511 | /* 60829 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23512 | /* 60831 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23513 | /* 60833 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23514 | /* 60836 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23515 | /* 60838 */ GIR_RootConstrainSelectedInstOperands, |
| 23516 | /* 60839 */ // GIR_Coverage, 1845, |
| 23517 | /* 60839 */ GIR_EraseRootFromParent_Done, |
| 23518 | /* 60840 */ // Label 1428: @60840 |
| 23519 | /* 60840 */ GIM_Try, /*On fail goto*//*Label 1429*/ GIMT_Encode4(60938), // Rule ID 1848 // |
| 23520 | /* 60845 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23521 | /* 60848 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23522 | /* 60851 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23523 | /* 60854 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23524 | /* 60857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23525 | /* 60861 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23526 | /* 60865 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23527 | /* 60869 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23528 | /* 60873 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23529 | /* 60877 */ // MIs[1] Operand 1 |
| 23530 | /* 60877 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 23531 | /* 60882 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23532 | /* 60887 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23533 | /* 60892 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23534 | /* 60896 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23535 | /* 60900 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23536 | /* 60902 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23537 | /* 60902 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23538 | /* 60905 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 23539 | /* 60909 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23540 | /* 60914 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23541 | /* 60918 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23542 | /* 60922 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23543 | /* 60924 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D64), |
| 23544 | /* 60927 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23545 | /* 60929 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23546 | /* 60931 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23547 | /* 60934 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23548 | /* 60936 */ GIR_RootConstrainSelectedInstOperands, |
| 23549 | /* 60937 */ // GIR_Coverage, 1848, |
| 23550 | /* 60937 */ GIR_EraseRootFromParent_Done, |
| 23551 | /* 60938 */ // Label 1429: @60938 |
| 23552 | /* 60938 */ GIM_Try, /*On fail goto*//*Label 1430*/ GIMT_Encode4(61036), // Rule ID 1850 // |
| 23553 | /* 60943 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23554 | /* 60946 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23555 | /* 60949 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23556 | /* 60952 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23557 | /* 60955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23558 | /* 60959 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23559 | /* 60963 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23560 | /* 60967 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 23561 | /* 60971 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 23562 | /* 60975 */ // MIs[1] Operand 1 |
| 23563 | /* 60975 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 23564 | /* 60980 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23565 | /* 60985 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23566 | /* 60990 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23567 | /* 60994 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23568 | /* 60998 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23569 | /* 61000 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETEQ:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVZ_I64_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23570 | /* 61000 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 23571 | /* 61003 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 23572 | /* 61007 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23573 | /* 61012 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23574 | /* 61016 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23575 | /* 61020 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23576 | /* 61022 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I64_D64), |
| 23577 | /* 61025 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23578 | /* 61027 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23579 | /* 61029 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23580 | /* 61032 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23581 | /* 61034 */ GIR_RootConstrainSelectedInstOperands, |
| 23582 | /* 61035 */ // GIR_Coverage, 1850, |
| 23583 | /* 61035 */ GIR_EraseRootFromParent_Done, |
| 23584 | /* 61036 */ // Label 1430: @61036 |
| 23585 | /* 61036 */ GIM_Try, /*On fail goto*//*Label 1431*/ GIMT_Encode4(61134), // Rule ID 1852 // |
| 23586 | /* 61041 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23587 | /* 61044 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23588 | /* 61047 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23589 | /* 61050 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23590 | /* 61053 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23591 | /* 61057 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23592 | /* 61061 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23593 | /* 61065 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23594 | /* 61069 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23595 | /* 61073 */ // MIs[1] Operand 1 |
| 23596 | /* 61073 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 23597 | /* 61078 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23598 | /* 61083 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23599 | /* 61088 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23600 | /* 61092 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23601 | /* 61096 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23602 | /* 61098 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVN_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (XOR:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23603 | /* 61098 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23604 | /* 61101 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR), |
| 23605 | /* 61105 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23606 | /* 61110 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23607 | /* 61114 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23608 | /* 61118 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23609 | /* 61120 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D64), |
| 23610 | /* 61123 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23611 | /* 61125 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23612 | /* 61127 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23613 | /* 61130 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23614 | /* 61132 */ GIR_RootConstrainSelectedInstOperands, |
| 23615 | /* 61133 */ // GIR_Coverage, 1852, |
| 23616 | /* 61133 */ GIR_EraseRootFromParent_Done, |
| 23617 | /* 61134 */ // Label 1431: @61134 |
| 23618 | /* 61134 */ GIM_Try, /*On fail goto*//*Label 1432*/ GIMT_Encode4(61232), // Rule ID 1855 // |
| 23619 | /* 61139 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23620 | /* 61142 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23621 | /* 61145 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23622 | /* 61148 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23623 | /* 61151 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23624 | /* 61155 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23625 | /* 61159 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23626 | /* 61163 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 23627 | /* 61167 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s64, |
| 23628 | /* 61171 */ // MIs[1] Operand 1 |
| 23629 | /* 61171 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 23630 | /* 61176 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23631 | /* 61181 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23632 | /* 61186 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23633 | /* 61190 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23634 | /* 61194 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23635 | /* 61196 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs, SETNE:{ *:[Other] }), FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVN_I64_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, (XOR64:{ *:[i64] } GPR64:{ *:[i64] }:$lhs, GPR64:{ *:[i64] }:$rhs), FGR64:{ *:[f64] }:$F) |
| 23636 | /* 61196 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 23637 | /* 61199 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR64), |
| 23638 | /* 61203 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23639 | /* 61208 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23640 | /* 61212 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23641 | /* 61216 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23642 | /* 61218 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_D64), |
| 23643 | /* 61221 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23644 | /* 61223 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23645 | /* 61225 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23646 | /* 61228 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23647 | /* 61230 */ GIR_RootConstrainSelectedInstOperands, |
| 23648 | /* 61231 */ // GIR_Coverage, 1855, |
| 23649 | /* 61231 */ GIR_EraseRootFromParent_Done, |
| 23650 | /* 61232 */ // Label 1432: @61232 |
| 23651 | /* 61232 */ GIM_Try, /*On fail goto*//*Label 1433*/ GIMT_Encode4(61330), // Rule ID 2420 // |
| 23652 | /* 61237 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 23653 | /* 61240 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23654 | /* 61243 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23655 | /* 61246 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23656 | /* 61249 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23657 | /* 61253 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23658 | /* 61257 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23659 | /* 61261 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23660 | /* 61265 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23661 | /* 61269 */ // MIs[1] Operand 1 |
| 23662 | /* 61269 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SGE), |
| 23663 | /* 61274 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23664 | /* 61279 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23665 | /* 61284 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23666 | /* 61288 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23667 | /* 61292 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23668 | /* 61294 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETGE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23669 | /* 61294 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23670 | /* 61297 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 23671 | /* 61301 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23672 | /* 61306 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23673 | /* 61310 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23674 | /* 61314 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23675 | /* 61316 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32_MM), |
| 23676 | /* 61319 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23677 | /* 61321 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23678 | /* 61323 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23679 | /* 61326 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23680 | /* 61328 */ GIR_RootConstrainSelectedInstOperands, |
| 23681 | /* 61329 */ // GIR_Coverage, 2420, |
| 23682 | /* 61329 */ GIR_EraseRootFromParent_Done, |
| 23683 | /* 61330 */ // Label 1433: @61330 |
| 23684 | /* 61330 */ GIM_Try, /*On fail goto*//*Label 1434*/ GIMT_Encode4(61428), // Rule ID 2421 // |
| 23685 | /* 61335 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 23686 | /* 61338 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23687 | /* 61341 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23688 | /* 61344 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23689 | /* 61347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23690 | /* 61351 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23691 | /* 61355 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23692 | /* 61359 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23693 | /* 61363 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23694 | /* 61367 */ // MIs[1] Operand 1 |
| 23695 | /* 61367 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_UGE), |
| 23696 | /* 61372 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23697 | /* 61377 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23698 | /* 61382 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23699 | /* 61386 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23700 | /* 61390 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23701 | /* 61392 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETUGE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23702 | /* 61392 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23703 | /* 61395 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 23704 | /* 61399 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23705 | /* 61404 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23706 | /* 61408 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23707 | /* 61412 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23708 | /* 61414 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32_MM), |
| 23709 | /* 61417 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23710 | /* 61419 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23711 | /* 61421 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23712 | /* 61424 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23713 | /* 61426 */ GIR_RootConstrainSelectedInstOperands, |
| 23714 | /* 61427 */ // GIR_Coverage, 2421, |
| 23715 | /* 61427 */ GIR_EraseRootFromParent_Done, |
| 23716 | /* 61428 */ // Label 1434: @61428 |
| 23717 | /* 61428 */ GIM_Try, /*On fail goto*//*Label 1435*/ GIMT_Encode4(61526), // Rule ID 2424 // |
| 23718 | /* 61433 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 23719 | /* 61436 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23720 | /* 61439 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23721 | /* 61442 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23722 | /* 61445 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23723 | /* 61449 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23724 | /* 61453 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23725 | /* 61457 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23726 | /* 61461 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23727 | /* 61465 */ // MIs[1] Operand 1 |
| 23728 | /* 61465 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_SLE), |
| 23729 | /* 61470 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23730 | /* 61475 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23731 | /* 61480 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23732 | /* 61484 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23733 | /* 61488 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23734 | /* 61490 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETLE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLT_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), AFGR64:{ *:[f64] }:$F) |
| 23735 | /* 61490 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23736 | /* 61493 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLT_MM), |
| 23737 | /* 61497 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23738 | /* 61502 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23739 | /* 61506 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23740 | /* 61510 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23741 | /* 61512 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32_MM), |
| 23742 | /* 61515 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23743 | /* 61517 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23744 | /* 61519 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23745 | /* 61522 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23746 | /* 61524 */ GIR_RootConstrainSelectedInstOperands, |
| 23747 | /* 61525 */ // GIR_Coverage, 2424, |
| 23748 | /* 61525 */ GIR_EraseRootFromParent_Done, |
| 23749 | /* 61526 */ // Label 1435: @61526 |
| 23750 | /* 61526 */ GIM_Try, /*On fail goto*//*Label 1436*/ GIMT_Encode4(61624), // Rule ID 2425 // |
| 23751 | /* 61531 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 23752 | /* 61534 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23753 | /* 61537 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23754 | /* 61540 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23755 | /* 61543 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23756 | /* 61547 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23757 | /* 61551 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23758 | /* 61555 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23759 | /* 61559 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23760 | /* 61563 */ // MIs[1] Operand 1 |
| 23761 | /* 61563 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_ULE), |
| 23762 | /* 61568 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23763 | /* 61573 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23764 | /* 61578 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23765 | /* 61582 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23766 | /* 61586 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23767 | /* 61588 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETULE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (SLTu_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rhs, GPR32:{ *:[i32] }:$lhs), AFGR64:{ *:[f64] }:$F) |
| 23768 | /* 61588 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23769 | /* 61591 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SLTu_MM), |
| 23770 | /* 61595 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23771 | /* 61600 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23772 | /* 61604 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23773 | /* 61608 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23774 | /* 61610 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32_MM), |
| 23775 | /* 61613 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23776 | /* 61615 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23777 | /* 61617 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23778 | /* 61620 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23779 | /* 61622 */ GIR_RootConstrainSelectedInstOperands, |
| 23780 | /* 61623 */ // GIR_Coverage, 2425, |
| 23781 | /* 61623 */ GIR_EraseRootFromParent_Done, |
| 23782 | /* 61624 */ // Label 1436: @61624 |
| 23783 | /* 61624 */ GIM_Try, /*On fail goto*//*Label 1437*/ GIMT_Encode4(61722), // Rule ID 2428 // |
| 23784 | /* 61629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 23785 | /* 61632 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23786 | /* 61635 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23787 | /* 61638 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23788 | /* 61641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23789 | /* 61645 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23790 | /* 61649 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23791 | /* 61653 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23792 | /* 61657 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23793 | /* 61661 */ // MIs[1] Operand 1 |
| 23794 | /* 61661 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_EQ), |
| 23795 | /* 61666 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23796 | /* 61671 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23797 | /* 61676 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23798 | /* 61680 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23799 | /* 61684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23800 | /* 61686 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETEQ:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVZ_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23801 | /* 61686 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23802 | /* 61689 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 23803 | /* 61693 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23804 | /* 61698 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23805 | /* 61702 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23806 | /* 61706 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23807 | /* 61708 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVZ_I_D32_MM), |
| 23808 | /* 61711 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23809 | /* 61713 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23810 | /* 61715 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23811 | /* 61718 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23812 | /* 61720 */ GIR_RootConstrainSelectedInstOperands, |
| 23813 | /* 61721 */ // GIR_Coverage, 2428, |
| 23814 | /* 61721 */ GIR_EraseRootFromParent_Done, |
| 23815 | /* 61722 */ // Label 1437: @61722 |
| 23816 | /* 61722 */ GIM_Try, /*On fail goto*//*Label 1438*/ GIMT_Encode4(61820), // Rule ID 2430 // |
| 23817 | /* 61727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 23818 | /* 61730 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23819 | /* 61733 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23820 | /* 61736 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23821 | /* 61739 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23822 | /* 61743 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 23823 | /* 61747 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_ICMP), |
| 23824 | /* 61751 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 23825 | /* 61755 */ GIM_CheckType, /*MI*/1, /*Op*/3, /*Type*/GILLT_s32, |
| 23826 | /* 61759 */ // MIs[1] Operand 1 |
| 23827 | /* 61759 */ GIM_CheckCmpPredicate, /*MI*/1, /*Op*/1, /*Predicate*/GIMT_Encode2(CmpInst::ICMP_NE), |
| 23828 | /* 61764 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23829 | /* 61769 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23830 | /* 61774 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23831 | /* 61778 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23832 | /* 61782 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 23833 | /* 61784 */ // (select:{ *:[f64] } (setcc:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs, SETNE:{ *:[Other] }), AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVN_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, (XOR_MM:{ *:[i32] } GPR32:{ *:[i32] }:$lhs, GPR32:{ *:[i32] }:$rhs), AFGR64:{ *:[f64] }:$F) |
| 23834 | /* 61784 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 23835 | /* 61787 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::XOR_MM), |
| 23836 | /* 61791 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 23837 | /* 61796 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/2, // lhs |
| 23838 | /* 61800 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/1, /*OpIdx*/3, // rhs |
| 23839 | /* 61804 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 23840 | /* 61806 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D32_MM), |
| 23841 | /* 61809 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23842 | /* 61811 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23843 | /* 61813 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 23844 | /* 61816 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23845 | /* 61818 */ GIR_RootConstrainSelectedInstOperands, |
| 23846 | /* 61819 */ // GIR_Coverage, 2430, |
| 23847 | /* 61819 */ GIR_EraseRootFromParent_Done, |
| 23848 | /* 61820 */ // Label 1438: @61820 |
| 23849 | /* 61820 */ GIM_Try, /*On fail goto*//*Label 1439*/ GIMT_Encode4(61860), // Rule ID 371 // |
| 23850 | /* 61825 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotMips4_32), |
| 23851 | /* 61828 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23852 | /* 61831 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23853 | /* 61834 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23854 | /* 61837 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23855 | /* 61841 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23856 | /* 61845 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23857 | /* 61849 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23858 | /* 61853 */ // (select:{ *:[i64] } GPR32Opnd:{ *:[i32] }:$cond, GPR64Opnd:{ *:[i64] }:$T, GPR64Opnd:{ *:[i64] }:$F) => (PseudoSELECT_I64:{ *:[i64] } GPR32Opnd:{ *:[i32] }:$cond, GPR64Opnd:{ *:[i64] }:$T, GPR64Opnd:{ *:[i64] }:$F) |
| 23859 | /* 61853 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoSELECT_I64), |
| 23860 | /* 61858 */ GIR_RootConstrainSelectedInstOperands, |
| 23861 | /* 61859 */ // GIR_Coverage, 371, |
| 23862 | /* 61859 */ GIR_Done, |
| 23863 | /* 61860 */ // Label 1439: @61860 |
| 23864 | /* 61860 */ GIM_Try, /*On fail goto*//*Label 1440*/ GIMT_Encode4(61900), // Rule ID 373 // |
| 23865 | /* 61865 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotFP64bit_NotMips4_32), |
| 23866 | /* 61868 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23867 | /* 61871 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23868 | /* 61874 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23869 | /* 61877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23870 | /* 61881 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23871 | /* 61885 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23872 | /* 61889 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23873 | /* 61893 */ // (select:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$cond, AFGR64Opnd:{ *:[f64] }:$T, AFGR64Opnd:{ *:[f64] }:$F) => (PseudoSELECT_D32:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$cond, AFGR64Opnd:{ *:[f64] }:$T, AFGR64Opnd:{ *:[f64] }:$F) |
| 23874 | /* 61893 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoSELECT_D32), |
| 23875 | /* 61898 */ GIR_RootConstrainSelectedInstOperands, |
| 23876 | /* 61899 */ // GIR_Coverage, 373, |
| 23877 | /* 61899 */ GIR_Done, |
| 23878 | /* 61900 */ // Label 1440: @61900 |
| 23879 | /* 61900 */ GIM_Try, /*On fail goto*//*Label 1441*/ GIMT_Encode4(61940), // Rule ID 374 // |
| 23880 | /* 61905 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_NotMips4_32), |
| 23881 | /* 61908 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23882 | /* 61911 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23883 | /* 61914 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23884 | /* 61917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23885 | /* 61921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23886 | /* 61925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23887 | /* 61929 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23888 | /* 61933 */ // (select:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$cond, FGR64Opnd:{ *:[f64] }:$T, FGR64Opnd:{ *:[f64] }:$F) => (PseudoSELECT_D64:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$cond, FGR64Opnd:{ *:[f64] }:$T, FGR64Opnd:{ *:[f64] }:$F) |
| 23889 | /* 61933 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoSELECT_D64), |
| 23890 | /* 61938 */ GIR_RootConstrainSelectedInstOperands, |
| 23891 | /* 61939 */ // GIR_Coverage, 374, |
| 23892 | /* 61939 */ GIR_Done, |
| 23893 | /* 61940 */ // Label 1441: @61940 |
| 23894 | /* 61940 */ GIM_Try, /*On fail goto*//*Label 1442*/ GIMT_Encode4(61986), // Rule ID 408 // |
| 23895 | /* 61945 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 23896 | /* 61948 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23897 | /* 61951 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23898 | /* 61954 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23899 | /* 61957 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23900 | /* 61961 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64CCRegClassID), |
| 23901 | /* 61965 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23902 | /* 61969 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23903 | /* 61973 */ // (select:{ *:[f64] } FGR64CCOpnd:{ *:[i32] }:$fd_in, FGR64Opnd:{ *:[f64] }:$ft, FGR64Opnd:{ *:[f64] }:$fs) => (SEL_D:{ *:[f64] } FGR64CCOpnd:{ *:[i32] }:$fd_in, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 23904 | /* 61973 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEL_D), |
| 23905 | /* 61976 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23906 | /* 61978 */ GIR_RootToRootCopy, /*OpIdx*/1, // fd_in |
| 23907 | /* 61980 */ GIR_RootToRootCopy, /*OpIdx*/3, // fs |
| 23908 | /* 61982 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 23909 | /* 61984 */ GIR_RootConstrainSelectedInstOperands, |
| 23910 | /* 61985 */ // GIR_Coverage, 408, |
| 23911 | /* 61985 */ GIR_EraseRootFromParent_Done, |
| 23912 | /* 61986 */ // Label 1442: @61986 |
| 23913 | /* 61986 */ GIM_Try, /*On fail goto*//*Label 1443*/ GIMT_Encode4(62032), // Rule ID 1289 // |
| 23914 | /* 61991 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 23915 | /* 61994 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23916 | /* 61997 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23917 | /* 62000 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23918 | /* 62003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23919 | /* 62007 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64CCRegClassID), |
| 23920 | /* 62011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23921 | /* 62015 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23922 | /* 62019 */ // (select:{ *:[f64] } FGR64CCOpnd:{ *:[i32] }:$fd_in, FGR64Opnd:{ *:[f64] }:$ft, FGR64Opnd:{ *:[f64] }:$fs) => (SEL_D_MMR6:{ *:[f64] } FGR64CCOpnd:{ *:[i32] }:$fd_in, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 23923 | /* 62019 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::SEL_D_MMR6), |
| 23924 | /* 62022 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23925 | /* 62024 */ GIR_RootToRootCopy, /*OpIdx*/1, // fd_in |
| 23926 | /* 62026 */ GIR_RootToRootCopy, /*OpIdx*/3, // fs |
| 23927 | /* 62028 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 23928 | /* 62030 */ GIR_RootConstrainSelectedInstOperands, |
| 23929 | /* 62031 */ // GIR_Coverage, 1289, |
| 23930 | /* 62031 */ GIR_EraseRootFromParent_Done, |
| 23931 | /* 62032 */ // Label 1443: @62032 |
| 23932 | /* 62032 */ GIM_Try, /*On fail goto*//*Label 1444*/ GIMT_Encode4(62078), // Rule ID 1785 // |
| 23933 | /* 62037 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23934 | /* 62040 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23935 | /* 62043 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23936 | /* 62046 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23937 | /* 62049 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23938 | /* 62053 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23939 | /* 62057 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23940 | /* 62061 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23941 | /* 62065 */ // (select:{ *:[i64] } GPR32:{ *:[i32] }:$cond, GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVN_I_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, GPR32:{ *:[i32] }:$cond, GPR64:{ *:[i64] }:$F) |
| 23942 | /* 62065 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_I64), |
| 23943 | /* 62068 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 23944 | /* 62070 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23945 | /* 62072 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 23946 | /* 62074 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23947 | /* 62076 */ GIR_RootConstrainSelectedInstOperands, |
| 23948 | /* 62077 */ // GIR_Coverage, 1785, |
| 23949 | /* 62077 */ GIR_EraseRootFromParent_Done, |
| 23950 | /* 62078 */ // Label 1444: @62078 |
| 23951 | /* 62078 */ GIM_Try, /*On fail goto*//*Label 1445*/ GIMT_Encode4(62124), // Rule ID 1791 // |
| 23952 | /* 62083 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23953 | /* 62086 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 23954 | /* 62089 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23955 | /* 62092 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23956 | /* 62095 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23957 | /* 62099 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23958 | /* 62103 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23959 | /* 62107 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 23960 | /* 62111 */ // (select:{ *:[i64] } GPR64:{ *:[i64] }:$cond, GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$F) => (MOVN_I64_I64:{ *:[i64] } GPR64:{ *:[i64] }:$T, GPR64:{ *:[i64] }:$cond, GPR64:{ *:[i64] }:$F) |
| 23961 | /* 62111 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_I64), |
| 23962 | /* 62114 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 23963 | /* 62116 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23964 | /* 62118 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 23965 | /* 62120 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23966 | /* 62122 */ GIR_RootConstrainSelectedInstOperands, |
| 23967 | /* 62123 */ // GIR_Coverage, 1791, |
| 23968 | /* 62123 */ GIR_EraseRootFromParent_Done, |
| 23969 | /* 62124 */ // Label 1445: @62124 |
| 23970 | /* 62124 */ GIM_Try, /*On fail goto*//*Label 1446*/ GIMT_Encode4(62170), // Rule ID 1830 // |
| 23971 | /* 62129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23972 | /* 62132 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23973 | /* 62135 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23974 | /* 62138 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23975 | /* 62141 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23976 | /* 62145 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23977 | /* 62149 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23978 | /* 62153 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 23979 | /* 62157 */ // (select:{ *:[f64] } GPR32:{ *:[i32] }:$cond, AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVN_I_D32:{ *:[f64] } AFGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$cond, AFGR64:{ *:[f64] }:$F) |
| 23980 | /* 62157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D32), |
| 23981 | /* 62160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 23982 | /* 62162 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 23983 | /* 62164 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 23984 | /* 62166 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 23985 | /* 62168 */ GIR_RootConstrainSelectedInstOperands, |
| 23986 | /* 62169 */ // GIR_Coverage, 1830, |
| 23987 | /* 62169 */ GIR_EraseRootFromParent_Done, |
| 23988 | /* 62170 */ // Label 1446: @62170 |
| 23989 | /* 62170 */ GIM_Try, /*On fail goto*//*Label 1447*/ GIMT_Encode4(62216), // Rule ID 1853 // |
| 23990 | /* 62175 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 23991 | /* 62178 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 23992 | /* 62181 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 23993 | /* 62184 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 23994 | /* 62187 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23995 | /* 62191 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 23996 | /* 62195 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23997 | /* 62199 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 23998 | /* 62203 */ // (select:{ *:[f64] } GPR32:{ *:[i32] }:$cond, FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVN_I_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$cond, FGR64:{ *:[f64] }:$F) |
| 23999 | /* 62203 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D64), |
| 24000 | /* 62206 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24001 | /* 62208 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 24002 | /* 62210 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 24003 | /* 62212 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 24004 | /* 62214 */ GIR_RootConstrainSelectedInstOperands, |
| 24005 | /* 62215 */ // GIR_Coverage, 1853, |
| 24006 | /* 62215 */ GIR_EraseRootFromParent_Done, |
| 24007 | /* 62216 */ // Label 1447: @62216 |
| 24008 | /* 62216 */ GIM_Try, /*On fail goto*//*Label 1448*/ GIMT_Encode4(62262), // Rule ID 1856 // |
| 24009 | /* 62221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips4_32_HasStdEnc_IsFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24010 | /* 62224 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 24011 | /* 62227 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24012 | /* 62230 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 24013 | /* 62233 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24014 | /* 62237 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24015 | /* 62241 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24016 | /* 62245 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24017 | /* 62249 */ // (select:{ *:[f64] } GPR64:{ *:[i64] }:$cond, FGR64:{ *:[f64] }:$T, FGR64:{ *:[f64] }:$F) => (MOVN_I64_D64:{ *:[f64] } FGR64:{ *:[f64] }:$T, GPR64:{ *:[i64] }:$cond, FGR64:{ *:[f64] }:$F) |
| 24018 | /* 62249 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I64_D64), |
| 24019 | /* 62252 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24020 | /* 62254 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 24021 | /* 62256 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 24022 | /* 62258 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 24023 | /* 62260 */ GIR_RootConstrainSelectedInstOperands, |
| 24024 | /* 62261 */ // GIR_Coverage, 1856, |
| 24025 | /* 62261 */ GIR_EraseRootFromParent_Done, |
| 24026 | /* 62262 */ // Label 1448: @62262 |
| 24027 | /* 62262 */ GIM_Try, /*On fail goto*//*Label 1449*/ GIMT_Encode4(62308), // Rule ID 2431 // |
| 24028 | /* 62267 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit_NotMips32r6), |
| 24029 | /* 62270 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 24030 | /* 62273 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24031 | /* 62276 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 24032 | /* 62279 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24033 | /* 62283 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 24034 | /* 62287 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24035 | /* 62291 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24036 | /* 62295 */ // (select:{ *:[f64] } GPR32:{ *:[i32] }:$cond, AFGR64:{ *:[f64] }:$T, AFGR64:{ *:[f64] }:$F) => (MOVN_I_D32_MM:{ *:[f64] } AFGR64:{ *:[f64] }:$T, GPR32:{ *:[i32] }:$cond, AFGR64:{ *:[f64] }:$F) |
| 24037 | /* 62295 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MOVN_I_D32_MM), |
| 24038 | /* 62298 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24039 | /* 62300 */ GIR_RootToRootCopy, /*OpIdx*/2, // T |
| 24040 | /* 62302 */ GIR_RootToRootCopy, /*OpIdx*/1, // cond |
| 24041 | /* 62304 */ GIR_RootToRootCopy, /*OpIdx*/3, // F |
| 24042 | /* 62306 */ GIR_RootConstrainSelectedInstOperands, |
| 24043 | /* 62307 */ // GIR_Coverage, 2431, |
| 24044 | /* 62307 */ GIR_EraseRootFromParent_Done, |
| 24045 | /* 62308 */ // Label 1449: @62308 |
| 24046 | /* 62308 */ GIM_Try, /*On fail goto*//*Label 1450*/ GIMT_Encode4(62386), // Rule ID 1909 // |
| 24047 | /* 62313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc), |
| 24048 | /* 62316 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 24049 | /* 62319 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24050 | /* 62322 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 24051 | /* 62325 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24052 | /* 62329 */ // (select:{ *:[i64] } i64:{ *:[i64] }:$cond, i64:{ *:[i64] }:$t, i64:{ *:[i64] }:$f) => (OR64:{ *:[i64] } (SELNEZ64:{ *:[i64] } i64:{ *:[i64] }:$t, i64:{ *:[i64] }:$cond), (SELEQZ64:{ *:[i64] } i64:{ *:[i64] }:$f, i64:{ *:[i64] }:$cond)) |
| 24053 | /* 62329 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 24054 | /* 62332 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SELEQZ64), |
| 24055 | /* 62336 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24056 | /* 62341 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/3, // f |
| 24057 | /* 62345 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 24058 | /* 62349 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 24059 | /* 62351 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 24060 | /* 62354 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SELNEZ64), |
| 24061 | /* 62358 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24062 | /* 62363 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // t |
| 24063 | /* 62367 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 24064 | /* 62371 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 24065 | /* 62373 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::OR64), |
| 24066 | /* 62376 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 24067 | /* 62378 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 24068 | /* 62381 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/1, |
| 24069 | /* 62384 */ GIR_RootConstrainSelectedInstOperands, |
| 24070 | /* 62385 */ // GIR_Coverage, 1909, |
| 24071 | /* 62385 */ GIR_EraseRootFromParent_Done, |
| 24072 | /* 62386 */ // Label 1450: @62386 |
| 24073 | /* 62386 */ GIM_Try, /*On fail goto*//*Label 1451*/ GIMT_Encode4(62498), // Rule ID 1920 // |
| 24074 | /* 62391 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc), |
| 24075 | /* 62394 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 24076 | /* 62397 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24077 | /* 62400 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 24078 | /* 62403 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24079 | /* 62407 */ // (select:{ *:[i64] } i32:{ *:[i32] }:$cond, i64:{ *:[i64] }:$t, i64:{ *:[i64] }:$f) => (OR64:{ *:[i64] } (SELNEZ64:{ *:[i64] } i64:{ *:[i64] }:$t, (SLL64_32:{ *:[i64] } i32:{ *:[i32] }:$cond)), (SELEQZ64:{ *:[i64] } i64:{ *:[i64] }:$f, (SLL64_32:{ *:[i64] } i32:{ *:[i32] }:$cond))) |
| 24080 | /* 62407 */ GIR_MakeTempReg, /*TempRegID*/3, /*TypeID*/GILLT_s64, |
| 24081 | /* 62410 */ GIR_BuildMI, /*InsnID*/4, /*Opcode*/GIMT_Encode2(Mips::SLL64_32), |
| 24082 | /* 62414 */ GIR_AddTempRegister, /*InsnID*/4, /*TempRegID*/3, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24083 | /* 62419 */ GIR_Copy, /*NewInsnID*/4, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 24084 | /* 62423 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/4, |
| 24085 | /* 62425 */ GIR_MakeTempReg, /*TempRegID*/2, /*TypeID*/GILLT_s64, |
| 24086 | /* 62428 */ GIR_BuildMI, /*InsnID*/3, /*Opcode*/GIMT_Encode2(Mips::SELEQZ64), |
| 24087 | /* 62432 */ GIR_AddTempRegister, /*InsnID*/3, /*TempRegID*/2, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24088 | /* 62437 */ GIR_Copy, /*NewInsnID*/3, /*OldInsnID*/0, /*OpIdx*/3, // f |
| 24089 | /* 62441 */ GIR_AddSimpleTempRegister, /*InsnID*/3, /*TempRegID*/3, |
| 24090 | /* 62444 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/3, |
| 24091 | /* 62446 */ GIR_MakeTempReg, /*TempRegID*/1, /*TypeID*/GILLT_s64, |
| 24092 | /* 62449 */ GIR_BuildMI, /*InsnID*/2, /*Opcode*/GIMT_Encode2(Mips::SLL64_32), |
| 24093 | /* 62453 */ GIR_AddTempRegister, /*InsnID*/2, /*TempRegID*/1, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24094 | /* 62458 */ GIR_Copy, /*NewInsnID*/2, /*OldInsnID*/0, /*OpIdx*/1, // cond |
| 24095 | /* 62462 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/2, |
| 24096 | /* 62464 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 24097 | /* 62467 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::SELNEZ64), |
| 24098 | /* 62471 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 24099 | /* 62476 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/2, // t |
| 24100 | /* 62480 */ GIR_AddSimpleTempRegister, /*InsnID*/1, /*TempRegID*/1, |
| 24101 | /* 62483 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 24102 | /* 62485 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::OR64), |
| 24103 | /* 62488 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 24104 | /* 62490 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 24105 | /* 62493 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/2, |
| 24106 | /* 62496 */ GIR_RootConstrainSelectedInstOperands, |
| 24107 | /* 62497 */ // GIR_Coverage, 1920, |
| 24108 | /* 62497 */ GIR_EraseRootFromParent_Done, |
| 24109 | /* 62498 */ // Label 1451: @62498 |
| 24110 | /* 62498 */ GIM_Reject, |
| 24111 | /* 62499 */ // Label 1306: @62499 |
| 24112 | /* 62499 */ GIM_Try, /*On fail goto*//*Label 1452*/ GIMT_Encode4(62572), |
| 24113 | /* 62504 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 24114 | /* 62507 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 24115 | /* 62510 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 24116 | /* 62513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24117 | /* 62517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24118 | /* 62521 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24119 | /* 62525 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24120 | /* 62529 */ GIM_Try, /*On fail goto*//*Label 1453*/ GIMT_Encode4(62550), // Rule ID 658 // |
| 24121 | /* 62534 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24122 | /* 62537 */ // (vselect:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$wt, MSA128DOpnd:{ *:[v2i64] }:$ws) => (BSEL_D_PSEUDO:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 24123 | /* 62537 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BSEL_D_PSEUDO), |
| 24124 | /* 62540 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24125 | /* 62542 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 24126 | /* 62544 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 24127 | /* 62546 */ GIR_RootToRootCopy, /*OpIdx*/2, // wt |
| 24128 | /* 62548 */ GIR_RootConstrainSelectedInstOperands, |
| 24129 | /* 62549 */ // GIR_Coverage, 658, |
| 24130 | /* 62549 */ GIR_EraseRootFromParent_Done, |
| 24131 | /* 62550 */ // Label 1453: @62550 |
| 24132 | /* 62550 */ GIM_Try, /*On fail goto*//*Label 1454*/ GIMT_Encode4(62571), // Rule ID 660 // |
| 24133 | /* 62555 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24134 | /* 62558 */ // (vselect:{ *:[v2f64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2f64] }:$wt, MSA128DOpnd:{ *:[v2f64] }:$ws) => (BSEL_FD_PSEUDO:{ *:[v2f64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 24135 | /* 62558 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BSEL_FD_PSEUDO), |
| 24136 | /* 62561 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24137 | /* 62563 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 24138 | /* 62565 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 24139 | /* 62567 */ GIR_RootToRootCopy, /*OpIdx*/2, // wt |
| 24140 | /* 62569 */ GIR_RootConstrainSelectedInstOperands, |
| 24141 | /* 62570 */ // GIR_Coverage, 660, |
| 24142 | /* 62570 */ GIR_EraseRootFromParent_Done, |
| 24143 | /* 62571 */ // Label 1454: @62571 |
| 24144 | /* 62571 */ GIM_Reject, |
| 24145 | /* 62572 */ // Label 1452: @62572 |
| 24146 | /* 62572 */ GIM_Reject, |
| 24147 | /* 62573 */ // Label 1307: @62573 |
| 24148 | /* 62573 */ GIM_Try, /*On fail goto*//*Label 1455*/ GIMT_Encode4(62646), |
| 24149 | /* 62578 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 24150 | /* 62581 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 24151 | /* 62584 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 24152 | /* 62587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24153 | /* 62591 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24154 | /* 62595 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24155 | /* 62599 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24156 | /* 62603 */ GIM_Try, /*On fail goto*//*Label 1456*/ GIMT_Encode4(62624), // Rule ID 657 // |
| 24157 | /* 62608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24158 | /* 62611 */ // (vselect:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$wt, MSA128WOpnd:{ *:[v4i32] }:$ws) => (BSEL_W_PSEUDO:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 24159 | /* 62611 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BSEL_W_PSEUDO), |
| 24160 | /* 62614 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24161 | /* 62616 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 24162 | /* 62618 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 24163 | /* 62620 */ GIR_RootToRootCopy, /*OpIdx*/2, // wt |
| 24164 | /* 62622 */ GIR_RootConstrainSelectedInstOperands, |
| 24165 | /* 62623 */ // GIR_Coverage, 657, |
| 24166 | /* 62623 */ GIR_EraseRootFromParent_Done, |
| 24167 | /* 62624 */ // Label 1456: @62624 |
| 24168 | /* 62624 */ GIM_Try, /*On fail goto*//*Label 1457*/ GIMT_Encode4(62645), // Rule ID 659 // |
| 24169 | /* 62629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24170 | /* 62632 */ // (vselect:{ *:[v4f32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4f32] }:$wt, MSA128WOpnd:{ *:[v4f32] }:$ws) => (BSEL_FW_PSEUDO:{ *:[v4f32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 24171 | /* 62632 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BSEL_FW_PSEUDO), |
| 24172 | /* 62635 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24173 | /* 62637 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 24174 | /* 62639 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 24175 | /* 62641 */ GIR_RootToRootCopy, /*OpIdx*/2, // wt |
| 24176 | /* 62643 */ GIR_RootConstrainSelectedInstOperands, |
| 24177 | /* 62644 */ // GIR_Coverage, 659, |
| 24178 | /* 62644 */ GIR_EraseRootFromParent_Done, |
| 24179 | /* 62645 */ // Label 1457: @62645 |
| 24180 | /* 62645 */ GIM_Reject, |
| 24181 | /* 62646 */ // Label 1455: @62646 |
| 24182 | /* 62646 */ GIM_Reject, |
| 24183 | /* 62647 */ // Label 1308: @62647 |
| 24184 | /* 62647 */ GIM_Try, /*On fail goto*//*Label 1458*/ GIMT_Encode4(62693), // Rule ID 656 // |
| 24185 | /* 62652 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24186 | /* 62655 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 24187 | /* 62658 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 24188 | /* 62661 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v8s16, |
| 24189 | /* 62664 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 24190 | /* 62668 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 24191 | /* 62672 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 24192 | /* 62676 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 24193 | /* 62680 */ // (vselect:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$wt, MSA128HOpnd:{ *:[v8i16] }:$ws) => (BSEL_H_PSEUDO:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 24194 | /* 62680 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BSEL_H_PSEUDO), |
| 24195 | /* 62683 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24196 | /* 62685 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 24197 | /* 62687 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 24198 | /* 62689 */ GIR_RootToRootCopy, /*OpIdx*/2, // wt |
| 24199 | /* 62691 */ GIR_RootConstrainSelectedInstOperands, |
| 24200 | /* 62692 */ // GIR_Coverage, 656, |
| 24201 | /* 62692 */ GIR_EraseRootFromParent_Done, |
| 24202 | /* 62693 */ // Label 1458: @62693 |
| 24203 | /* 62693 */ GIM_Reject, |
| 24204 | /* 62694 */ // Label 1309: @62694 |
| 24205 | /* 62694 */ GIM_Try, /*On fail goto*//*Label 1459*/ GIMT_Encode4(62788), |
| 24206 | /* 62699 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 24207 | /* 62702 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 24208 | /* 62705 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v16s8, |
| 24209 | /* 62708 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 24210 | /* 62712 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 24211 | /* 62716 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 24212 | /* 62720 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 24213 | /* 62724 */ GIM_Try, /*On fail goto*//*Label 1460*/ GIMT_Encode4(62745), // Rule ID 643 // |
| 24214 | /* 62729 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24215 | /* 62732 */ // (vselect:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wt, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wd_in) => (BMNZ_V:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 24216 | /* 62732 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BMNZ_V), |
| 24217 | /* 62735 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24218 | /* 62737 */ GIR_RootToRootCopy, /*OpIdx*/3, // wd_in |
| 24219 | /* 62739 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 24220 | /* 62741 */ GIR_RootToRootCopy, /*OpIdx*/1, // wt |
| 24221 | /* 62743 */ GIR_RootConstrainSelectedInstOperands, |
| 24222 | /* 62744 */ // GIR_Coverage, 643, |
| 24223 | /* 62744 */ GIR_EraseRootFromParent_Done, |
| 24224 | /* 62745 */ // Label 1460: @62745 |
| 24225 | /* 62745 */ GIM_Try, /*On fail goto*//*Label 1461*/ GIMT_Encode4(62766), // Rule ID 645 // |
| 24226 | /* 62750 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24227 | /* 62753 */ // (vselect:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wt, MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws) => (BMZ_V:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 24228 | /* 62753 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BMZ_V), |
| 24229 | /* 62756 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24230 | /* 62758 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd_in |
| 24231 | /* 62760 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 24232 | /* 62762 */ GIR_RootToRootCopy, /*OpIdx*/1, // wt |
| 24233 | /* 62764 */ GIR_RootConstrainSelectedInstOperands, |
| 24234 | /* 62765 */ // GIR_Coverage, 645, |
| 24235 | /* 62765 */ GIR_EraseRootFromParent_Done, |
| 24236 | /* 62766 */ // Label 1461: @62766 |
| 24237 | /* 62766 */ GIM_Try, /*On fail goto*//*Label 1462*/ GIMT_Encode4(62787), // Rule ID 655 // |
| 24238 | /* 62771 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24239 | /* 62774 */ // (vselect:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$wt, MSA128BOpnd:{ *:[v16i8] }:$ws) => (BSEL_V:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 24240 | /* 62774 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::BSEL_V), |
| 24241 | /* 62777 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24242 | /* 62779 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 24243 | /* 62781 */ GIR_RootToRootCopy, /*OpIdx*/3, // ws |
| 24244 | /* 62783 */ GIR_RootToRootCopy, /*OpIdx*/2, // wt |
| 24245 | /* 62785 */ GIR_RootConstrainSelectedInstOperands, |
| 24246 | /* 62786 */ // GIR_Coverage, 655, |
| 24247 | /* 62786 */ GIR_EraseRootFromParent_Done, |
| 24248 | /* 62787 */ // Label 1462: @62787 |
| 24249 | /* 62787 */ GIM_Reject, |
| 24250 | /* 62788 */ // Label 1459: @62788 |
| 24251 | /* 62788 */ GIM_Reject, |
| 24252 | /* 62789 */ // Label 1310: @62789 |
| 24253 | /* 62789 */ GIM_Reject, |
| 24254 | /* 62790 */ // Label 44: @62790 |
| 24255 | /* 62790 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1465*/ GIMT_Encode4(62898), |
| 24256 | /* 62801 */ /*GILLT_s32*//*Label 1463*/ GIMT_Encode4(62809), |
| 24257 | /* 62805 */ /*GILLT_s64*//*Label 1464*/ GIMT_Encode4(62864), |
| 24258 | /* 62809 */ // Label 1463: @62809 |
| 24259 | /* 62809 */ GIM_Try, /*On fail goto*//*Label 1466*/ GIMT_Encode4(62863), |
| 24260 | /* 62814 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 24261 | /* 62817 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 24262 | /* 62820 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 24263 | /* 62824 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 24264 | /* 62828 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 24265 | /* 62832 */ GIM_Try, /*On fail goto*//*Label 1467*/ GIMT_Encode4(62847), // Rule ID 406 // |
| 24266 | /* 62837 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 24267 | /* 62840 */ // (mulhu:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUHU:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 24268 | /* 62840 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUHU), |
| 24269 | /* 62845 */ GIR_RootConstrainSelectedInstOperands, |
| 24270 | /* 62846 */ // GIR_Coverage, 406, |
| 24271 | /* 62846 */ GIR_Done, |
| 24272 | /* 62847 */ // Label 1467: @62847 |
| 24273 | /* 62847 */ GIM_Try, /*On fail goto*//*Label 1468*/ GIMT_Encode4(62862), // Rule ID 1256 // |
| 24274 | /* 62852 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 24275 | /* 62855 */ // (mulhu:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUHU_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 24276 | /* 62855 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUHU_MMR6), |
| 24277 | /* 62860 */ GIR_RootConstrainSelectedInstOperands, |
| 24278 | /* 62861 */ // GIR_Coverage, 1256, |
| 24279 | /* 62861 */ GIR_Done, |
| 24280 | /* 62862 */ // Label 1468: @62862 |
| 24281 | /* 62862 */ GIM_Reject, |
| 24282 | /* 62863 */ // Label 1466: @62863 |
| 24283 | /* 62863 */ GIM_Reject, |
| 24284 | /* 62864 */ // Label 1464: @62864 |
| 24285 | /* 62864 */ GIM_Try, /*On fail goto*//*Label 1469*/ GIMT_Encode4(62897), // Rule ID 421 // |
| 24286 | /* 62869 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 24287 | /* 62872 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 24288 | /* 62875 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24289 | /* 62878 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24290 | /* 62882 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24291 | /* 62886 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24292 | /* 62890 */ // (mulhu:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DMUHU:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 24293 | /* 62890 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMUHU), |
| 24294 | /* 62895 */ GIR_RootConstrainSelectedInstOperands, |
| 24295 | /* 62896 */ // GIR_Coverage, 421, |
| 24296 | /* 62896 */ GIR_Done, |
| 24297 | /* 62897 */ // Label 1469: @62897 |
| 24298 | /* 62897 */ GIM_Reject, |
| 24299 | /* 62898 */ // Label 1465: @62898 |
| 24300 | /* 62898 */ GIM_Reject, |
| 24301 | /* 62899 */ // Label 45: @62899 |
| 24302 | /* 62899 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1472*/ GIMT_Encode4(63007), |
| 24303 | /* 62910 */ /*GILLT_s32*//*Label 1470*/ GIMT_Encode4(62918), |
| 24304 | /* 62914 */ /*GILLT_s64*//*Label 1471*/ GIMT_Encode4(62973), |
| 24305 | /* 62918 */ // Label 1470: @62918 |
| 24306 | /* 62918 */ GIM_Try, /*On fail goto*//*Label 1473*/ GIMT_Encode4(62972), |
| 24307 | /* 62923 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 24308 | /* 62926 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 24309 | /* 62929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 24310 | /* 62933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 24311 | /* 62937 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 24312 | /* 62941 */ GIM_Try, /*On fail goto*//*Label 1474*/ GIMT_Encode4(62956), // Rule ID 405 // |
| 24313 | /* 62946 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 24314 | /* 62949 */ // (mulhs:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUH:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 24315 | /* 62949 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUH), |
| 24316 | /* 62954 */ GIR_RootConstrainSelectedInstOperands, |
| 24317 | /* 62955 */ // GIR_Coverage, 405, |
| 24318 | /* 62955 */ GIR_Done, |
| 24319 | /* 62956 */ // Label 1474: @62956 |
| 24320 | /* 62956 */ GIM_Try, /*On fail goto*//*Label 1475*/ GIMT_Encode4(62971), // Rule ID 1255 // |
| 24321 | /* 62961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 24322 | /* 62964 */ // (mulhs:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) => (MUH_MMR6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, GPR32Opnd:{ *:[i32] }:$rt) |
| 24323 | /* 62964 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MUH_MMR6), |
| 24324 | /* 62969 */ GIR_RootConstrainSelectedInstOperands, |
| 24325 | /* 62970 */ // GIR_Coverage, 1255, |
| 24326 | /* 62970 */ GIR_Done, |
| 24327 | /* 62971 */ // Label 1475: @62971 |
| 24328 | /* 62971 */ GIM_Reject, |
| 24329 | /* 62972 */ // Label 1473: @62972 |
| 24330 | /* 62972 */ GIM_Reject, |
| 24331 | /* 62973 */ // Label 1471: @62973 |
| 24332 | /* 62973 */ GIM_Try, /*On fail goto*//*Label 1476*/ GIMT_Encode4(63006), // Rule ID 420 // |
| 24333 | /* 62978 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 24334 | /* 62981 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 24335 | /* 62984 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24336 | /* 62987 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24337 | /* 62991 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24338 | /* 62995 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 24339 | /* 62999 */ // (mulhs:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) => (DMUH:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, GPR64Opnd:{ *:[i64] }:$rt) |
| 24340 | /* 62999 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DMUH), |
| 24341 | /* 63004 */ GIR_RootConstrainSelectedInstOperands, |
| 24342 | /* 63005 */ // GIR_Coverage, 420, |
| 24343 | /* 63005 */ GIR_Done, |
| 24344 | /* 63006 */ // Label 1476: @63006 |
| 24345 | /* 63006 */ GIM_Reject, |
| 24346 | /* 63007 */ // Label 1472: @63007 |
| 24347 | /* 63007 */ GIM_Reject, |
| 24348 | /* 63008 */ // Label 46: @63008 |
| 24349 | /* 63008 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(7), /*)*//*default:*//*Label 1481*/ GIMT_Encode4(64302), |
| 24350 | /* 63019 */ /*GILLT_s32*//*Label 1477*/ GIMT_Encode4(63043), |
| 24351 | /* 63023 */ /*GILLT_s64*//*Label 1478*/ GIMT_Encode4(63369), GIMT_Encode4(0), |
| 24352 | /* 63031 */ /*GILLT_v2s64*//*Label 1479*/ GIMT_Encode4(63994), GIMT_Encode4(0), |
| 24353 | /* 63039 */ /*GILLT_v4s32*//*Label 1480*/ GIMT_Encode4(64148), |
| 24354 | /* 63043 */ // Label 1477: @63043 |
| 24355 | /* 63043 */ GIM_Try, /*On fail goto*//*Label 1482*/ GIMT_Encode4(63368), |
| 24356 | /* 63048 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 24357 | /* 63051 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 24358 | /* 63054 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24359 | /* 63058 */ GIM_Try, /*On fail goto*//*Label 1483*/ GIMT_Encode4(63115), // Rule ID 181 // |
| 24360 | /* 63063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24361 | /* 63066 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24362 | /* 63070 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24363 | /* 63074 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24364 | /* 63078 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24365 | /* 63082 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24366 | /* 63087 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24367 | /* 63092 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24368 | /* 63096 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24369 | /* 63098 */ // (fadd:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24370 | /* 63098 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 24371 | /* 63101 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24372 | /* 63103 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24373 | /* 63105 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24374 | /* 63109 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24375 | /* 63113 */ GIR_RootConstrainSelectedInstOperands, |
| 24376 | /* 63114 */ // GIR_Coverage, 181, |
| 24377 | /* 63114 */ GIR_EraseRootFromParent_Done, |
| 24378 | /* 63115 */ // Label 1483: @63115 |
| 24379 | /* 63115 */ GIM_Try, /*On fail goto*//*Label 1484*/ GIMT_Encode4(63172), // Rule ID 180 // |
| 24380 | /* 63120 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24381 | /* 63123 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24382 | /* 63127 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24383 | /* 63131 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24384 | /* 63135 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24385 | /* 63139 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24386 | /* 63144 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24387 | /* 63149 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24388 | /* 63153 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24389 | /* 63155 */ // (fadd:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24390 | /* 63155 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 24391 | /* 63158 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24392 | /* 63160 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24393 | /* 63162 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24394 | /* 63166 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24395 | /* 63170 */ GIR_RootConstrainSelectedInstOperands, |
| 24396 | /* 63171 */ // GIR_Coverage, 180, |
| 24397 | /* 63171 */ GIR_EraseRootFromParent_Done, |
| 24398 | /* 63172 */ // Label 1484: @63172 |
| 24399 | /* 63172 */ GIM_Try, /*On fail goto*//*Label 1485*/ GIMT_Encode4(63229), // Rule ID 2490 // |
| 24400 | /* 63177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24401 | /* 63180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24402 | /* 63184 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24403 | /* 63188 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24404 | /* 63192 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24405 | /* 63196 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24406 | /* 63200 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24407 | /* 63205 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24408 | /* 63210 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24409 | /* 63212 */ // (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft)) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24410 | /* 63212 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 24411 | /* 63215 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24412 | /* 63217 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 24413 | /* 63219 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24414 | /* 63223 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24415 | /* 63227 */ GIR_RootConstrainSelectedInstOperands, |
| 24416 | /* 63228 */ // GIR_Coverage, 2490, |
| 24417 | /* 63228 */ GIR_EraseRootFromParent_Done, |
| 24418 | /* 63229 */ // Label 1485: @63229 |
| 24419 | /* 63229 */ GIM_Try, /*On fail goto*//*Label 1486*/ GIMT_Encode4(63286), // Rule ID 2489 // |
| 24420 | /* 63234 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24421 | /* 63237 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24422 | /* 63241 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24423 | /* 63245 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24424 | /* 63249 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24425 | /* 63253 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24426 | /* 63257 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24427 | /* 63262 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24428 | /* 63267 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24429 | /* 63269 */ // (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft)) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24430 | /* 63269 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 24431 | /* 63272 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24432 | /* 63274 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 24433 | /* 63276 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24434 | /* 63280 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24435 | /* 63284 */ GIR_RootConstrainSelectedInstOperands, |
| 24436 | /* 63285 */ // GIR_Coverage, 2489, |
| 24437 | /* 63285 */ GIR_EraseRootFromParent_Done, |
| 24438 | /* 63286 */ // Label 1486: @63286 |
| 24439 | /* 63286 */ GIM_Try, /*On fail goto*//*Label 1487*/ GIMT_Encode4(63313), // Rule ID 155 // |
| 24440 | /* 63291 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 24441 | /* 63294 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24442 | /* 63298 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24443 | /* 63302 */ // (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24444 | /* 63302 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_S), |
| 24445 | /* 63307 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24446 | /* 63311 */ GIR_RootConstrainSelectedInstOperands, |
| 24447 | /* 63312 */ // GIR_Coverage, 155, |
| 24448 | /* 63312 */ GIR_Done, |
| 24449 | /* 63313 */ // Label 1487: @63313 |
| 24450 | /* 63313 */ GIM_Try, /*On fail goto*//*Label 1488*/ GIMT_Encode4(63340), // Rule ID 1205 // |
| 24451 | /* 63318 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 24452 | /* 63321 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24453 | /* 63325 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24454 | /* 63329 */ // (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24455 | /* 63329 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_S_MM), |
| 24456 | /* 63334 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24457 | /* 63338 */ GIR_RootConstrainSelectedInstOperands, |
| 24458 | /* 63339 */ // GIR_Coverage, 1205, |
| 24459 | /* 63339 */ GIR_Done, |
| 24460 | /* 63340 */ // Label 1488: @63340 |
| 24461 | /* 63340 */ GIM_Try, /*On fail goto*//*Label 1489*/ GIMT_Encode4(63367), // Rule ID 1263 // |
| 24462 | /* 63345 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 24463 | /* 63348 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24464 | /* 63352 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24465 | /* 63356 */ // (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FADD_S_MMR6:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$ft, FGR32Opnd:{ *:[f32] }:$fs) |
| 24466 | /* 63356 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FADD_S_MMR6), |
| 24467 | /* 63359 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24468 | /* 63361 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 24469 | /* 63363 */ GIR_RootToRootCopy, /*OpIdx*/1, // fs |
| 24470 | /* 63365 */ GIR_RootConstrainSelectedInstOperands, |
| 24471 | /* 63366 */ // GIR_Coverage, 1263, |
| 24472 | /* 63366 */ GIR_EraseRootFromParent_Done, |
| 24473 | /* 63367 */ // Label 1489: @63367 |
| 24474 | /* 63367 */ GIM_Reject, |
| 24475 | /* 63368 */ // Label 1482: @63368 |
| 24476 | /* 63368 */ GIM_Reject, |
| 24477 | /* 63369 */ // Label 1478: @63369 |
| 24478 | /* 63369 */ GIM_Try, /*On fail goto*//*Label 1490*/ GIMT_Encode4(63993), |
| 24479 | /* 63374 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 24480 | /* 63377 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24481 | /* 63380 */ GIM_Try, /*On fail goto*//*Label 1491*/ GIMT_Encode4(63441), // Rule ID 189 // |
| 24482 | /* 63385 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24483 | /* 63388 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24484 | /* 63392 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24485 | /* 63396 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24486 | /* 63400 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24487 | /* 63404 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24488 | /* 63408 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24489 | /* 63413 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24490 | /* 63418 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24491 | /* 63422 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24492 | /* 63424 */ // (fadd:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24493 | /* 63424 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 24494 | /* 63427 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24495 | /* 63429 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24496 | /* 63431 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24497 | /* 63435 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24498 | /* 63439 */ GIR_RootConstrainSelectedInstOperands, |
| 24499 | /* 63440 */ // GIR_Coverage, 189, |
| 24500 | /* 63440 */ GIR_EraseRootFromParent_Done, |
| 24501 | /* 63441 */ // Label 1491: @63441 |
| 24502 | /* 63441 */ GIM_Try, /*On fail goto*//*Label 1492*/ GIMT_Encode4(63502), // Rule ID 197 // |
| 24503 | /* 63446 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24504 | /* 63449 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24505 | /* 63453 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24506 | /* 63457 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24507 | /* 63461 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24508 | /* 63465 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24509 | /* 63469 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24510 | /* 63474 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24511 | /* 63479 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24512 | /* 63483 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24513 | /* 63485 */ // (fadd:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24514 | /* 63485 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 24515 | /* 63488 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24516 | /* 63490 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24517 | /* 63492 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24518 | /* 63496 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24519 | /* 63500 */ GIR_RootConstrainSelectedInstOperands, |
| 24520 | /* 63501 */ // GIR_Coverage, 197, |
| 24521 | /* 63501 */ GIR_EraseRootFromParent_Done, |
| 24522 | /* 63502 */ // Label 1492: @63502 |
| 24523 | /* 63502 */ GIM_Try, /*On fail goto*//*Label 1493*/ GIMT_Encode4(63563), // Rule ID 188 // |
| 24524 | /* 63507 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24525 | /* 63510 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24526 | /* 63514 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24527 | /* 63518 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24528 | /* 63522 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24529 | /* 63526 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24530 | /* 63530 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24531 | /* 63535 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24532 | /* 63540 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24533 | /* 63544 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24534 | /* 63546 */ // (fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24535 | /* 63546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 24536 | /* 63549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24537 | /* 63551 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24538 | /* 63553 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24539 | /* 63557 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24540 | /* 63561 */ GIR_RootConstrainSelectedInstOperands, |
| 24541 | /* 63562 */ // GIR_Coverage, 188, |
| 24542 | /* 63562 */ GIR_EraseRootFromParent_Done, |
| 24543 | /* 63563 */ // Label 1493: @63563 |
| 24544 | /* 63563 */ GIM_Try, /*On fail goto*//*Label 1494*/ GIMT_Encode4(63624), // Rule ID 196 // |
| 24545 | /* 63568 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24546 | /* 63571 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24547 | /* 63575 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24548 | /* 63579 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24549 | /* 63583 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24550 | /* 63587 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24551 | /* 63591 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24552 | /* 63596 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24553 | /* 63601 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24554 | /* 63605 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24555 | /* 63607 */ // (fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24556 | /* 63607 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 24557 | /* 63610 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24558 | /* 63612 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24559 | /* 63614 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24560 | /* 63618 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24561 | /* 63622 */ GIR_RootConstrainSelectedInstOperands, |
| 24562 | /* 63623 */ // GIR_Coverage, 196, |
| 24563 | /* 63623 */ GIR_EraseRootFromParent_Done, |
| 24564 | /* 63624 */ // Label 1494: @63624 |
| 24565 | /* 63624 */ GIM_Try, /*On fail goto*//*Label 1495*/ GIMT_Encode4(63685), // Rule ID 2494 // |
| 24566 | /* 63629 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24567 | /* 63632 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24568 | /* 63636 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24569 | /* 63640 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24570 | /* 63644 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24571 | /* 63648 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24572 | /* 63652 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24573 | /* 63656 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24574 | /* 63661 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24575 | /* 63666 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24576 | /* 63668 */ // (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24577 | /* 63668 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 24578 | /* 63671 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24579 | /* 63673 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 24580 | /* 63675 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24581 | /* 63679 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24582 | /* 63683 */ GIR_RootConstrainSelectedInstOperands, |
| 24583 | /* 63684 */ // GIR_Coverage, 2494, |
| 24584 | /* 63684 */ GIR_EraseRootFromParent_Done, |
| 24585 | /* 63685 */ // Label 1495: @63685 |
| 24586 | /* 63685 */ GIM_Try, /*On fail goto*//*Label 1496*/ GIMT_Encode4(63746), // Rule ID 2498 // |
| 24587 | /* 63690 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24588 | /* 63693 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24589 | /* 63697 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24590 | /* 63701 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24591 | /* 63705 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24592 | /* 63709 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24593 | /* 63713 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24594 | /* 63717 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24595 | /* 63722 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24596 | /* 63727 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24597 | /* 63729 */ // (fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24598 | /* 63729 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 24599 | /* 63732 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24600 | /* 63734 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 24601 | /* 63736 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24602 | /* 63740 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24603 | /* 63744 */ GIR_RootConstrainSelectedInstOperands, |
| 24604 | /* 63745 */ // GIR_Coverage, 2498, |
| 24605 | /* 63745 */ GIR_EraseRootFromParent_Done, |
| 24606 | /* 63746 */ // Label 1496: @63746 |
| 24607 | /* 63746 */ GIM_Try, /*On fail goto*//*Label 1497*/ GIMT_Encode4(63807), // Rule ID 2493 // |
| 24608 | /* 63751 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24609 | /* 63754 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24610 | /* 63758 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24611 | /* 63762 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24612 | /* 63766 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24613 | /* 63770 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24614 | /* 63774 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24615 | /* 63778 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24616 | /* 63783 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24617 | /* 63788 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24618 | /* 63790 */ // (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24619 | /* 63790 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 24620 | /* 63793 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24621 | /* 63795 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 24622 | /* 63797 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24623 | /* 63801 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24624 | /* 63805 */ GIR_RootConstrainSelectedInstOperands, |
| 24625 | /* 63806 */ // GIR_Coverage, 2493, |
| 24626 | /* 63806 */ GIR_EraseRootFromParent_Done, |
| 24627 | /* 63807 */ // Label 1497: @63807 |
| 24628 | /* 63807 */ GIM_Try, /*On fail goto*//*Label 1498*/ GIMT_Encode4(63868), // Rule ID 2497 // |
| 24629 | /* 63812 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24630 | /* 63815 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24631 | /* 63819 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24632 | /* 63823 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24633 | /* 63827 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24634 | /* 63831 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24635 | /* 63835 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24636 | /* 63839 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24637 | /* 63844 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24638 | /* 63849 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24639 | /* 63851 */ // (fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24640 | /* 63851 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 24641 | /* 63854 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24642 | /* 63856 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 24643 | /* 63858 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24644 | /* 63862 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24645 | /* 63866 */ GIR_RootConstrainSelectedInstOperands, |
| 24646 | /* 63867 */ // GIR_Coverage, 2497, |
| 24647 | /* 63867 */ GIR_EraseRootFromParent_Done, |
| 24648 | /* 63868 */ // Label 1498: @63868 |
| 24649 | /* 63868 */ GIM_Try, /*On fail goto*//*Label 1499*/ GIMT_Encode4(63899), // Rule ID 157 // |
| 24650 | /* 63873 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 24651 | /* 63876 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24652 | /* 63880 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24653 | /* 63884 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24654 | /* 63888 */ // (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24655 | /* 63888 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_D32), |
| 24656 | /* 63893 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24657 | /* 63897 */ GIR_RootConstrainSelectedInstOperands, |
| 24658 | /* 63898 */ // GIR_Coverage, 157, |
| 24659 | /* 63898 */ GIR_Done, |
| 24660 | /* 63899 */ // Label 1499: @63899 |
| 24661 | /* 63899 */ GIM_Try, /*On fail goto*//*Label 1500*/ GIMT_Encode4(63930), // Rule ID 159 // |
| 24662 | /* 63904 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 24663 | /* 63907 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24664 | /* 63911 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24665 | /* 63915 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24666 | /* 63919 */ // (fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24667 | /* 63919 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_D64), |
| 24668 | /* 63924 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24669 | /* 63928 */ GIR_RootConstrainSelectedInstOperands, |
| 24670 | /* 63929 */ // GIR_Coverage, 159, |
| 24671 | /* 63929 */ GIR_Done, |
| 24672 | /* 63930 */ // Label 1500: @63930 |
| 24673 | /* 63930 */ GIM_Try, /*On fail goto*//*Label 1501*/ GIMT_Encode4(63961), // Rule ID 1209 // |
| 24674 | /* 63935 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit), |
| 24675 | /* 63938 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24676 | /* 63942 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24677 | /* 63946 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24678 | /* 63950 */ // (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24679 | /* 63950 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_D32_MM), |
| 24680 | /* 63955 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24681 | /* 63959 */ GIR_RootConstrainSelectedInstOperands, |
| 24682 | /* 63960 */ // GIR_Coverage, 1209, |
| 24683 | /* 63960 */ GIR_Done, |
| 24684 | /* 63961 */ // Label 1501: @63961 |
| 24685 | /* 63961 */ GIM_Try, /*On fail goto*//*Label 1502*/ GIMT_Encode4(63992), // Rule ID 1210 // |
| 24686 | /* 63966 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat), |
| 24687 | /* 63969 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24688 | /* 63973 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24689 | /* 63977 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24690 | /* 63981 */ // (fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FADD_D64_MM:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24691 | /* 63981 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_D64_MM), |
| 24692 | /* 63986 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24693 | /* 63990 */ GIR_RootConstrainSelectedInstOperands, |
| 24694 | /* 63991 */ // GIR_Coverage, 1210, |
| 24695 | /* 63991 */ GIR_Done, |
| 24696 | /* 63992 */ // Label 1502: @63992 |
| 24697 | /* 63992 */ GIM_Reject, |
| 24698 | /* 63993 */ // Label 1490: @63993 |
| 24699 | /* 63993 */ GIM_Reject, |
| 24700 | /* 63994 */ // Label 1479: @63994 |
| 24701 | /* 63994 */ GIM_Try, /*On fail goto*//*Label 1503*/ GIMT_Encode4(64147), |
| 24702 | /* 63999 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 24703 | /* 64002 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 24704 | /* 64005 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24705 | /* 64009 */ GIM_Try, /*On fail goto*//*Label 1504*/ GIMT_Encode4(64066), // Rule ID 2633 // |
| 24706 | /* 64014 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_AllowFPOpFusion_HasMSA_HasStdEnc), |
| 24707 | /* 64017 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24708 | /* 64021 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24709 | /* 64025 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 24710 | /* 64029 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s64, |
| 24711 | /* 64033 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24712 | /* 64038 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24713 | /* 64043 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24714 | /* 64047 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24715 | /* 64049 */ // (fadd:{ *:[v2f64] } (fmul:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt), MSA128DOpnd:{ *:[v2f64] }:$wd) => (FMADD_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 24716 | /* 64049 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMADD_D), |
| 24717 | /* 64052 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24718 | /* 64054 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd |
| 24719 | /* 64056 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 24720 | /* 64060 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 24721 | /* 64064 */ GIR_RootConstrainSelectedInstOperands, |
| 24722 | /* 64065 */ // GIR_Coverage, 2633, |
| 24723 | /* 64065 */ GIR_EraseRootFromParent_Done, |
| 24724 | /* 64066 */ // Label 1504: @64066 |
| 24725 | /* 64066 */ GIM_Try, /*On fail goto*//*Label 1505*/ GIMT_Encode4(64123), // Rule ID 2120 // |
| 24726 | /* 64071 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_AllowFPOpFusion_HasMSA_HasStdEnc), |
| 24727 | /* 64074 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24728 | /* 64078 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24729 | /* 64082 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24730 | /* 64086 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 24731 | /* 64090 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s64, |
| 24732 | /* 64094 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24733 | /* 64099 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24734 | /* 64104 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24735 | /* 64106 */ // (fadd:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd, (fmul:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt)) => (FMADD_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 24736 | /* 64106 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMADD_D), |
| 24737 | /* 64109 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24738 | /* 64111 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd |
| 24739 | /* 64113 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 24740 | /* 64117 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 24741 | /* 64121 */ GIR_RootConstrainSelectedInstOperands, |
| 24742 | /* 64122 */ // GIR_Coverage, 2120, |
| 24743 | /* 64122 */ GIR_EraseRootFromParent_Done, |
| 24744 | /* 64123 */ // Label 1505: @64123 |
| 24745 | /* 64123 */ GIM_Try, /*On fail goto*//*Label 1506*/ GIMT_Encode4(64146), // Rule ID 746 // |
| 24746 | /* 64128 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24747 | /* 64131 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24748 | /* 64135 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 24749 | /* 64139 */ // (fadd:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FADD_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 24750 | /* 64139 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_D), |
| 24751 | /* 64144 */ GIR_RootConstrainSelectedInstOperands, |
| 24752 | /* 64145 */ // GIR_Coverage, 746, |
| 24753 | /* 64145 */ GIR_Done, |
| 24754 | /* 64146 */ // Label 1506: @64146 |
| 24755 | /* 64146 */ GIM_Reject, |
| 24756 | /* 64147 */ // Label 1503: @64147 |
| 24757 | /* 64147 */ GIM_Reject, |
| 24758 | /* 64148 */ // Label 1480: @64148 |
| 24759 | /* 64148 */ GIM_Try, /*On fail goto*//*Label 1507*/ GIMT_Encode4(64301), |
| 24760 | /* 64153 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 24761 | /* 64156 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 24762 | /* 64159 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24763 | /* 64163 */ GIM_Try, /*On fail goto*//*Label 1508*/ GIMT_Encode4(64220), // Rule ID 2632 // |
| 24764 | /* 64168 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_AllowFPOpFusion_HasMSA_HasStdEnc), |
| 24765 | /* 64171 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24766 | /* 64175 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24767 | /* 64179 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 24768 | /* 64183 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 24769 | /* 64187 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24770 | /* 64192 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24771 | /* 64197 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24772 | /* 64201 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24773 | /* 64203 */ // (fadd:{ *:[v4f32] } (fmul:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt), MSA128WOpnd:{ *:[v4f32] }:$wd) => (FMADD_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 24774 | /* 64203 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMADD_W), |
| 24775 | /* 64206 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24776 | /* 64208 */ GIR_RootToRootCopy, /*OpIdx*/2, // wd |
| 24777 | /* 64210 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 24778 | /* 64214 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 24779 | /* 64218 */ GIR_RootConstrainSelectedInstOperands, |
| 24780 | /* 64219 */ // GIR_Coverage, 2632, |
| 24781 | /* 64219 */ GIR_EraseRootFromParent_Done, |
| 24782 | /* 64220 */ // Label 1508: @64220 |
| 24783 | /* 64220 */ GIM_Try, /*On fail goto*//*Label 1509*/ GIMT_Encode4(64277), // Rule ID 2119 // |
| 24784 | /* 64225 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_AllowFPOpFusion_HasMSA_HasStdEnc), |
| 24785 | /* 64228 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24786 | /* 64232 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 24787 | /* 64236 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24788 | /* 64240 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 24789 | /* 64244 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 24790 | /* 64248 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24791 | /* 64253 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24792 | /* 64258 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24793 | /* 64260 */ // (fadd:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd, (fmul:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt)) => (FMADD_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 24794 | /* 64260 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMADD_W), |
| 24795 | /* 64263 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 24796 | /* 64265 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd |
| 24797 | /* 64267 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 24798 | /* 64271 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 24799 | /* 64275 */ GIR_RootConstrainSelectedInstOperands, |
| 24800 | /* 64276 */ // GIR_Coverage, 2119, |
| 24801 | /* 64276 */ GIR_EraseRootFromParent_Done, |
| 24802 | /* 64277 */ // Label 1509: @64277 |
| 24803 | /* 64277 */ GIM_Try, /*On fail goto*//*Label 1510*/ GIMT_Encode4(64300), // Rule ID 745 // |
| 24804 | /* 64282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 24805 | /* 64285 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24806 | /* 64289 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 24807 | /* 64293 */ // (fadd:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FADD_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 24808 | /* 64293 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_W), |
| 24809 | /* 64298 */ GIR_RootConstrainSelectedInstOperands, |
| 24810 | /* 64299 */ // GIR_Coverage, 745, |
| 24811 | /* 64299 */ GIR_Done, |
| 24812 | /* 64300 */ // Label 1510: @64300 |
| 24813 | /* 64300 */ GIM_Reject, |
| 24814 | /* 64301 */ // Label 1507: @64301 |
| 24815 | /* 64301 */ GIM_Reject, |
| 24816 | /* 64302 */ // Label 1481: @64302 |
| 24817 | /* 64302 */ GIM_Reject, |
| 24818 | /* 64303 */ // Label 47: @64303 |
| 24819 | /* 64303 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(7), /*)*//*default:*//*Label 1515*/ GIMT_Encode4(65117), |
| 24820 | /* 64314 */ /*GILLT_s32*//*Label 1511*/ GIMT_Encode4(64338), |
| 24821 | /* 64318 */ /*GILLT_s64*//*Label 1512*/ GIMT_Encode4(64550), GIMT_Encode4(0), |
| 24822 | /* 64326 */ /*GILLT_v2s64*//*Label 1513*/ GIMT_Encode4(64931), GIMT_Encode4(0), |
| 24823 | /* 64334 */ /*GILLT_v4s32*//*Label 1514*/ GIMT_Encode4(65024), |
| 24824 | /* 64338 */ // Label 1511: @64338 |
| 24825 | /* 64338 */ GIM_Try, /*On fail goto*//*Label 1516*/ GIMT_Encode4(64549), |
| 24826 | /* 64343 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 24827 | /* 64346 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 24828 | /* 64349 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24829 | /* 64353 */ GIM_Try, /*On fail goto*//*Label 1517*/ GIMT_Encode4(64410), // Rule ID 185 // |
| 24830 | /* 64358 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24831 | /* 64361 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24832 | /* 64365 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24833 | /* 64369 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24834 | /* 64373 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24835 | /* 64377 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24836 | /* 64382 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24837 | /* 64387 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24838 | /* 64391 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24839 | /* 64393 */ // (fsub:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24840 | /* 64393 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_S), |
| 24841 | /* 64396 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24842 | /* 64398 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24843 | /* 64400 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24844 | /* 64404 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24845 | /* 64408 */ GIR_RootConstrainSelectedInstOperands, |
| 24846 | /* 64409 */ // GIR_Coverage, 185, |
| 24847 | /* 64409 */ GIR_EraseRootFromParent_Done, |
| 24848 | /* 64410 */ // Label 1517: @64410 |
| 24849 | /* 64410 */ GIM_Try, /*On fail goto*//*Label 1518*/ GIMT_Encode4(64467), // Rule ID 184 // |
| 24850 | /* 64415 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24851 | /* 64418 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24852 | /* 64422 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24853 | /* 64426 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 24854 | /* 64430 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 24855 | /* 64434 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24856 | /* 64439 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24857 | /* 64444 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24858 | /* 64448 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24859 | /* 64450 */ // (fsub:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24860 | /* 64450 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_S), |
| 24861 | /* 64453 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24862 | /* 64455 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24863 | /* 64457 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24864 | /* 64461 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24865 | /* 64465 */ GIR_RootConstrainSelectedInstOperands, |
| 24866 | /* 64466 */ // GIR_Coverage, 184, |
| 24867 | /* 64466 */ GIR_EraseRootFromParent_Done, |
| 24868 | /* 64467 */ // Label 1518: @64467 |
| 24869 | /* 64467 */ GIM_Try, /*On fail goto*//*Label 1519*/ GIMT_Encode4(64494), // Rule ID 173 // |
| 24870 | /* 64472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 24871 | /* 64475 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24872 | /* 64479 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24873 | /* 64483 */ // (fsub:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24874 | /* 64483 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_S), |
| 24875 | /* 64488 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24876 | /* 64492 */ GIR_RootConstrainSelectedInstOperands, |
| 24877 | /* 64493 */ // GIR_Coverage, 173, |
| 24878 | /* 64493 */ GIR_Done, |
| 24879 | /* 64494 */ // Label 1519: @64494 |
| 24880 | /* 64494 */ GIM_Try, /*On fail goto*//*Label 1520*/ GIMT_Encode4(64521), // Rule ID 1208 // |
| 24881 | /* 64499 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 24882 | /* 64502 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24883 | /* 64506 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24884 | /* 64510 */ // (fsub:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FSUB_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 24885 | /* 64510 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_S_MM), |
| 24886 | /* 64515 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 24887 | /* 64519 */ GIR_RootConstrainSelectedInstOperands, |
| 24888 | /* 64520 */ // GIR_Coverage, 1208, |
| 24889 | /* 64520 */ GIR_Done, |
| 24890 | /* 64521 */ // Label 1520: @64521 |
| 24891 | /* 64521 */ GIM_Try, /*On fail goto*//*Label 1521*/ GIMT_Encode4(64548), // Rule ID 1264 // |
| 24892 | /* 64526 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 24893 | /* 64529 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24894 | /* 64533 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 24895 | /* 64537 */ // (fsub:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FSUB_S_MMR6:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$ft, FGR32Opnd:{ *:[f32] }:$fs) |
| 24896 | /* 64537 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FSUB_S_MMR6), |
| 24897 | /* 64540 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24898 | /* 64542 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 24899 | /* 64544 */ GIR_RootToRootCopy, /*OpIdx*/1, // fs |
| 24900 | /* 64546 */ GIR_RootConstrainSelectedInstOperands, |
| 24901 | /* 64547 */ // GIR_Coverage, 1264, |
| 24902 | /* 64547 */ GIR_EraseRootFromParent_Done, |
| 24903 | /* 64548 */ // Label 1521: @64548 |
| 24904 | /* 64548 */ GIM_Reject, |
| 24905 | /* 64549 */ // Label 1516: @64549 |
| 24906 | /* 64549 */ GIM_Reject, |
| 24907 | /* 64550 */ // Label 1512: @64550 |
| 24908 | /* 64550 */ GIM_Try, /*On fail goto*//*Label 1522*/ GIMT_Encode4(64930), |
| 24909 | /* 64555 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 24910 | /* 64558 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 24911 | /* 64561 */ GIM_Try, /*On fail goto*//*Label 1523*/ GIMT_Encode4(64622), // Rule ID 193 // |
| 24912 | /* 64566 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24913 | /* 64569 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24914 | /* 64573 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24915 | /* 64577 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24916 | /* 64581 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24917 | /* 64585 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24918 | /* 64589 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24919 | /* 64594 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24920 | /* 64599 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24921 | /* 64603 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24922 | /* 64605 */ // (fsub:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24923 | /* 64605 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D32), |
| 24924 | /* 64608 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24925 | /* 64610 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24926 | /* 64612 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24927 | /* 64616 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24928 | /* 64620 */ GIR_RootConstrainSelectedInstOperands, |
| 24929 | /* 64621 */ // GIR_Coverage, 193, |
| 24930 | /* 64621 */ GIR_EraseRootFromParent_Done, |
| 24931 | /* 64622 */ // Label 1523: @64622 |
| 24932 | /* 64622 */ GIM_Try, /*On fail goto*//*Label 1524*/ GIMT_Encode4(64683), // Rule ID 201 // |
| 24933 | /* 64627 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24934 | /* 64630 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24935 | /* 64634 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24936 | /* 64638 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 24937 | /* 64642 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24938 | /* 64646 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24939 | /* 64650 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24940 | /* 64655 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24941 | /* 64660 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24942 | /* 64664 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24943 | /* 64666 */ // (fsub:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24944 | /* 64666 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D64), |
| 24945 | /* 64669 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24946 | /* 64671 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24947 | /* 64673 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24948 | /* 64677 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24949 | /* 64681 */ GIR_RootConstrainSelectedInstOperands, |
| 24950 | /* 64682 */ // GIR_Coverage, 201, |
| 24951 | /* 64682 */ GIR_EraseRootFromParent_Done, |
| 24952 | /* 64683 */ // Label 1524: @64683 |
| 24953 | /* 64683 */ GIM_Try, /*On fail goto*//*Label 1525*/ GIMT_Encode4(64744), // Rule ID 192 // |
| 24954 | /* 64688 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24955 | /* 64691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24956 | /* 64695 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24957 | /* 64699 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24958 | /* 64703 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24959 | /* 64707 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24960 | /* 64711 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24961 | /* 64716 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24962 | /* 64721 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24963 | /* 64725 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24964 | /* 64727 */ // (fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 24965 | /* 64727 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D32), |
| 24966 | /* 64730 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24967 | /* 64732 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24968 | /* 64734 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24969 | /* 64738 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24970 | /* 64742 */ GIR_RootConstrainSelectedInstOperands, |
| 24971 | /* 64743 */ // GIR_Coverage, 192, |
| 24972 | /* 64743 */ GIR_EraseRootFromParent_Done, |
| 24973 | /* 64744 */ // Label 1525: @64744 |
| 24974 | /* 64744 */ GIM_Try, /*On fail goto*//*Label 1526*/ GIMT_Encode4(64805), // Rule ID 200 // |
| 24975 | /* 64749 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 24976 | /* 64752 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24977 | /* 64756 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 24978 | /* 64760 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 24979 | /* 64764 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 24980 | /* 64768 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 24981 | /* 64772 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24982 | /* 64777 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24983 | /* 64782 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 24984 | /* 64786 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 24985 | /* 64788 */ // (fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 24986 | /* 64788 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D64), |
| 24987 | /* 64791 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 24988 | /* 64793 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 24989 | /* 64795 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 24990 | /* 64799 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 24991 | /* 64803 */ GIR_RootConstrainSelectedInstOperands, |
| 24992 | /* 64804 */ // GIR_Coverage, 200, |
| 24993 | /* 64804 */ GIR_EraseRootFromParent_Done, |
| 24994 | /* 64805 */ // Label 1526: @64805 |
| 24995 | /* 64805 */ GIM_Try, /*On fail goto*//*Label 1527*/ GIMT_Encode4(64836), // Rule ID 175 // |
| 24996 | /* 64810 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 24997 | /* 64813 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24998 | /* 64817 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 24999 | /* 64821 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25000 | /* 64825 */ // (fsub:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 25001 | /* 64825 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_D32), |
| 25002 | /* 64830 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25003 | /* 64834 */ GIR_RootConstrainSelectedInstOperands, |
| 25004 | /* 64835 */ // GIR_Coverage, 175, |
| 25005 | /* 64835 */ GIR_Done, |
| 25006 | /* 64836 */ // Label 1527: @64836 |
| 25007 | /* 64836 */ GIM_Try, /*On fail goto*//*Label 1528*/ GIMT_Encode4(64867), // Rule ID 177 // |
| 25008 | /* 64841 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 25009 | /* 64844 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25010 | /* 64848 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25011 | /* 64852 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25012 | /* 64856 */ // (fsub:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 25013 | /* 64856 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_D64), |
| 25014 | /* 64861 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25015 | /* 64865 */ GIR_RootConstrainSelectedInstOperands, |
| 25016 | /* 64866 */ // GIR_Coverage, 177, |
| 25017 | /* 64866 */ GIR_Done, |
| 25018 | /* 64867 */ // Label 1528: @64867 |
| 25019 | /* 64867 */ GIM_Try, /*On fail goto*//*Label 1529*/ GIMT_Encode4(64898), // Rule ID 1215 // |
| 25020 | /* 64872 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit), |
| 25021 | /* 64875 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25022 | /* 64879 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25023 | /* 64883 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25024 | /* 64887 */ // (fsub:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FSUB_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 25025 | /* 64887 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_D32_MM), |
| 25026 | /* 64892 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25027 | /* 64896 */ GIR_RootConstrainSelectedInstOperands, |
| 25028 | /* 64897 */ // GIR_Coverage, 1215, |
| 25029 | /* 64897 */ GIR_Done, |
| 25030 | /* 64898 */ // Label 1529: @64898 |
| 25031 | /* 64898 */ GIM_Try, /*On fail goto*//*Label 1530*/ GIMT_Encode4(64929), // Rule ID 1216 // |
| 25032 | /* 64903 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat), |
| 25033 | /* 64906 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25034 | /* 64910 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25035 | /* 64914 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25036 | /* 64918 */ // (fsub:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FSUB_D64_MM:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 25037 | /* 64918 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_D64_MM), |
| 25038 | /* 64923 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25039 | /* 64927 */ GIR_RootConstrainSelectedInstOperands, |
| 25040 | /* 64928 */ // GIR_Coverage, 1216, |
| 25041 | /* 64928 */ GIR_Done, |
| 25042 | /* 64929 */ // Label 1530: @64929 |
| 25043 | /* 64929 */ GIM_Reject, |
| 25044 | /* 64930 */ // Label 1522: @64930 |
| 25045 | /* 64930 */ GIM_Reject, |
| 25046 | /* 64931 */ // Label 1513: @64931 |
| 25047 | /* 64931 */ GIM_Try, /*On fail goto*//*Label 1531*/ GIMT_Encode4(65023), |
| 25048 | /* 64936 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25049 | /* 64939 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 25050 | /* 64942 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25051 | /* 64946 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25052 | /* 64950 */ GIM_Try, /*On fail goto*//*Label 1532*/ GIMT_Encode4(65003), // Rule ID 2118 // |
| 25053 | /* 64955 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_AllowFPOpFusion_HasMSA_HasStdEnc), |
| 25054 | /* 64958 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 25055 | /* 64962 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25056 | /* 64966 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25057 | /* 64970 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v2s64, |
| 25058 | /* 64974 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25059 | /* 64979 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25060 | /* 64984 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25061 | /* 64986 */ // (fsub:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd, (fmul:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt)) => (FMSUB_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 25062 | /* 64986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMSUB_D), |
| 25063 | /* 64989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 25064 | /* 64991 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd |
| 25065 | /* 64993 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 25066 | /* 64997 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 25067 | /* 65001 */ GIR_RootConstrainSelectedInstOperands, |
| 25068 | /* 65002 */ // GIR_Coverage, 2118, |
| 25069 | /* 65002 */ GIR_EraseRootFromParent_Done, |
| 25070 | /* 65003 */ // Label 1532: @65003 |
| 25071 | /* 65003 */ GIM_Try, /*On fail goto*//*Label 1533*/ GIMT_Encode4(65022), // Rule ID 834 // |
| 25072 | /* 65008 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25073 | /* 65011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25074 | /* 65015 */ // (fsub:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FSUB_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 25075 | /* 65015 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_D), |
| 25076 | /* 65020 */ GIR_RootConstrainSelectedInstOperands, |
| 25077 | /* 65021 */ // GIR_Coverage, 834, |
| 25078 | /* 65021 */ GIR_Done, |
| 25079 | /* 65022 */ // Label 1533: @65022 |
| 25080 | /* 65022 */ GIM_Reject, |
| 25081 | /* 65023 */ // Label 1531: @65023 |
| 25082 | /* 65023 */ GIM_Reject, |
| 25083 | /* 65024 */ // Label 1514: @65024 |
| 25084 | /* 65024 */ GIM_Try, /*On fail goto*//*Label 1534*/ GIMT_Encode4(65116), |
| 25085 | /* 65029 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25086 | /* 65032 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 25087 | /* 65035 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25088 | /* 65039 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25089 | /* 65043 */ GIM_Try, /*On fail goto*//*Label 1535*/ GIMT_Encode4(65096), // Rule ID 2117 // |
| 25090 | /* 65048 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_AllowFPOpFusion_HasMSA_HasStdEnc), |
| 25091 | /* 65051 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 25092 | /* 65055 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25093 | /* 65059 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25094 | /* 65063 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_v4s32, |
| 25095 | /* 65067 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25096 | /* 65072 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25097 | /* 65077 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25098 | /* 65079 */ // (fsub:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd, (fmul:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt)) => (FMSUB_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 25099 | /* 65079 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMSUB_W), |
| 25100 | /* 65082 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 25101 | /* 65084 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd |
| 25102 | /* 65086 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // ws |
| 25103 | /* 65090 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // wt |
| 25104 | /* 65094 */ GIR_RootConstrainSelectedInstOperands, |
| 25105 | /* 65095 */ // GIR_Coverage, 2117, |
| 25106 | /* 65095 */ GIR_EraseRootFromParent_Done, |
| 25107 | /* 65096 */ // Label 1535: @65096 |
| 25108 | /* 65096 */ GIM_Try, /*On fail goto*//*Label 1536*/ GIMT_Encode4(65115), // Rule ID 833 // |
| 25109 | /* 65101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25110 | /* 65104 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25111 | /* 65108 */ // (fsub:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FSUB_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 25112 | /* 65108 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_W), |
| 25113 | /* 65113 */ GIR_RootConstrainSelectedInstOperands, |
| 25114 | /* 65114 */ // GIR_Coverage, 833, |
| 25115 | /* 65114 */ GIR_Done, |
| 25116 | /* 65115 */ // Label 1536: @65115 |
| 25117 | /* 65115 */ GIM_Reject, |
| 25118 | /* 65116 */ // Label 1534: @65116 |
| 25119 | /* 65116 */ GIM_Reject, |
| 25120 | /* 65117 */ // Label 1515: @65117 |
| 25121 | /* 65117 */ GIM_Reject, |
| 25122 | /* 65118 */ // Label 48: @65118 |
| 25123 | /* 65118 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(7), /*)*//*default:*//*Label 1541*/ GIMT_Encode4(65628), |
| 25124 | /* 65129 */ /*GILLT_s32*//*Label 1537*/ GIMT_Encode4(65153), |
| 25125 | /* 65133 */ /*GILLT_s64*//*Label 1538*/ GIMT_Encode4(65235), GIMT_Encode4(0), |
| 25126 | /* 65141 */ /*GILLT_v2s64*//*Label 1539*/ GIMT_Encode4(65372), GIMT_Encode4(0), |
| 25127 | /* 65149 */ /*GILLT_v4s32*//*Label 1540*/ GIMT_Encode4(65500), |
| 25128 | /* 65153 */ // Label 1537: @65153 |
| 25129 | /* 65153 */ GIM_Try, /*On fail goto*//*Label 1542*/ GIMT_Encode4(65234), |
| 25130 | /* 65158 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 25131 | /* 65161 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 25132 | /* 65164 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25133 | /* 65168 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25134 | /* 65172 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25135 | /* 65176 */ GIM_Try, /*On fail goto*//*Label 1543*/ GIMT_Encode4(65195), // Rule ID 167 // |
| 25136 | /* 65181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 25137 | /* 65184 */ // (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FMUL_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25138 | /* 65184 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_S), |
| 25139 | /* 65189 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25140 | /* 65193 */ GIR_RootConstrainSelectedInstOperands, |
| 25141 | /* 65194 */ // GIR_Coverage, 167, |
| 25142 | /* 65194 */ GIR_Done, |
| 25143 | /* 65195 */ // Label 1543: @65195 |
| 25144 | /* 65195 */ GIM_Try, /*On fail goto*//*Label 1544*/ GIMT_Encode4(65214), // Rule ID 1207 // |
| 25145 | /* 65200 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 25146 | /* 65203 */ // (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FMUL_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25147 | /* 65203 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_S_MM), |
| 25148 | /* 65208 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25149 | /* 65212 */ GIR_RootConstrainSelectedInstOperands, |
| 25150 | /* 65213 */ // GIR_Coverage, 1207, |
| 25151 | /* 65213 */ GIR_Done, |
| 25152 | /* 65214 */ // Label 1544: @65214 |
| 25153 | /* 65214 */ GIM_Try, /*On fail goto*//*Label 1545*/ GIMT_Encode4(65233), // Rule ID 1265 // |
| 25154 | /* 65219 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 25155 | /* 65222 */ // (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FMUL_S_MMR6:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$ft, FGR32Opnd:{ *:[f32] }:$fs) |
| 25156 | /* 65222 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FMUL_S_MMR6), |
| 25157 | /* 65225 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25158 | /* 65227 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 25159 | /* 65229 */ GIR_RootToRootCopy, /*OpIdx*/1, // fs |
| 25160 | /* 65231 */ GIR_RootConstrainSelectedInstOperands, |
| 25161 | /* 65232 */ // GIR_Coverage, 1265, |
| 25162 | /* 65232 */ GIR_EraseRootFromParent_Done, |
| 25163 | /* 65233 */ // Label 1545: @65233 |
| 25164 | /* 65233 */ GIM_Reject, |
| 25165 | /* 65234 */ // Label 1542: @65234 |
| 25166 | /* 65234 */ GIM_Reject, |
| 25167 | /* 65235 */ // Label 1538: @65235 |
| 25168 | /* 65235 */ GIM_Try, /*On fail goto*//*Label 1546*/ GIMT_Encode4(65371), |
| 25169 | /* 65240 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 25170 | /* 65243 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 25171 | /* 65246 */ GIM_Try, /*On fail goto*//*Label 1547*/ GIMT_Encode4(65277), // Rule ID 169 // |
| 25172 | /* 65251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 25173 | /* 65254 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25174 | /* 65258 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25175 | /* 65262 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25176 | /* 65266 */ // (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FMUL_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 25177 | /* 65266 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_D32), |
| 25178 | /* 65271 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25179 | /* 65275 */ GIR_RootConstrainSelectedInstOperands, |
| 25180 | /* 65276 */ // GIR_Coverage, 169, |
| 25181 | /* 65276 */ GIR_Done, |
| 25182 | /* 65277 */ // Label 1547: @65277 |
| 25183 | /* 65277 */ GIM_Try, /*On fail goto*//*Label 1548*/ GIMT_Encode4(65308), // Rule ID 171 // |
| 25184 | /* 65282 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 25185 | /* 65285 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25186 | /* 65289 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25187 | /* 65293 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25188 | /* 65297 */ // (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FMUL_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 25189 | /* 65297 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_D64), |
| 25190 | /* 65302 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25191 | /* 65306 */ GIR_RootConstrainSelectedInstOperands, |
| 25192 | /* 65307 */ // GIR_Coverage, 171, |
| 25193 | /* 65307 */ GIR_Done, |
| 25194 | /* 65308 */ // Label 1548: @65308 |
| 25195 | /* 65308 */ GIM_Try, /*On fail goto*//*Label 1549*/ GIMT_Encode4(65339), // Rule ID 1213 // |
| 25196 | /* 65313 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit), |
| 25197 | /* 65316 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25198 | /* 65320 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25199 | /* 65324 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25200 | /* 65328 */ // (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FMUL_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 25201 | /* 65328 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_D32_MM), |
| 25202 | /* 65333 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25203 | /* 65337 */ GIR_RootConstrainSelectedInstOperands, |
| 25204 | /* 65338 */ // GIR_Coverage, 1213, |
| 25205 | /* 65338 */ GIR_Done, |
| 25206 | /* 65339 */ // Label 1549: @65339 |
| 25207 | /* 65339 */ GIM_Try, /*On fail goto*//*Label 1550*/ GIMT_Encode4(65370), // Rule ID 1214 // |
| 25208 | /* 65344 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat), |
| 25209 | /* 65347 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25210 | /* 65351 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25211 | /* 65355 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25212 | /* 65359 */ // (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FMUL_D64_MM:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 25213 | /* 65359 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_D64_MM), |
| 25214 | /* 65364 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25215 | /* 65368 */ GIR_RootConstrainSelectedInstOperands, |
| 25216 | /* 65369 */ // GIR_Coverage, 1214, |
| 25217 | /* 65369 */ GIR_Done, |
| 25218 | /* 65370 */ // Label 1550: @65370 |
| 25219 | /* 65370 */ GIM_Reject, |
| 25220 | /* 65371 */ // Label 1546: @65371 |
| 25221 | /* 65371 */ GIM_Reject, |
| 25222 | /* 65372 */ // Label 1539: @65372 |
| 25223 | /* 65372 */ GIM_Try, /*On fail goto*//*Label 1551*/ GIMT_Encode4(65499), |
| 25224 | /* 65377 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25225 | /* 65380 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 25226 | /* 65383 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25227 | /* 65387 */ GIM_Try, /*On fail goto*//*Label 1552*/ GIMT_Encode4(65431), // Rule ID 2560 // |
| 25228 | /* 65392 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25229 | /* 65395 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25230 | /* 65399 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FEXP2), |
| 25231 | /* 65403 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25232 | /* 65407 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25233 | /* 65412 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25234 | /* 65416 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25235 | /* 65418 */ // (fmul:{ *:[v2f64] } (fexp2:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wt), MSA128DOpnd:{ *:[v2f64] }:$ws) => (FEXP2_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 25236 | /* 65418 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXP2_D), |
| 25237 | /* 65421 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 25238 | /* 65423 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 25239 | /* 65425 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 25240 | /* 65429 */ GIR_RootConstrainSelectedInstOperands, |
| 25241 | /* 65430 */ // GIR_Coverage, 2560, |
| 25242 | /* 65430 */ GIR_EraseRootFromParent_Done, |
| 25243 | /* 65431 */ // Label 1552: @65431 |
| 25244 | /* 65431 */ GIM_Try, /*On fail goto*//*Label 1553*/ GIMT_Encode4(65475), // Rule ID 776 // |
| 25245 | /* 65436 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25246 | /* 65439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25247 | /* 65443 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 25248 | /* 65447 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FEXP2), |
| 25249 | /* 65451 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25250 | /* 65455 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25251 | /* 65460 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25252 | /* 65462 */ // (fmul:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, (fexp2:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wt)) => (FEXP2_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 25253 | /* 65462 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXP2_D), |
| 25254 | /* 65465 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 25255 | /* 65467 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 25256 | /* 65469 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 25257 | /* 65473 */ GIR_RootConstrainSelectedInstOperands, |
| 25258 | /* 65474 */ // GIR_Coverage, 776, |
| 25259 | /* 65474 */ GIR_EraseRootFromParent_Done, |
| 25260 | /* 65475 */ // Label 1553: @65475 |
| 25261 | /* 65475 */ GIM_Try, /*On fail goto*//*Label 1554*/ GIMT_Encode4(65498), // Rule ID 812 // |
| 25262 | /* 65480 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25263 | /* 65483 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25264 | /* 65487 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25265 | /* 65491 */ // (fmul:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FMUL_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 25266 | /* 65491 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_D), |
| 25267 | /* 65496 */ GIR_RootConstrainSelectedInstOperands, |
| 25268 | /* 65497 */ // GIR_Coverage, 812, |
| 25269 | /* 65497 */ GIR_Done, |
| 25270 | /* 65498 */ // Label 1554: @65498 |
| 25271 | /* 65498 */ GIM_Reject, |
| 25272 | /* 65499 */ // Label 1551: @65499 |
| 25273 | /* 65499 */ GIM_Reject, |
| 25274 | /* 65500 */ // Label 1540: @65500 |
| 25275 | /* 65500 */ GIM_Try, /*On fail goto*//*Label 1555*/ GIMT_Encode4(65627), |
| 25276 | /* 65505 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25277 | /* 65508 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 25278 | /* 65511 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25279 | /* 65515 */ GIM_Try, /*On fail goto*//*Label 1556*/ GIMT_Encode4(65559), // Rule ID 2559 // |
| 25280 | /* 65520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25281 | /* 65523 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25282 | /* 65527 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FEXP2), |
| 25283 | /* 65531 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25284 | /* 65535 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25285 | /* 65540 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25286 | /* 65544 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25287 | /* 65546 */ // (fmul:{ *:[v4f32] } (fexp2:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wt), MSA128WOpnd:{ *:[v4f32] }:$ws) => (FEXP2_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 25288 | /* 65546 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXP2_W), |
| 25289 | /* 65549 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 25290 | /* 65551 */ GIR_RootToRootCopy, /*OpIdx*/2, // ws |
| 25291 | /* 65553 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 25292 | /* 65557 */ GIR_RootConstrainSelectedInstOperands, |
| 25293 | /* 65558 */ // GIR_Coverage, 2559, |
| 25294 | /* 65558 */ GIR_EraseRootFromParent_Done, |
| 25295 | /* 65559 */ // Label 1556: @65559 |
| 25296 | /* 65559 */ GIM_Try, /*On fail goto*//*Label 1557*/ GIMT_Encode4(65603), // Rule ID 775 // |
| 25297 | /* 65564 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25298 | /* 65567 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25299 | /* 65571 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 25300 | /* 65575 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FEXP2), |
| 25301 | /* 65579 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25302 | /* 65583 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25303 | /* 65588 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 25304 | /* 65590 */ // (fmul:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, (fexp2:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wt)) => (FEXP2_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 25305 | /* 65590 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FEXP2_W), |
| 25306 | /* 65593 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 25307 | /* 65595 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 25308 | /* 65597 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // wt |
| 25309 | /* 65601 */ GIR_RootConstrainSelectedInstOperands, |
| 25310 | /* 65602 */ // GIR_Coverage, 775, |
| 25311 | /* 65602 */ GIR_EraseRootFromParent_Done, |
| 25312 | /* 65603 */ // Label 1557: @65603 |
| 25313 | /* 65603 */ GIM_Try, /*On fail goto*//*Label 1558*/ GIMT_Encode4(65626), // Rule ID 811 // |
| 25314 | /* 65608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25315 | /* 65611 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25316 | /* 65615 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25317 | /* 65619 */ // (fmul:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FMUL_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 25318 | /* 65619 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_W), |
| 25319 | /* 65624 */ GIR_RootConstrainSelectedInstOperands, |
| 25320 | /* 65625 */ // GIR_Coverage, 811, |
| 25321 | /* 65625 */ GIR_Done, |
| 25322 | /* 65626 */ // Label 1558: @65626 |
| 25323 | /* 65626 */ GIM_Reject, |
| 25324 | /* 65627 */ // Label 1555: @65627 |
| 25325 | /* 65627 */ GIM_Reject, |
| 25326 | /* 65628 */ // Label 1541: @65628 |
| 25327 | /* 65628 */ GIM_Reject, |
| 25328 | /* 65629 */ // Label 49: @65629 |
| 25329 | /* 65629 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(7), /*)*//*default:*//*Label 1561*/ GIMT_Encode4(65734), |
| 25330 | /* 65640 */ /*GILLT_v2s64*//*Label 1559*/ GIMT_Encode4(65652), GIMT_Encode4(0), |
| 25331 | /* 65648 */ /*GILLT_v4s32*//*Label 1560*/ GIMT_Encode4(65693), |
| 25332 | /* 65652 */ // Label 1559: @65652 |
| 25333 | /* 65652 */ GIM_Try, /*On fail goto*//*Label 1562*/ GIMT_Encode4(65692), // Rule ID 800 // |
| 25334 | /* 65657 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25335 | /* 65660 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25336 | /* 65663 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 25337 | /* 65666 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v2s64, |
| 25338 | /* 65669 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25339 | /* 65673 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25340 | /* 65677 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25341 | /* 65681 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25342 | /* 65685 */ // (fma:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd_in, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FMADD_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd_in, MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 25343 | /* 65685 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMADD_D), |
| 25344 | /* 65690 */ GIR_RootConstrainSelectedInstOperands, |
| 25345 | /* 65691 */ // GIR_Coverage, 800, |
| 25346 | /* 65691 */ GIR_Done, |
| 25347 | /* 65692 */ // Label 1562: @65692 |
| 25348 | /* 65692 */ GIM_Reject, |
| 25349 | /* 65693 */ // Label 1560: @65693 |
| 25350 | /* 65693 */ GIM_Try, /*On fail goto*//*Label 1563*/ GIMT_Encode4(65733), // Rule ID 799 // |
| 25351 | /* 65698 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25352 | /* 65701 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25353 | /* 65704 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 25354 | /* 65707 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_v4s32, |
| 25355 | /* 65710 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25356 | /* 65714 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25357 | /* 65718 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25358 | /* 65722 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25359 | /* 65726 */ // (fma:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd_in, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FMADD_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd_in, MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 25360 | /* 65726 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMADD_W), |
| 25361 | /* 65731 */ GIR_RootConstrainSelectedInstOperands, |
| 25362 | /* 65732 */ // GIR_Coverage, 799, |
| 25363 | /* 65732 */ GIR_Done, |
| 25364 | /* 65733 */ // Label 1563: @65733 |
| 25365 | /* 65733 */ GIM_Reject, |
| 25366 | /* 65734 */ // Label 1561: @65734 |
| 25367 | /* 65734 */ GIM_Reject, |
| 25368 | /* 65735 */ // Label 50: @65735 |
| 25369 | /* 65735 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(7), /*)*//*default:*//*Label 1568*/ GIMT_Encode4(66057), |
| 25370 | /* 65746 */ /*GILLT_s32*//*Label 1564*/ GIMT_Encode4(65770), |
| 25371 | /* 65750 */ /*GILLT_s64*//*Label 1565*/ GIMT_Encode4(65852), GIMT_Encode4(0), |
| 25372 | /* 65758 */ /*GILLT_v2s64*//*Label 1566*/ GIMT_Encode4(65989), GIMT_Encode4(0), |
| 25373 | /* 65766 */ /*GILLT_v4s32*//*Label 1567*/ GIMT_Encode4(66023), |
| 25374 | /* 65770 */ // Label 1564: @65770 |
| 25375 | /* 65770 */ GIM_Try, /*On fail goto*//*Label 1569*/ GIMT_Encode4(65851), |
| 25376 | /* 65775 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 25377 | /* 65778 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 25378 | /* 65781 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25379 | /* 65785 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25380 | /* 65789 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25381 | /* 65793 */ GIM_Try, /*On fail goto*//*Label 1570*/ GIMT_Encode4(65812), // Rule ID 161 // |
| 25382 | /* 65798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 25383 | /* 65801 */ // (fdiv:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FDIV_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25384 | /* 65801 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_S), |
| 25385 | /* 65806 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25386 | /* 65810 */ GIR_RootConstrainSelectedInstOperands, |
| 25387 | /* 65811 */ // GIR_Coverage, 161, |
| 25388 | /* 65811 */ GIR_Done, |
| 25389 | /* 65812 */ // Label 1570: @65812 |
| 25390 | /* 65812 */ GIM_Try, /*On fail goto*//*Label 1571*/ GIMT_Encode4(65831), // Rule ID 1206 // |
| 25391 | /* 65817 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 25392 | /* 65820 */ // (fdiv:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FDIV_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25393 | /* 65820 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_S_MM), |
| 25394 | /* 65825 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25395 | /* 65829 */ GIR_RootConstrainSelectedInstOperands, |
| 25396 | /* 65830 */ // GIR_Coverage, 1206, |
| 25397 | /* 65830 */ GIR_Done, |
| 25398 | /* 65831 */ // Label 1571: @65831 |
| 25399 | /* 65831 */ GIM_Try, /*On fail goto*//*Label 1572*/ GIMT_Encode4(65850), // Rule ID 1266 // |
| 25400 | /* 65836 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 25401 | /* 65839 */ // (fdiv:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FDIV_S_MMR6:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$ft, FGR32Opnd:{ *:[f32] }:$fs) |
| 25402 | /* 65839 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::FDIV_S_MMR6), |
| 25403 | /* 65842 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25404 | /* 65844 */ GIR_RootToRootCopy, /*OpIdx*/2, // ft |
| 25405 | /* 65846 */ GIR_RootToRootCopy, /*OpIdx*/1, // fs |
| 25406 | /* 65848 */ GIR_RootConstrainSelectedInstOperands, |
| 25407 | /* 65849 */ // GIR_Coverage, 1266, |
| 25408 | /* 65849 */ GIR_EraseRootFromParent_Done, |
| 25409 | /* 65850 */ // Label 1572: @65850 |
| 25410 | /* 65850 */ GIM_Reject, |
| 25411 | /* 65851 */ // Label 1569: @65851 |
| 25412 | /* 65851 */ GIM_Reject, |
| 25413 | /* 65852 */ // Label 1565: @65852 |
| 25414 | /* 65852 */ GIM_Try, /*On fail goto*//*Label 1573*/ GIMT_Encode4(65988), |
| 25415 | /* 65857 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 25416 | /* 65860 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 25417 | /* 65863 */ GIM_Try, /*On fail goto*//*Label 1574*/ GIMT_Encode4(65894), // Rule ID 163 // |
| 25418 | /* 65868 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 25419 | /* 65871 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25420 | /* 65875 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25421 | /* 65879 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25422 | /* 65883 */ // (fdiv:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FDIV_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 25423 | /* 65883 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_D32), |
| 25424 | /* 65888 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25425 | /* 65892 */ GIR_RootConstrainSelectedInstOperands, |
| 25426 | /* 65893 */ // GIR_Coverage, 163, |
| 25427 | /* 65893 */ GIR_Done, |
| 25428 | /* 65894 */ // Label 1574: @65894 |
| 25429 | /* 65894 */ GIM_Try, /*On fail goto*//*Label 1575*/ GIMT_Encode4(65925), // Rule ID 165 // |
| 25430 | /* 65899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 25431 | /* 65902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25432 | /* 65906 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25433 | /* 65910 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25434 | /* 65914 */ // (fdiv:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FDIV_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 25435 | /* 65914 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_D64), |
| 25436 | /* 65919 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25437 | /* 65923 */ GIR_RootConstrainSelectedInstOperands, |
| 25438 | /* 65924 */ // GIR_Coverage, 165, |
| 25439 | /* 65924 */ GIR_Done, |
| 25440 | /* 65925 */ // Label 1575: @65925 |
| 25441 | /* 65925 */ GIM_Try, /*On fail goto*//*Label 1576*/ GIMT_Encode4(65956), // Rule ID 1211 // |
| 25442 | /* 65930 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit), |
| 25443 | /* 65933 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25444 | /* 65937 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25445 | /* 65941 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 25446 | /* 65945 */ // (fdiv:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FDIV_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 25447 | /* 65945 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_D32_MM), |
| 25448 | /* 65950 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25449 | /* 65954 */ GIR_RootConstrainSelectedInstOperands, |
| 25450 | /* 65955 */ // GIR_Coverage, 1211, |
| 25451 | /* 65955 */ GIR_Done, |
| 25452 | /* 65956 */ // Label 1576: @65956 |
| 25453 | /* 65956 */ GIM_Try, /*On fail goto*//*Label 1577*/ GIMT_Encode4(65987), // Rule ID 1212 // |
| 25454 | /* 65961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat), |
| 25455 | /* 65964 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25456 | /* 65968 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25457 | /* 65972 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 25458 | /* 65976 */ // (fdiv:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FDIV_D64_MM:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 25459 | /* 65976 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_D64_MM), |
| 25460 | /* 65981 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 25461 | /* 65985 */ GIR_RootConstrainSelectedInstOperands, |
| 25462 | /* 65986 */ // GIR_Coverage, 1212, |
| 25463 | /* 65986 */ GIR_Done, |
| 25464 | /* 65987 */ // Label 1577: @65987 |
| 25465 | /* 65987 */ GIM_Reject, |
| 25466 | /* 65988 */ // Label 1573: @65988 |
| 25467 | /* 65988 */ GIM_Reject, |
| 25468 | /* 65989 */ // Label 1566: @65989 |
| 25469 | /* 65989 */ GIM_Try, /*On fail goto*//*Label 1578*/ GIMT_Encode4(66022), // Rule ID 772 // |
| 25470 | /* 65994 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25471 | /* 65997 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25472 | /* 66000 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 25473 | /* 66003 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25474 | /* 66007 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25475 | /* 66011 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25476 | /* 66015 */ // (fdiv:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) => (FDIV_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws, MSA128DOpnd:{ *:[v2f64] }:$wt) |
| 25477 | /* 66015 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_D), |
| 25478 | /* 66020 */ GIR_RootConstrainSelectedInstOperands, |
| 25479 | /* 66021 */ // GIR_Coverage, 772, |
| 25480 | /* 66021 */ GIR_Done, |
| 25481 | /* 66022 */ // Label 1578: @66022 |
| 25482 | /* 66022 */ GIM_Reject, |
| 25483 | /* 66023 */ // Label 1567: @66023 |
| 25484 | /* 66023 */ GIM_Try, /*On fail goto*//*Label 1579*/ GIMT_Encode4(66056), // Rule ID 771 // |
| 25485 | /* 66028 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25486 | /* 66031 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25487 | /* 66034 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 25488 | /* 66037 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25489 | /* 66041 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25490 | /* 66045 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25491 | /* 66049 */ // (fdiv:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) => (FDIV_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws, MSA128WOpnd:{ *:[v4f32] }:$wt) |
| 25492 | /* 66049 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_W), |
| 25493 | /* 66054 */ GIR_RootConstrainSelectedInstOperands, |
| 25494 | /* 66055 */ // GIR_Coverage, 771, |
| 25495 | /* 66055 */ GIR_Done, |
| 25496 | /* 66056 */ // Label 1579: @66056 |
| 25497 | /* 66056 */ GIM_Reject, |
| 25498 | /* 66057 */ // Label 1568: @66057 |
| 25499 | /* 66057 */ GIM_Reject, |
| 25500 | /* 66058 */ // Label 51: @66058 |
| 25501 | /* 66058 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(7), /*)*//*default:*//*Label 1582*/ GIMT_Encode4(66135), |
| 25502 | /* 66069 */ /*GILLT_v2s64*//*Label 1580*/ GIMT_Encode4(66081), GIMT_Encode4(0), |
| 25503 | /* 66077 */ /*GILLT_v4s32*//*Label 1581*/ GIMT_Encode4(66108), |
| 25504 | /* 66081 */ // Label 1580: @66081 |
| 25505 | /* 66081 */ GIM_Try, /*On fail goto*//*Label 1583*/ GIMT_Encode4(66107), // Rule ID 778 // |
| 25506 | /* 66086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25507 | /* 66089 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25508 | /* 66092 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25509 | /* 66096 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25510 | /* 66100 */ // (fexp2:{ *:[v2f64] } MSA128D:{ *:[v2f64] }:$ws) => (FEXP2_D_1_PSEUDO:{ *:[v2f64] } MSA128D:{ *:[v2f64] }:$ws) |
| 25511 | /* 66100 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FEXP2_D_1_PSEUDO), |
| 25512 | /* 66105 */ GIR_RootConstrainSelectedInstOperands, |
| 25513 | /* 66106 */ // GIR_Coverage, 778, |
| 25514 | /* 66106 */ GIR_Done, |
| 25515 | /* 66107 */ // Label 1583: @66107 |
| 25516 | /* 66107 */ GIM_Reject, |
| 25517 | /* 66108 */ // Label 1581: @66108 |
| 25518 | /* 66108 */ GIM_Try, /*On fail goto*//*Label 1584*/ GIMT_Encode4(66134), // Rule ID 777 // |
| 25519 | /* 66113 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25520 | /* 66116 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25521 | /* 66119 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25522 | /* 66123 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25523 | /* 66127 */ // (fexp2:{ *:[v4f32] } MSA128W:{ *:[v4f32] }:$ws) => (FEXP2_W_1_PSEUDO:{ *:[v4f32] } MSA128W:{ *:[v4f32] }:$ws) |
| 25524 | /* 66127 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FEXP2_W_1_PSEUDO), |
| 25525 | /* 66132 */ GIR_RootConstrainSelectedInstOperands, |
| 25526 | /* 66133 */ // GIR_Coverage, 777, |
| 25527 | /* 66133 */ GIR_Done, |
| 25528 | /* 66134 */ // Label 1584: @66134 |
| 25529 | /* 66134 */ GIM_Reject, |
| 25530 | /* 66135 */ // Label 1582: @66135 |
| 25531 | /* 66135 */ GIM_Reject, |
| 25532 | /* 66136 */ // Label 52: @66136 |
| 25533 | /* 66136 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(7), /*)*//*default:*//*Label 1587*/ GIMT_Encode4(66213), |
| 25534 | /* 66147 */ /*GILLT_v2s64*//*Label 1585*/ GIMT_Encode4(66159), GIMT_Encode4(0), |
| 25535 | /* 66155 */ /*GILLT_v4s32*//*Label 1586*/ GIMT_Encode4(66186), |
| 25536 | /* 66159 */ // Label 1585: @66159 |
| 25537 | /* 66159 */ GIM_Try, /*On fail goto*//*Label 1588*/ GIMT_Encode4(66185), // Rule ID 798 // |
| 25538 | /* 66164 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25539 | /* 66167 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 25540 | /* 66170 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25541 | /* 66174 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 25542 | /* 66178 */ // (flog2:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) => (FLOG2_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 25543 | /* 66178 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FLOG2_D), |
| 25544 | /* 66183 */ GIR_RootConstrainSelectedInstOperands, |
| 25545 | /* 66184 */ // GIR_Coverage, 798, |
| 25546 | /* 66184 */ GIR_Done, |
| 25547 | /* 66185 */ // Label 1588: @66185 |
| 25548 | /* 66185 */ GIM_Reject, |
| 25549 | /* 66186 */ // Label 1586: @66186 |
| 25550 | /* 66186 */ GIM_Try, /*On fail goto*//*Label 1589*/ GIMT_Encode4(66212), // Rule ID 797 // |
| 25551 | /* 66191 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 25552 | /* 66194 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 25553 | /* 66197 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25554 | /* 66201 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 25555 | /* 66205 */ // (flog2:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) => (FLOG2_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 25556 | /* 66205 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FLOG2_W), |
| 25557 | /* 66210 */ GIR_RootConstrainSelectedInstOperands, |
| 25558 | /* 66211 */ // GIR_Coverage, 797, |
| 25559 | /* 66211 */ GIR_Done, |
| 25560 | /* 66212 */ // Label 1589: @66212 |
| 25561 | /* 66212 */ GIM_Reject, |
| 25562 | /* 66213 */ // Label 1587: @66213 |
| 25563 | /* 66213 */ GIM_Reject, |
| 25564 | /* 66214 */ // Label 53: @66214 |
| 25565 | /* 66214 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1592*/ GIMT_Encode4(71118), |
| 25566 | /* 66225 */ /*GILLT_s32*//*Label 1590*/ GIMT_Encode4(66233), |
| 25567 | /* 66229 */ /*GILLT_s64*//*Label 1591*/ GIMT_Encode4(68128), |
| 25568 | /* 66233 */ // Label 1590: @66233 |
| 25569 | /* 66233 */ GIM_Try, /*On fail goto*//*Label 1593*/ GIMT_Encode4(68127), |
| 25570 | /* 66238 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 25571 | /* 66241 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25572 | /* 66245 */ GIM_Try, /*On fail goto*//*Label 1594*/ GIMT_Encode4(66321), // Rule ID 1547 // |
| 25573 | /* 66250 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25574 | /* 66253 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25575 | /* 66257 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25576 | /* 66261 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25577 | /* 66265 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25578 | /* 66269 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25579 | /* 66273 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25580 | /* 66277 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25581 | /* 66281 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25582 | /* 66285 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25583 | /* 66290 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25584 | /* 66295 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25585 | /* 66300 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25586 | /* 66302 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25587 | /* 66302 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 25588 | /* 66305 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25589 | /* 66307 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25590 | /* 66311 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25591 | /* 66315 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25592 | /* 66319 */ GIR_RootConstrainSelectedInstOperands, |
| 25593 | /* 66320 */ // GIR_Coverage, 1547, |
| 25594 | /* 66320 */ GIR_EraseRootFromParent_Done, |
| 25595 | /* 66321 */ // Label 1594: @66321 |
| 25596 | /* 66321 */ GIM_Try, /*On fail goto*//*Label 1595*/ GIMT_Encode4(66397), // Rule ID 2378 // |
| 25597 | /* 66326 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25598 | /* 66329 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25599 | /* 66333 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25600 | /* 66337 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25601 | /* 66341 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25602 | /* 66345 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25603 | /* 66349 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25604 | /* 66353 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25605 | /* 66357 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25606 | /* 66361 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25607 | /* 66366 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25608 | /* 66371 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25609 | /* 66376 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25610 | /* 66378 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25611 | /* 66378 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 25612 | /* 66381 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25613 | /* 66383 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25614 | /* 66387 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25615 | /* 66391 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25616 | /* 66395 */ GIR_RootConstrainSelectedInstOperands, |
| 25617 | /* 66396 */ // GIR_Coverage, 2378, |
| 25618 | /* 66396 */ GIR_EraseRootFromParent_Done, |
| 25619 | /* 66397 */ // Label 1595: @66397 |
| 25620 | /* 66397 */ GIM_Try, /*On fail goto*//*Label 1596*/ GIMT_Encode4(66473), // Rule ID 1546 // |
| 25621 | /* 66402 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25622 | /* 66405 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25623 | /* 66409 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25624 | /* 66413 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25625 | /* 66417 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25626 | /* 66421 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25627 | /* 66425 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25628 | /* 66429 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25629 | /* 66433 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25630 | /* 66437 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25631 | /* 66442 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25632 | /* 66447 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25633 | /* 66452 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25634 | /* 66454 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25635 | /* 66454 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 25636 | /* 66457 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25637 | /* 66459 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25638 | /* 66463 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25639 | /* 66467 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25640 | /* 66471 */ GIR_RootConstrainSelectedInstOperands, |
| 25641 | /* 66472 */ // GIR_Coverage, 1546, |
| 25642 | /* 66472 */ GIR_EraseRootFromParent_Done, |
| 25643 | /* 66473 */ // Label 1596: @66473 |
| 25644 | /* 66473 */ GIM_Try, /*On fail goto*//*Label 1597*/ GIMT_Encode4(66549), // Rule ID 2377 // |
| 25645 | /* 66478 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25646 | /* 66481 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25647 | /* 66485 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25648 | /* 66489 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25649 | /* 66493 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25650 | /* 66497 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25651 | /* 66501 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25652 | /* 66505 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25653 | /* 66509 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25654 | /* 66513 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25655 | /* 66518 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25656 | /* 66523 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25657 | /* 66528 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25658 | /* 66530 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25659 | /* 66530 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 25660 | /* 66533 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25661 | /* 66535 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25662 | /* 66539 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25663 | /* 66543 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25664 | /* 66547 */ GIR_RootConstrainSelectedInstOperands, |
| 25665 | /* 66548 */ // GIR_Coverage, 2377, |
| 25666 | /* 66548 */ GIR_EraseRootFromParent_Done, |
| 25667 | /* 66549 */ // Label 1597: @66549 |
| 25668 | /* 66549 */ GIM_Try, /*On fail goto*//*Label 1598*/ GIMT_Encode4(66625), // Rule ID 2598 // |
| 25669 | /* 66554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25670 | /* 66557 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25671 | /* 66561 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25672 | /* 66565 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25673 | /* 66569 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25674 | /* 66573 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25675 | /* 66578 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25676 | /* 66582 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25677 | /* 66586 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25678 | /* 66590 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25679 | /* 66594 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25680 | /* 66599 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25681 | /* 66604 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25682 | /* 66606 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25683 | /* 66606 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 25684 | /* 66609 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25685 | /* 66611 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 25686 | /* 66615 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25687 | /* 66619 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25688 | /* 66623 */ GIR_RootConstrainSelectedInstOperands, |
| 25689 | /* 66624 */ // GIR_Coverage, 2598, |
| 25690 | /* 66624 */ GIR_EraseRootFromParent_Done, |
| 25691 | /* 66625 */ // Label 1598: @66625 |
| 25692 | /* 66625 */ GIM_Try, /*On fail goto*//*Label 1599*/ GIMT_Encode4(66701), // Rule ID 2693 // |
| 25693 | /* 66630 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25694 | /* 66633 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25695 | /* 66637 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25696 | /* 66641 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25697 | /* 66645 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25698 | /* 66649 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25699 | /* 66654 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25700 | /* 66658 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25701 | /* 66662 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25702 | /* 66666 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25703 | /* 66670 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25704 | /* 66675 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25705 | /* 66680 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25706 | /* 66682 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25707 | /* 66682 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 25708 | /* 66685 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25709 | /* 66687 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 25710 | /* 66691 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25711 | /* 66695 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25712 | /* 66699 */ GIR_RootConstrainSelectedInstOperands, |
| 25713 | /* 66700 */ // GIR_Coverage, 2693, |
| 25714 | /* 66700 */ GIR_EraseRootFromParent_Done, |
| 25715 | /* 66701 */ // Label 1599: @66701 |
| 25716 | /* 66701 */ GIM_Try, /*On fail goto*//*Label 1600*/ GIMT_Encode4(66777), // Rule ID 2597 // |
| 25717 | /* 66706 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25718 | /* 66709 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25719 | /* 66713 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25720 | /* 66717 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25721 | /* 66721 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25722 | /* 66725 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25723 | /* 66730 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25724 | /* 66734 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25725 | /* 66738 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25726 | /* 66742 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25727 | /* 66746 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25728 | /* 66751 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25729 | /* 66756 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25730 | /* 66758 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25731 | /* 66758 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 25732 | /* 66761 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25733 | /* 66763 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 25734 | /* 66767 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25735 | /* 66771 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25736 | /* 66775 */ GIR_RootConstrainSelectedInstOperands, |
| 25737 | /* 66776 */ // GIR_Coverage, 2597, |
| 25738 | /* 66776 */ GIR_EraseRootFromParent_Done, |
| 25739 | /* 66777 */ // Label 1600: @66777 |
| 25740 | /* 66777 */ GIM_Try, /*On fail goto*//*Label 1601*/ GIMT_Encode4(66853), // Rule ID 2692 // |
| 25741 | /* 66782 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25742 | /* 66785 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25743 | /* 66789 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 25744 | /* 66793 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25745 | /* 66797 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25746 | /* 66801 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25747 | /* 66806 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25748 | /* 66810 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25749 | /* 66814 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25750 | /* 66818 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25751 | /* 66822 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25752 | /* 66827 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25753 | /* 66832 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25754 | /* 66834 */ // (fneg:{ *:[f32] } (fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25755 | /* 66834 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 25756 | /* 66837 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25757 | /* 66839 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 25758 | /* 66843 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25759 | /* 66847 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25760 | /* 66851 */ GIR_RootConstrainSelectedInstOperands, |
| 25761 | /* 66852 */ // GIR_Coverage, 2692, |
| 25762 | /* 66852 */ GIR_EraseRootFromParent_Done, |
| 25763 | /* 66853 */ // Label 1601: @66853 |
| 25764 | /* 66853 */ GIM_Try, /*On fail goto*//*Label 1602*/ GIMT_Encode4(66929), // Rule ID 1551 // |
| 25765 | /* 66858 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25766 | /* 66861 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25767 | /* 66865 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 25768 | /* 66869 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25769 | /* 66873 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25770 | /* 66877 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25771 | /* 66881 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25772 | /* 66885 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25773 | /* 66889 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25774 | /* 66893 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25775 | /* 66898 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25776 | /* 66903 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25777 | /* 66908 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25778 | /* 66910 */ // (fneg:{ *:[f32] } (fsub:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25779 | /* 66910 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S), |
| 25780 | /* 66913 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25781 | /* 66915 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25782 | /* 66919 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25783 | /* 66923 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25784 | /* 66927 */ GIR_RootConstrainSelectedInstOperands, |
| 25785 | /* 66928 */ // GIR_Coverage, 1551, |
| 25786 | /* 66928 */ GIR_EraseRootFromParent_Done, |
| 25787 | /* 66929 */ // Label 1602: @66929 |
| 25788 | /* 66929 */ GIM_Try, /*On fail goto*//*Label 1603*/ GIMT_Encode4(67005), // Rule ID 2382 // |
| 25789 | /* 66934 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25790 | /* 66937 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25791 | /* 66941 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 25792 | /* 66945 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25793 | /* 66949 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25794 | /* 66953 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25795 | /* 66957 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25796 | /* 66961 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25797 | /* 66965 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25798 | /* 66969 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25799 | /* 66974 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25800 | /* 66979 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25801 | /* 66984 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25802 | /* 66986 */ // (fneg:{ *:[f32] } (fsub:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25803 | /* 66986 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S_MM), |
| 25804 | /* 66989 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25805 | /* 66991 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25806 | /* 66995 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25807 | /* 66999 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25808 | /* 67003 */ GIR_RootConstrainSelectedInstOperands, |
| 25809 | /* 67004 */ // GIR_Coverage, 2382, |
| 25810 | /* 67004 */ GIR_EraseRootFromParent_Done, |
| 25811 | /* 67005 */ // Label 1603: @67005 |
| 25812 | /* 67005 */ GIM_Try, /*On fail goto*//*Label 1604*/ GIMT_Encode4(67081), // Rule ID 1550 // |
| 25813 | /* 67010 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25814 | /* 67013 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25815 | /* 67017 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 25816 | /* 67021 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25817 | /* 67025 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25818 | /* 67029 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25819 | /* 67033 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25820 | /* 67037 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25821 | /* 67041 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25822 | /* 67045 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25823 | /* 67050 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25824 | /* 67055 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25825 | /* 67060 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25826 | /* 67062 */ // (fneg:{ *:[f32] } (fsub:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25827 | /* 67062 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S), |
| 25828 | /* 67065 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25829 | /* 67067 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25830 | /* 67071 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25831 | /* 67075 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25832 | /* 67079 */ GIR_RootConstrainSelectedInstOperands, |
| 25833 | /* 67080 */ // GIR_Coverage, 1550, |
| 25834 | /* 67080 */ GIR_EraseRootFromParent_Done, |
| 25835 | /* 67081 */ // Label 1604: @67081 |
| 25836 | /* 67081 */ GIM_Try, /*On fail goto*//*Label 1605*/ GIMT_Encode4(67157), // Rule ID 2381 // |
| 25837 | /* 67086 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25838 | /* 67089 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25839 | /* 67093 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 25840 | /* 67097 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25841 | /* 67101 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25842 | /* 67105 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25843 | /* 67109 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25844 | /* 67113 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25845 | /* 67117 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25846 | /* 67121 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25847 | /* 67126 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25848 | /* 67131 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25849 | /* 67136 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25850 | /* 67138 */ // (fneg:{ *:[f32] } (fsub:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25851 | /* 67138 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S_MM), |
| 25852 | /* 67141 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25853 | /* 67143 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25854 | /* 67147 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25855 | /* 67151 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25856 | /* 67155 */ GIR_RootConstrainSelectedInstOperands, |
| 25857 | /* 67156 */ // GIR_Coverage, 2381, |
| 25858 | /* 67156 */ GIR_EraseRootFromParent_Done, |
| 25859 | /* 67157 */ // Label 1605: @67157 |
| 25860 | /* 67157 */ GIM_Try, /*On fail goto*//*Label 1606*/ GIMT_Encode4(67233), // Rule ID 1545 // |
| 25861 | /* 67162 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25862 | /* 67165 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25863 | /* 67169 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 25864 | /* 67173 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25865 | /* 67177 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25866 | /* 67181 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25867 | /* 67185 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25868 | /* 67189 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25869 | /* 67193 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25870 | /* 67197 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25871 | /* 67202 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25872 | /* 67207 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25873 | /* 67212 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25874 | /* 67214 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25875 | /* 67214 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 25876 | /* 67217 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25877 | /* 67219 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25878 | /* 67223 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25879 | /* 67227 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25880 | /* 67231 */ GIR_RootConstrainSelectedInstOperands, |
| 25881 | /* 67232 */ // GIR_Coverage, 1545, |
| 25882 | /* 67232 */ GIR_EraseRootFromParent_Done, |
| 25883 | /* 67233 */ // Label 1606: @67233 |
| 25884 | /* 67233 */ GIM_Try, /*On fail goto*//*Label 1607*/ GIMT_Encode4(67309), // Rule ID 2376 // |
| 25885 | /* 67238 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25886 | /* 67241 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25887 | /* 67245 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 25888 | /* 67249 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25889 | /* 67253 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25890 | /* 67257 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25891 | /* 67261 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25892 | /* 67265 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25893 | /* 67269 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25894 | /* 67273 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25895 | /* 67278 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25896 | /* 67283 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25897 | /* 67288 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25898 | /* 67290 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25899 | /* 67290 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 25900 | /* 67293 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25901 | /* 67295 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25902 | /* 67299 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25903 | /* 67303 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25904 | /* 67307 */ GIR_RootConstrainSelectedInstOperands, |
| 25905 | /* 67308 */ // GIR_Coverage, 2376, |
| 25906 | /* 67308 */ GIR_EraseRootFromParent_Done, |
| 25907 | /* 67309 */ // Label 1607: @67309 |
| 25908 | /* 67309 */ GIM_Try, /*On fail goto*//*Label 1608*/ GIMT_Encode4(67385), // Rule ID 1544 // |
| 25909 | /* 67314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25910 | /* 67317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25911 | /* 67321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 25912 | /* 67325 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25913 | /* 67329 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25914 | /* 67333 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25915 | /* 67337 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25916 | /* 67341 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25917 | /* 67345 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25918 | /* 67349 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25919 | /* 67354 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25920 | /* 67359 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25921 | /* 67364 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25922 | /* 67366 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25923 | /* 67366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 25924 | /* 67369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25925 | /* 67371 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25926 | /* 67375 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25927 | /* 67379 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25928 | /* 67383 */ GIR_RootConstrainSelectedInstOperands, |
| 25929 | /* 67384 */ // GIR_Coverage, 1544, |
| 25930 | /* 67384 */ GIR_EraseRootFromParent_Done, |
| 25931 | /* 67385 */ // Label 1608: @67385 |
| 25932 | /* 67385 */ GIM_Try, /*On fail goto*//*Label 1609*/ GIMT_Encode4(67461), // Rule ID 2375 // |
| 25933 | /* 67390 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25934 | /* 67393 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25935 | /* 67397 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 25936 | /* 67401 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25937 | /* 67405 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25938 | /* 67409 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 25939 | /* 67413 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 25940 | /* 67417 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25941 | /* 67421 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25942 | /* 67425 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25943 | /* 67430 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25944 | /* 67435 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25945 | /* 67440 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25946 | /* 67442 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25947 | /* 67442 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 25948 | /* 67445 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25949 | /* 67447 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 25950 | /* 67451 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25951 | /* 67455 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25952 | /* 67459 */ GIR_RootConstrainSelectedInstOperands, |
| 25953 | /* 67460 */ // GIR_Coverage, 2375, |
| 25954 | /* 67460 */ GIR_EraseRootFromParent_Done, |
| 25955 | /* 67461 */ // Label 1609: @67461 |
| 25956 | /* 67461 */ GIM_Try, /*On fail goto*//*Label 1610*/ GIMT_Encode4(67537), // Rule ID 2596 // |
| 25957 | /* 67466 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 25958 | /* 67469 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25959 | /* 67473 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 25960 | /* 67477 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25961 | /* 67481 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25962 | /* 67485 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25963 | /* 67490 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25964 | /* 67494 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25965 | /* 67498 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25966 | /* 67502 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25967 | /* 67506 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25968 | /* 67511 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25969 | /* 67516 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25970 | /* 67518 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25971 | /* 67518 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 25972 | /* 67521 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25973 | /* 67523 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 25974 | /* 67527 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25975 | /* 67531 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 25976 | /* 67535 */ GIR_RootConstrainSelectedInstOperands, |
| 25977 | /* 67536 */ // GIR_Coverage, 2596, |
| 25978 | /* 67536 */ GIR_EraseRootFromParent_Done, |
| 25979 | /* 67537 */ // Label 1610: @67537 |
| 25980 | /* 67537 */ GIM_Try, /*On fail goto*//*Label 1611*/ GIMT_Encode4(67613), // Rule ID 2691 // |
| 25981 | /* 67542 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 25982 | /* 67545 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 25983 | /* 67549 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 25984 | /* 67553 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 25985 | /* 67557 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 25986 | /* 67561 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25987 | /* 67566 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 25988 | /* 67570 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 25989 | /* 67574 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 25990 | /* 67578 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 25991 | /* 67582 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25992 | /* 67587 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 25993 | /* 67592 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 25994 | /* 67594 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 25995 | /* 67594 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 25996 | /* 67597 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 25997 | /* 67599 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 25998 | /* 67603 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 25999 | /* 67607 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26000 | /* 67611 */ GIR_RootConstrainSelectedInstOperands, |
| 26001 | /* 67612 */ // GIR_Coverage, 2691, |
| 26002 | /* 67612 */ GIR_EraseRootFromParent_Done, |
| 26003 | /* 67613 */ // Label 1611: @67613 |
| 26004 | /* 67613 */ GIM_Try, /*On fail goto*//*Label 1612*/ GIMT_Encode4(67689), // Rule ID 2595 // |
| 26005 | /* 67618 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26006 | /* 67621 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26007 | /* 67625 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26008 | /* 67629 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26009 | /* 67633 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26010 | /* 67637 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26011 | /* 67642 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26012 | /* 67646 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26013 | /* 67650 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 26014 | /* 67654 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 26015 | /* 67658 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26016 | /* 67663 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26017 | /* 67668 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26018 | /* 67670 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 26019 | /* 67670 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S), |
| 26020 | /* 67673 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26021 | /* 67675 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26022 | /* 67679 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26023 | /* 67683 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26024 | /* 67687 */ GIR_RootConstrainSelectedInstOperands, |
| 26025 | /* 67688 */ // GIR_Coverage, 2595, |
| 26026 | /* 67688 */ GIR_EraseRootFromParent_Done, |
| 26027 | /* 67689 */ // Label 1612: @67689 |
| 26028 | /* 67689 */ GIM_Try, /*On fail goto*//*Label 1613*/ GIMT_Encode4(67765), // Rule ID 2690 // |
| 26029 | /* 67694 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 26030 | /* 67697 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26031 | /* 67701 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26032 | /* 67705 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26033 | /* 67709 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26034 | /* 67713 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26035 | /* 67718 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26036 | /* 67722 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26037 | /* 67726 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 26038 | /* 67730 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 26039 | /* 67734 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26040 | /* 67739 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26041 | /* 67744 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26042 | /* 67746 */ // (fneg:{ *:[f32] } (strict_fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft))) => (NMADD_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 26043 | /* 67746 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_S_MM), |
| 26044 | /* 67749 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26045 | /* 67751 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26046 | /* 67755 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26047 | /* 67759 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26048 | /* 67763 */ GIR_RootConstrainSelectedInstOperands, |
| 26049 | /* 67764 */ // GIR_Coverage, 2690, |
| 26050 | /* 67764 */ GIR_EraseRootFromParent_Done, |
| 26051 | /* 67765 */ // Label 1613: @67765 |
| 26052 | /* 67765 */ GIM_Try, /*On fail goto*//*Label 1614*/ GIMT_Encode4(67841), // Rule ID 1549 // |
| 26053 | /* 67770 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26054 | /* 67773 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26055 | /* 67777 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 26056 | /* 67781 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26057 | /* 67785 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26058 | /* 67789 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26059 | /* 67793 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26060 | /* 67797 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 26061 | /* 67801 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 26062 | /* 67805 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26063 | /* 67810 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26064 | /* 67815 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26065 | /* 67820 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26066 | /* 67822 */ // (fneg:{ *:[f32] } (strict_fsub:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 26067 | /* 67822 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S), |
| 26068 | /* 67825 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26069 | /* 67827 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26070 | /* 67831 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26071 | /* 67835 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26072 | /* 67839 */ GIR_RootConstrainSelectedInstOperands, |
| 26073 | /* 67840 */ // GIR_Coverage, 1549, |
| 26074 | /* 67840 */ GIR_EraseRootFromParent_Done, |
| 26075 | /* 67841 */ // Label 1614: @67841 |
| 26076 | /* 67841 */ GIM_Try, /*On fail goto*//*Label 1615*/ GIMT_Encode4(67917), // Rule ID 2380 // |
| 26077 | /* 67846 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 26078 | /* 67849 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26079 | /* 67853 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 26080 | /* 67857 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26081 | /* 67861 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26082 | /* 67865 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26083 | /* 67869 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26084 | /* 67873 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 26085 | /* 67877 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 26086 | /* 67881 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26087 | /* 67886 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26088 | /* 67891 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26089 | /* 67896 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26090 | /* 67898 */ // (fneg:{ *:[f32] } (strict_fsub:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 26091 | /* 67898 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S_MM), |
| 26092 | /* 67901 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26093 | /* 67903 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26094 | /* 67907 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26095 | /* 67911 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26096 | /* 67915 */ GIR_RootConstrainSelectedInstOperands, |
| 26097 | /* 67916 */ // GIR_Coverage, 2380, |
| 26098 | /* 67916 */ GIR_EraseRootFromParent_Done, |
| 26099 | /* 67917 */ // Label 1615: @67917 |
| 26100 | /* 67917 */ GIM_Try, /*On fail goto*//*Label 1616*/ GIMT_Encode4(67993), // Rule ID 1548 // |
| 26101 | /* 67922 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26102 | /* 67925 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26103 | /* 67929 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 26104 | /* 67933 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26105 | /* 67937 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26106 | /* 67941 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26107 | /* 67945 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26108 | /* 67949 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 26109 | /* 67953 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 26110 | /* 67957 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26111 | /* 67962 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26112 | /* 67967 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26113 | /* 67972 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26114 | /* 67974 */ // (fneg:{ *:[f32] } (strict_fsub:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 26115 | /* 67974 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S), |
| 26116 | /* 67977 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26117 | /* 67979 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26118 | /* 67983 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26119 | /* 67987 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26120 | /* 67991 */ GIR_RootConstrainSelectedInstOperands, |
| 26121 | /* 67992 */ // GIR_Coverage, 1548, |
| 26122 | /* 67992 */ GIR_EraseRootFromParent_Done, |
| 26123 | /* 67993 */ // Label 1616: @67993 |
| 26124 | /* 67993 */ GIM_Try, /*On fail goto*//*Label 1617*/ GIMT_Encode4(68069), // Rule ID 2379 // |
| 26125 | /* 67998 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotMips32r6), |
| 26126 | /* 68001 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26127 | /* 68005 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 26128 | /* 68009 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 26129 | /* 68013 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 26130 | /* 68017 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26131 | /* 68021 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26132 | /* 68025 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s32, |
| 26133 | /* 68029 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s32, |
| 26134 | /* 68033 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26135 | /* 68038 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26136 | /* 68043 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26137 | /* 68048 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26138 | /* 68050 */ // (fneg:{ *:[f32] } (strict_fsub:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr)) => (NMSUB_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 26139 | /* 68050 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_S_MM), |
| 26140 | /* 68053 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26141 | /* 68055 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26142 | /* 68059 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26143 | /* 68063 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26144 | /* 68067 */ GIR_RootConstrainSelectedInstOperands, |
| 26145 | /* 68068 */ // GIR_Coverage, 2379, |
| 26146 | /* 68068 */ GIR_EraseRootFromParent_Done, |
| 26147 | /* 68069 */ // Label 1617: @68069 |
| 26148 | /* 68069 */ GIM_Try, /*On fail goto*//*Label 1618*/ GIMT_Encode4(68088), // Rule ID 129 // |
| 26149 | /* 68074 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat), |
| 26150 | /* 68077 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26151 | /* 68081 */ // (fneg:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FNEG_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 26152 | /* 68081 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FNEG_S), |
| 26153 | /* 68086 */ GIR_RootConstrainSelectedInstOperands, |
| 26154 | /* 68087 */ // GIR_Coverage, 129, |
| 26155 | /* 68087 */ GIR_Done, |
| 26156 | /* 68088 */ // Label 1618: @68088 |
| 26157 | /* 68088 */ GIM_Try, /*On fail goto*//*Label 1619*/ GIMT_Encode4(68107), // Rule ID 1228 // |
| 26158 | /* 68093 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 26159 | /* 68096 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26160 | /* 68100 */ // (fneg:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FNEG_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 26161 | /* 68100 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FNEG_S_MM), |
| 26162 | /* 68105 */ GIR_RootConstrainSelectedInstOperands, |
| 26163 | /* 68106 */ // GIR_Coverage, 1228, |
| 26164 | /* 68106 */ GIR_Done, |
| 26165 | /* 68107 */ // Label 1619: @68107 |
| 26166 | /* 68107 */ GIM_Try, /*On fail goto*//*Label 1620*/ GIMT_Encode4(68126), // Rule ID 1267 // |
| 26167 | /* 68112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips_IsNotSoftFloat), |
| 26168 | /* 68115 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 26169 | /* 68119 */ // (fneg:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FNEG_S_MMR6:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 26170 | /* 68119 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FNEG_S_MMR6), |
| 26171 | /* 68124 */ GIR_RootConstrainSelectedInstOperands, |
| 26172 | /* 68125 */ // GIR_Coverage, 1267, |
| 26173 | /* 68125 */ GIR_Done, |
| 26174 | /* 68126 */ // Label 1620: @68126 |
| 26175 | /* 68126 */ GIM_Reject, |
| 26176 | /* 68127 */ // Label 1593: @68127 |
| 26177 | /* 68127 */ GIM_Reject, |
| 26178 | /* 68128 */ // Label 1591: @68128 |
| 26179 | /* 68128 */ GIM_Try, /*On fail goto*//*Label 1621*/ GIMT_Encode4(71117), |
| 26180 | /* 68133 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 26181 | /* 68136 */ GIM_Try, /*On fail goto*//*Label 1622*/ GIMT_Encode4(68216), // Rule ID 1555 // |
| 26182 | /* 68141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26183 | /* 68144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26184 | /* 68148 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26185 | /* 68152 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26186 | /* 68156 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26187 | /* 68160 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26188 | /* 68164 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26189 | /* 68168 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26190 | /* 68172 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26191 | /* 68176 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26192 | /* 68180 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26193 | /* 68185 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26194 | /* 68190 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26195 | /* 68195 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26196 | /* 68197 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26197 | /* 68197 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26198 | /* 68200 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26199 | /* 68202 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26200 | /* 68206 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26201 | /* 68210 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26202 | /* 68214 */ GIR_RootConstrainSelectedInstOperands, |
| 26203 | /* 68215 */ // GIR_Coverage, 1555, |
| 26204 | /* 68215 */ GIR_EraseRootFromParent_Done, |
| 26205 | /* 68216 */ // Label 1622: @68216 |
| 26206 | /* 68216 */ GIM_Try, /*On fail goto*//*Label 1623*/ GIMT_Encode4(68296), // Rule ID 1563 // |
| 26207 | /* 68221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26208 | /* 68224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26209 | /* 68228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26210 | /* 68232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26211 | /* 68236 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26212 | /* 68240 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26213 | /* 68244 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26214 | /* 68248 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26215 | /* 68252 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26216 | /* 68256 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26217 | /* 68260 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26218 | /* 68265 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26219 | /* 68270 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26220 | /* 68275 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26221 | /* 68277 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26222 | /* 68277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26223 | /* 68280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26224 | /* 68282 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26225 | /* 68286 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26226 | /* 68290 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26227 | /* 68294 */ GIR_RootConstrainSelectedInstOperands, |
| 26228 | /* 68295 */ // GIR_Coverage, 1563, |
| 26229 | /* 68295 */ GIR_EraseRootFromParent_Done, |
| 26230 | /* 68296 */ // Label 1623: @68296 |
| 26231 | /* 68296 */ GIM_Try, /*On fail goto*//*Label 1624*/ GIMT_Encode4(68376), // Rule ID 2386 // |
| 26232 | /* 68301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26233 | /* 68304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26234 | /* 68308 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26235 | /* 68312 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26236 | /* 68316 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26237 | /* 68320 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26238 | /* 68324 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26239 | /* 68328 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26240 | /* 68332 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26241 | /* 68336 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26242 | /* 68340 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26243 | /* 68345 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26244 | /* 68350 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26245 | /* 68355 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26246 | /* 68357 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26247 | /* 68357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26248 | /* 68360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26249 | /* 68362 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26250 | /* 68366 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26251 | /* 68370 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26252 | /* 68374 */ GIR_RootConstrainSelectedInstOperands, |
| 26253 | /* 68375 */ // GIR_Coverage, 2386, |
| 26254 | /* 68375 */ GIR_EraseRootFromParent_Done, |
| 26255 | /* 68376 */ // Label 1624: @68376 |
| 26256 | /* 68376 */ GIM_Try, /*On fail goto*//*Label 1625*/ GIMT_Encode4(68456), // Rule ID 1554 // |
| 26257 | /* 68381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26258 | /* 68384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26259 | /* 68388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26260 | /* 68392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26261 | /* 68396 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26262 | /* 68400 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26263 | /* 68404 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26264 | /* 68408 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26265 | /* 68412 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26266 | /* 68416 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26267 | /* 68420 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26268 | /* 68425 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26269 | /* 68430 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26270 | /* 68435 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26271 | /* 68437 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26272 | /* 68437 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26273 | /* 68440 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26274 | /* 68442 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26275 | /* 68446 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26276 | /* 68450 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26277 | /* 68454 */ GIR_RootConstrainSelectedInstOperands, |
| 26278 | /* 68455 */ // GIR_Coverage, 1554, |
| 26279 | /* 68455 */ GIR_EraseRootFromParent_Done, |
| 26280 | /* 68456 */ // Label 1625: @68456 |
| 26281 | /* 68456 */ GIM_Try, /*On fail goto*//*Label 1626*/ GIMT_Encode4(68536), // Rule ID 1562 // |
| 26282 | /* 68461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26283 | /* 68464 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26284 | /* 68468 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26285 | /* 68472 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26286 | /* 68476 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26287 | /* 68480 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26288 | /* 68484 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26289 | /* 68488 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26290 | /* 68492 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26291 | /* 68496 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26292 | /* 68500 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26293 | /* 68505 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26294 | /* 68510 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26295 | /* 68515 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26296 | /* 68517 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26297 | /* 68517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26298 | /* 68520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26299 | /* 68522 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26300 | /* 68526 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26301 | /* 68530 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26302 | /* 68534 */ GIR_RootConstrainSelectedInstOperands, |
| 26303 | /* 68535 */ // GIR_Coverage, 1562, |
| 26304 | /* 68535 */ GIR_EraseRootFromParent_Done, |
| 26305 | /* 68536 */ // Label 1626: @68536 |
| 26306 | /* 68536 */ GIM_Try, /*On fail goto*//*Label 1627*/ GIMT_Encode4(68616), // Rule ID 2385 // |
| 26307 | /* 68541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26308 | /* 68544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26309 | /* 68548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26310 | /* 68552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26311 | /* 68556 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26312 | /* 68560 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26313 | /* 68564 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26314 | /* 68568 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26315 | /* 68572 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26316 | /* 68576 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26317 | /* 68580 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26318 | /* 68585 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26319 | /* 68590 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26320 | /* 68595 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26321 | /* 68597 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26322 | /* 68597 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26323 | /* 68600 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26324 | /* 68602 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26325 | /* 68606 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26326 | /* 68610 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26327 | /* 68614 */ GIR_RootConstrainSelectedInstOperands, |
| 26328 | /* 68615 */ // GIR_Coverage, 2385, |
| 26329 | /* 68615 */ GIR_EraseRootFromParent_Done, |
| 26330 | /* 68616 */ // Label 1627: @68616 |
| 26331 | /* 68616 */ GIM_Try, /*On fail goto*//*Label 1628*/ GIMT_Encode4(68696), // Rule ID 2602 // |
| 26332 | /* 68621 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26333 | /* 68624 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26334 | /* 68628 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26335 | /* 68632 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26336 | /* 68636 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26337 | /* 68640 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26338 | /* 68644 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26339 | /* 68649 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26340 | /* 68653 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26341 | /* 68657 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26342 | /* 68661 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26343 | /* 68665 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26344 | /* 68670 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26345 | /* 68675 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26346 | /* 68677 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26347 | /* 68677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26348 | /* 68680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26349 | /* 68682 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26350 | /* 68686 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26351 | /* 68690 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26352 | /* 68694 */ GIR_RootConstrainSelectedInstOperands, |
| 26353 | /* 68695 */ // GIR_Coverage, 2602, |
| 26354 | /* 68695 */ GIR_EraseRootFromParent_Done, |
| 26355 | /* 68696 */ // Label 1628: @68696 |
| 26356 | /* 68696 */ GIM_Try, /*On fail goto*//*Label 1629*/ GIMT_Encode4(68776), // Rule ID 2606 // |
| 26357 | /* 68701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26358 | /* 68704 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26359 | /* 68708 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26360 | /* 68712 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26361 | /* 68716 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26362 | /* 68720 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26363 | /* 68724 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26364 | /* 68729 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26365 | /* 68733 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26366 | /* 68737 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26367 | /* 68741 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26368 | /* 68745 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26369 | /* 68750 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26370 | /* 68755 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26371 | /* 68757 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26372 | /* 68757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26373 | /* 68760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26374 | /* 68762 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26375 | /* 68766 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26376 | /* 68770 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26377 | /* 68774 */ GIR_RootConstrainSelectedInstOperands, |
| 26378 | /* 68775 */ // GIR_Coverage, 2606, |
| 26379 | /* 68775 */ GIR_EraseRootFromParent_Done, |
| 26380 | /* 68776 */ // Label 1629: @68776 |
| 26381 | /* 68776 */ GIM_Try, /*On fail goto*//*Label 1630*/ GIMT_Encode4(68856), // Rule ID 2697 // |
| 26382 | /* 68781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26383 | /* 68784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26384 | /* 68788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26385 | /* 68792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26386 | /* 68796 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26387 | /* 68800 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26388 | /* 68804 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26389 | /* 68809 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26390 | /* 68813 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26391 | /* 68817 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26392 | /* 68821 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26393 | /* 68825 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26394 | /* 68830 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26395 | /* 68835 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26396 | /* 68837 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26397 | /* 68837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26398 | /* 68840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26399 | /* 68842 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26400 | /* 68846 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26401 | /* 68850 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26402 | /* 68854 */ GIR_RootConstrainSelectedInstOperands, |
| 26403 | /* 68855 */ // GIR_Coverage, 2697, |
| 26404 | /* 68855 */ GIR_EraseRootFromParent_Done, |
| 26405 | /* 68856 */ // Label 1630: @68856 |
| 26406 | /* 68856 */ GIM_Try, /*On fail goto*//*Label 1631*/ GIMT_Encode4(68936), // Rule ID 2601 // |
| 26407 | /* 68861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26408 | /* 68864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26409 | /* 68868 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26410 | /* 68872 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26411 | /* 68876 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26412 | /* 68880 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26413 | /* 68884 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26414 | /* 68889 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26415 | /* 68893 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26416 | /* 68897 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26417 | /* 68901 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26418 | /* 68905 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26419 | /* 68910 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26420 | /* 68915 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26421 | /* 68917 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26422 | /* 68917 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26423 | /* 68920 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26424 | /* 68922 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26425 | /* 68926 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26426 | /* 68930 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26427 | /* 68934 */ GIR_RootConstrainSelectedInstOperands, |
| 26428 | /* 68935 */ // GIR_Coverage, 2601, |
| 26429 | /* 68935 */ GIR_EraseRootFromParent_Done, |
| 26430 | /* 68936 */ // Label 1631: @68936 |
| 26431 | /* 68936 */ GIM_Try, /*On fail goto*//*Label 1632*/ GIMT_Encode4(69016), // Rule ID 2605 // |
| 26432 | /* 68941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26433 | /* 68944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26434 | /* 68948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26435 | /* 68952 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26436 | /* 68956 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26437 | /* 68960 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26438 | /* 68964 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26439 | /* 68969 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26440 | /* 68973 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26441 | /* 68977 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26442 | /* 68981 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26443 | /* 68985 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26444 | /* 68990 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26445 | /* 68995 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26446 | /* 68997 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26447 | /* 68997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26448 | /* 69000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26449 | /* 69002 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26450 | /* 69006 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26451 | /* 69010 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26452 | /* 69014 */ GIR_RootConstrainSelectedInstOperands, |
| 26453 | /* 69015 */ // GIR_Coverage, 2605, |
| 26454 | /* 69015 */ GIR_EraseRootFromParent_Done, |
| 26455 | /* 69016 */ // Label 1632: @69016 |
| 26456 | /* 69016 */ GIM_Try, /*On fail goto*//*Label 1633*/ GIMT_Encode4(69096), // Rule ID 2696 // |
| 26457 | /* 69021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26458 | /* 69024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26459 | /* 69028 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26460 | /* 69032 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FADD), |
| 26461 | /* 69036 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26462 | /* 69040 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26463 | /* 69044 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26464 | /* 69049 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26465 | /* 69053 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26466 | /* 69057 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26467 | /* 69061 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26468 | /* 69065 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26469 | /* 69070 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26470 | /* 69075 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26471 | /* 69077 */ // (fneg:{ *:[f64] } (fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26472 | /* 69077 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26473 | /* 69080 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26474 | /* 69082 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26475 | /* 69086 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26476 | /* 69090 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26477 | /* 69094 */ GIR_RootConstrainSelectedInstOperands, |
| 26478 | /* 69095 */ // GIR_Coverage, 2696, |
| 26479 | /* 69095 */ GIR_EraseRootFromParent_Done, |
| 26480 | /* 69096 */ // Label 1633: @69096 |
| 26481 | /* 69096 */ GIM_Try, /*On fail goto*//*Label 1634*/ GIMT_Encode4(69176), // Rule ID 1559 // |
| 26482 | /* 69101 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26483 | /* 69104 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26484 | /* 69108 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26485 | /* 69112 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 26486 | /* 69116 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26487 | /* 69120 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26488 | /* 69124 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26489 | /* 69128 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26490 | /* 69132 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26491 | /* 69136 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26492 | /* 69140 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26493 | /* 69145 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26494 | /* 69150 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26495 | /* 69155 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26496 | /* 69157 */ // (fneg:{ *:[f64] } (fsub:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26497 | /* 69157 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32), |
| 26498 | /* 69160 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26499 | /* 69162 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26500 | /* 69166 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26501 | /* 69170 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26502 | /* 69174 */ GIR_RootConstrainSelectedInstOperands, |
| 26503 | /* 69175 */ // GIR_Coverage, 1559, |
| 26504 | /* 69175 */ GIR_EraseRootFromParent_Done, |
| 26505 | /* 69176 */ // Label 1634: @69176 |
| 26506 | /* 69176 */ GIM_Try, /*On fail goto*//*Label 1635*/ GIMT_Encode4(69256), // Rule ID 1567 // |
| 26507 | /* 69181 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26508 | /* 69184 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26509 | /* 69188 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26510 | /* 69192 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 26511 | /* 69196 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26512 | /* 69200 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26513 | /* 69204 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26514 | /* 69208 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26515 | /* 69212 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26516 | /* 69216 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26517 | /* 69220 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26518 | /* 69225 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26519 | /* 69230 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26520 | /* 69235 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26521 | /* 69237 */ // (fneg:{ *:[f64] } (fsub:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26522 | /* 69237 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D64), |
| 26523 | /* 69240 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26524 | /* 69242 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26525 | /* 69246 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26526 | /* 69250 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26527 | /* 69254 */ GIR_RootConstrainSelectedInstOperands, |
| 26528 | /* 69255 */ // GIR_Coverage, 1567, |
| 26529 | /* 69255 */ GIR_EraseRootFromParent_Done, |
| 26530 | /* 69256 */ // Label 1635: @69256 |
| 26531 | /* 69256 */ GIM_Try, /*On fail goto*//*Label 1636*/ GIMT_Encode4(69336), // Rule ID 2390 // |
| 26532 | /* 69261 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26533 | /* 69264 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26534 | /* 69268 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26535 | /* 69272 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 26536 | /* 69276 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26537 | /* 69280 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26538 | /* 69284 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26539 | /* 69288 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26540 | /* 69292 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26541 | /* 69296 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26542 | /* 69300 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26543 | /* 69305 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26544 | /* 69310 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26545 | /* 69315 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26546 | /* 69317 */ // (fneg:{ *:[f64] } (fsub:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26547 | /* 69317 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32_MM), |
| 26548 | /* 69320 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26549 | /* 69322 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26550 | /* 69326 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26551 | /* 69330 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26552 | /* 69334 */ GIR_RootConstrainSelectedInstOperands, |
| 26553 | /* 69335 */ // GIR_Coverage, 2390, |
| 26554 | /* 69335 */ GIR_EraseRootFromParent_Done, |
| 26555 | /* 69336 */ // Label 1636: @69336 |
| 26556 | /* 69336 */ GIM_Try, /*On fail goto*//*Label 1637*/ GIMT_Encode4(69416), // Rule ID 1558 // |
| 26557 | /* 69341 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26558 | /* 69344 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26559 | /* 69348 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26560 | /* 69352 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 26561 | /* 69356 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26562 | /* 69360 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26563 | /* 69364 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26564 | /* 69368 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26565 | /* 69372 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26566 | /* 69376 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26567 | /* 69380 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26568 | /* 69385 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26569 | /* 69390 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26570 | /* 69395 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26571 | /* 69397 */ // (fneg:{ *:[f64] } (fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26572 | /* 69397 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32), |
| 26573 | /* 69400 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26574 | /* 69402 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26575 | /* 69406 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26576 | /* 69410 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26577 | /* 69414 */ GIR_RootConstrainSelectedInstOperands, |
| 26578 | /* 69415 */ // GIR_Coverage, 1558, |
| 26579 | /* 69415 */ GIR_EraseRootFromParent_Done, |
| 26580 | /* 69416 */ // Label 1637: @69416 |
| 26581 | /* 69416 */ GIM_Try, /*On fail goto*//*Label 1638*/ GIMT_Encode4(69496), // Rule ID 1566 // |
| 26582 | /* 69421 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26583 | /* 69424 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26584 | /* 69428 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26585 | /* 69432 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 26586 | /* 69436 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26587 | /* 69440 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26588 | /* 69444 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26589 | /* 69448 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26590 | /* 69452 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26591 | /* 69456 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26592 | /* 69460 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26593 | /* 69465 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26594 | /* 69470 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26595 | /* 69475 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26596 | /* 69477 */ // (fneg:{ *:[f64] } (fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26597 | /* 69477 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D64), |
| 26598 | /* 69480 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26599 | /* 69482 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26600 | /* 69486 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26601 | /* 69490 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26602 | /* 69494 */ GIR_RootConstrainSelectedInstOperands, |
| 26603 | /* 69495 */ // GIR_Coverage, 1566, |
| 26604 | /* 69495 */ GIR_EraseRootFromParent_Done, |
| 26605 | /* 69496 */ // Label 1638: @69496 |
| 26606 | /* 69496 */ GIM_Try, /*On fail goto*//*Label 1639*/ GIMT_Encode4(69576), // Rule ID 2389 // |
| 26607 | /* 69501 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26608 | /* 69504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26609 | /* 69508 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26610 | /* 69512 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FSUB), |
| 26611 | /* 69516 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26612 | /* 69520 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26613 | /* 69524 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26614 | /* 69528 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26615 | /* 69532 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26616 | /* 69536 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26617 | /* 69540 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26618 | /* 69545 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26619 | /* 69550 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26620 | /* 69555 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26621 | /* 69557 */ // (fneg:{ *:[f64] } (fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26622 | /* 69557 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32_MM), |
| 26623 | /* 69560 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26624 | /* 69562 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26625 | /* 69566 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26626 | /* 69570 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26627 | /* 69574 */ GIR_RootConstrainSelectedInstOperands, |
| 26628 | /* 69575 */ // GIR_Coverage, 2389, |
| 26629 | /* 69575 */ GIR_EraseRootFromParent_Done, |
| 26630 | /* 69576 */ // Label 1639: @69576 |
| 26631 | /* 69576 */ GIM_Try, /*On fail goto*//*Label 1640*/ GIMT_Encode4(69656), // Rule ID 1553 // |
| 26632 | /* 69581 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26633 | /* 69584 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26634 | /* 69588 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26635 | /* 69592 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26636 | /* 69596 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26637 | /* 69600 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26638 | /* 69604 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26639 | /* 69608 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26640 | /* 69612 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26641 | /* 69616 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26642 | /* 69620 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26643 | /* 69625 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26644 | /* 69630 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26645 | /* 69635 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26646 | /* 69637 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26647 | /* 69637 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26648 | /* 69640 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26649 | /* 69642 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26650 | /* 69646 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26651 | /* 69650 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26652 | /* 69654 */ GIR_RootConstrainSelectedInstOperands, |
| 26653 | /* 69655 */ // GIR_Coverage, 1553, |
| 26654 | /* 69655 */ GIR_EraseRootFromParent_Done, |
| 26655 | /* 69656 */ // Label 1640: @69656 |
| 26656 | /* 69656 */ GIM_Try, /*On fail goto*//*Label 1641*/ GIMT_Encode4(69736), // Rule ID 1561 // |
| 26657 | /* 69661 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26658 | /* 69664 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26659 | /* 69668 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26660 | /* 69672 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26661 | /* 69676 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26662 | /* 69680 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26663 | /* 69684 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26664 | /* 69688 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26665 | /* 69692 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26666 | /* 69696 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26667 | /* 69700 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26668 | /* 69705 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26669 | /* 69710 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26670 | /* 69715 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26671 | /* 69717 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26672 | /* 69717 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26673 | /* 69720 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26674 | /* 69722 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26675 | /* 69726 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26676 | /* 69730 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26677 | /* 69734 */ GIR_RootConstrainSelectedInstOperands, |
| 26678 | /* 69735 */ // GIR_Coverage, 1561, |
| 26679 | /* 69735 */ GIR_EraseRootFromParent_Done, |
| 26680 | /* 69736 */ // Label 1641: @69736 |
| 26681 | /* 69736 */ GIM_Try, /*On fail goto*//*Label 1642*/ GIMT_Encode4(69816), // Rule ID 2384 // |
| 26682 | /* 69741 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26683 | /* 69744 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26684 | /* 69748 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26685 | /* 69752 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26686 | /* 69756 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26687 | /* 69760 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26688 | /* 69764 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26689 | /* 69768 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26690 | /* 69772 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26691 | /* 69776 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26692 | /* 69780 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26693 | /* 69785 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26694 | /* 69790 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26695 | /* 69795 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26696 | /* 69797 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26697 | /* 69797 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26698 | /* 69800 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26699 | /* 69802 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26700 | /* 69806 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26701 | /* 69810 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26702 | /* 69814 */ GIR_RootConstrainSelectedInstOperands, |
| 26703 | /* 69815 */ // GIR_Coverage, 2384, |
| 26704 | /* 69815 */ GIR_EraseRootFromParent_Done, |
| 26705 | /* 69816 */ // Label 1642: @69816 |
| 26706 | /* 69816 */ GIM_Try, /*On fail goto*//*Label 1643*/ GIMT_Encode4(69896), // Rule ID 1552 // |
| 26707 | /* 69821 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26708 | /* 69824 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26709 | /* 69828 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26710 | /* 69832 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26711 | /* 69836 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26712 | /* 69840 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26713 | /* 69844 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26714 | /* 69848 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26715 | /* 69852 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26716 | /* 69856 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26717 | /* 69860 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26718 | /* 69865 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26719 | /* 69870 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26720 | /* 69875 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26721 | /* 69877 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26722 | /* 69877 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26723 | /* 69880 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26724 | /* 69882 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26725 | /* 69886 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26726 | /* 69890 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26727 | /* 69894 */ GIR_RootConstrainSelectedInstOperands, |
| 26728 | /* 69895 */ // GIR_Coverage, 1552, |
| 26729 | /* 69895 */ GIR_EraseRootFromParent_Done, |
| 26730 | /* 69896 */ // Label 1643: @69896 |
| 26731 | /* 69896 */ GIM_Try, /*On fail goto*//*Label 1644*/ GIMT_Encode4(69976), // Rule ID 1560 // |
| 26732 | /* 69901 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26733 | /* 69904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26734 | /* 69908 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26735 | /* 69912 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26736 | /* 69916 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26737 | /* 69920 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26738 | /* 69924 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26739 | /* 69928 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26740 | /* 69932 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26741 | /* 69936 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26742 | /* 69940 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26743 | /* 69945 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26744 | /* 69950 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26745 | /* 69955 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26746 | /* 69957 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26747 | /* 69957 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26748 | /* 69960 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26749 | /* 69962 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26750 | /* 69966 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26751 | /* 69970 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26752 | /* 69974 */ GIR_RootConstrainSelectedInstOperands, |
| 26753 | /* 69975 */ // GIR_Coverage, 1560, |
| 26754 | /* 69975 */ GIR_EraseRootFromParent_Done, |
| 26755 | /* 69976 */ // Label 1644: @69976 |
| 26756 | /* 69976 */ GIM_Try, /*On fail goto*//*Label 1645*/ GIMT_Encode4(70056), // Rule ID 2383 // |
| 26757 | /* 69981 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26758 | /* 69984 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26759 | /* 69988 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26760 | /* 69992 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26761 | /* 69996 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26762 | /* 70000 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26763 | /* 70004 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26764 | /* 70008 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26765 | /* 70012 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26766 | /* 70016 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26767 | /* 70020 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26768 | /* 70025 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26769 | /* 70030 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26770 | /* 70035 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26771 | /* 70037 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26772 | /* 70037 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26773 | /* 70040 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26774 | /* 70042 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26775 | /* 70046 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26776 | /* 70050 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26777 | /* 70054 */ GIR_RootConstrainSelectedInstOperands, |
| 26778 | /* 70055 */ // GIR_Coverage, 2383, |
| 26779 | /* 70055 */ GIR_EraseRootFromParent_Done, |
| 26780 | /* 70056 */ // Label 1645: @70056 |
| 26781 | /* 70056 */ GIM_Try, /*On fail goto*//*Label 1646*/ GIMT_Encode4(70136), // Rule ID 2600 // |
| 26782 | /* 70061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26783 | /* 70064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26784 | /* 70068 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26785 | /* 70072 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26786 | /* 70076 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26787 | /* 70080 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26788 | /* 70084 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26789 | /* 70089 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26790 | /* 70093 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26791 | /* 70097 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26792 | /* 70101 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26793 | /* 70105 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26794 | /* 70110 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26795 | /* 70115 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26796 | /* 70117 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26797 | /* 70117 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26798 | /* 70120 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26799 | /* 70122 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26800 | /* 70126 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26801 | /* 70130 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26802 | /* 70134 */ GIR_RootConstrainSelectedInstOperands, |
| 26803 | /* 70135 */ // GIR_Coverage, 2600, |
| 26804 | /* 70135 */ GIR_EraseRootFromParent_Done, |
| 26805 | /* 70136 */ // Label 1646: @70136 |
| 26806 | /* 70136 */ GIM_Try, /*On fail goto*//*Label 1647*/ GIMT_Encode4(70216), // Rule ID 2604 // |
| 26807 | /* 70141 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26808 | /* 70144 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26809 | /* 70148 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26810 | /* 70152 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26811 | /* 70156 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26812 | /* 70160 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26813 | /* 70164 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26814 | /* 70169 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26815 | /* 70173 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26816 | /* 70177 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26817 | /* 70181 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26818 | /* 70185 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26819 | /* 70190 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26820 | /* 70195 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26821 | /* 70197 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26822 | /* 70197 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26823 | /* 70200 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26824 | /* 70202 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26825 | /* 70206 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26826 | /* 70210 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26827 | /* 70214 */ GIR_RootConstrainSelectedInstOperands, |
| 26828 | /* 70215 */ // GIR_Coverage, 2604, |
| 26829 | /* 70215 */ GIR_EraseRootFromParent_Done, |
| 26830 | /* 70216 */ // Label 1647: @70216 |
| 26831 | /* 70216 */ GIM_Try, /*On fail goto*//*Label 1648*/ GIMT_Encode4(70296), // Rule ID 2695 // |
| 26832 | /* 70221 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26833 | /* 70224 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26834 | /* 70228 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26835 | /* 70232 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26836 | /* 70236 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26837 | /* 70240 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26838 | /* 70244 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26839 | /* 70249 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26840 | /* 70253 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26841 | /* 70257 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26842 | /* 70261 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26843 | /* 70265 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26844 | /* 70270 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26845 | /* 70275 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26846 | /* 70277 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26847 | /* 70277 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26848 | /* 70280 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26849 | /* 70282 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26850 | /* 70286 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26851 | /* 70290 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26852 | /* 70294 */ GIR_RootConstrainSelectedInstOperands, |
| 26853 | /* 70295 */ // GIR_Coverage, 2695, |
| 26854 | /* 70295 */ GIR_EraseRootFromParent_Done, |
| 26855 | /* 70296 */ // Label 1648: @70296 |
| 26856 | /* 70296 */ GIM_Try, /*On fail goto*//*Label 1649*/ GIMT_Encode4(70376), // Rule ID 2599 // |
| 26857 | /* 70301 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26858 | /* 70304 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26859 | /* 70308 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26860 | /* 70312 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26861 | /* 70316 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26862 | /* 70320 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26863 | /* 70324 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26864 | /* 70329 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26865 | /* 70333 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26866 | /* 70337 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26867 | /* 70341 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26868 | /* 70345 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26869 | /* 70350 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26870 | /* 70355 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26871 | /* 70357 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26872 | /* 70357 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32), |
| 26873 | /* 70360 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26874 | /* 70362 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26875 | /* 70366 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26876 | /* 70370 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26877 | /* 70374 */ GIR_RootConstrainSelectedInstOperands, |
| 26878 | /* 70375 */ // GIR_Coverage, 2599, |
| 26879 | /* 70375 */ GIR_EraseRootFromParent_Done, |
| 26880 | /* 70376 */ // Label 1649: @70376 |
| 26881 | /* 70376 */ GIM_Try, /*On fail goto*//*Label 1650*/ GIMT_Encode4(70456), // Rule ID 2603 // |
| 26882 | /* 70381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26883 | /* 70384 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26884 | /* 70388 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26885 | /* 70392 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26886 | /* 70396 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26887 | /* 70400 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26888 | /* 70404 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26889 | /* 70409 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26890 | /* 70413 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26891 | /* 70417 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26892 | /* 70421 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26893 | /* 70425 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26894 | /* 70430 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26895 | /* 70435 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26896 | /* 70437 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26897 | /* 70437 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D64), |
| 26898 | /* 70440 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26899 | /* 70442 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26900 | /* 70446 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26901 | /* 70450 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26902 | /* 70454 */ GIR_RootConstrainSelectedInstOperands, |
| 26903 | /* 70455 */ // GIR_Coverage, 2603, |
| 26904 | /* 70455 */ GIR_EraseRootFromParent_Done, |
| 26905 | /* 70456 */ // Label 1650: @70456 |
| 26906 | /* 70456 */ GIM_Try, /*On fail goto*//*Label 1651*/ GIMT_Encode4(70536), // Rule ID 2694 // |
| 26907 | /* 70461 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26908 | /* 70464 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26909 | /* 70468 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26910 | /* 70472 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FADD), |
| 26911 | /* 70476 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26912 | /* 70480 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26913 | /* 70484 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26914 | /* 70489 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/2, // MIs[2] |
| 26915 | /* 70493 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 26916 | /* 70497 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26917 | /* 70501 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26918 | /* 70505 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26919 | /* 70510 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26920 | /* 70515 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26921 | /* 70517 */ // (fneg:{ *:[f64] } (strict_fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft))) => (NMADD_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26922 | /* 70517 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMADD_D32_MM), |
| 26923 | /* 70520 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26924 | /* 70522 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fr |
| 26925 | /* 70526 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26926 | /* 70530 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26927 | /* 70534 */ GIR_RootConstrainSelectedInstOperands, |
| 26928 | /* 70535 */ // GIR_Coverage, 2694, |
| 26929 | /* 70535 */ GIR_EraseRootFromParent_Done, |
| 26930 | /* 70536 */ // Label 1651: @70536 |
| 26931 | /* 70536 */ GIM_Try, /*On fail goto*//*Label 1652*/ GIMT_Encode4(70616), // Rule ID 1557 // |
| 26932 | /* 70541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26933 | /* 70544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26934 | /* 70548 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26935 | /* 70552 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 26936 | /* 70556 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26937 | /* 70560 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26938 | /* 70564 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26939 | /* 70568 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26940 | /* 70572 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26941 | /* 70576 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26942 | /* 70580 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26943 | /* 70585 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26944 | /* 70590 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26945 | /* 70595 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26946 | /* 70597 */ // (fneg:{ *:[f64] } (strict_fsub:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26947 | /* 70597 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32), |
| 26948 | /* 70600 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26949 | /* 70602 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26950 | /* 70606 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26951 | /* 70610 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26952 | /* 70614 */ GIR_RootConstrainSelectedInstOperands, |
| 26953 | /* 70615 */ // GIR_Coverage, 1557, |
| 26954 | /* 70615 */ GIR_EraseRootFromParent_Done, |
| 26955 | /* 70616 */ // Label 1652: @70616 |
| 26956 | /* 70616 */ GIM_Try, /*On fail goto*//*Label 1653*/ GIMT_Encode4(70696), // Rule ID 1565 // |
| 26957 | /* 70621 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 26958 | /* 70624 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26959 | /* 70628 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26960 | /* 70632 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 26961 | /* 70636 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26962 | /* 70640 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26963 | /* 70644 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26964 | /* 70648 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26965 | /* 70652 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26966 | /* 70656 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26967 | /* 70660 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26968 | /* 70665 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26969 | /* 70670 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 26970 | /* 70675 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26971 | /* 70677 */ // (fneg:{ *:[f64] } (strict_fsub:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 26972 | /* 70677 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D64), |
| 26973 | /* 70680 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26974 | /* 70682 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 26975 | /* 70686 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 26976 | /* 70690 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 26977 | /* 70694 */ GIR_RootConstrainSelectedInstOperands, |
| 26978 | /* 70695 */ // GIR_Coverage, 1565, |
| 26979 | /* 70695 */ GIR_EraseRootFromParent_Done, |
| 26980 | /* 70696 */ // Label 1653: @70696 |
| 26981 | /* 70696 */ GIM_Try, /*On fail goto*//*Label 1654*/ GIMT_Encode4(70776), // Rule ID 2388 // |
| 26982 | /* 70701 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 26983 | /* 70704 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26984 | /* 70708 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 26985 | /* 70712 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 26986 | /* 70716 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 26987 | /* 70720 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 26988 | /* 70724 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 26989 | /* 70728 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 26990 | /* 70732 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 26991 | /* 70736 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 26992 | /* 70740 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26993 | /* 70745 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26994 | /* 70750 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 26995 | /* 70755 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 26996 | /* 70757 */ // (fneg:{ *:[f64] } (strict_fsub:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 26997 | /* 70757 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32_MM), |
| 26998 | /* 70760 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 26999 | /* 70762 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 27000 | /* 70766 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 27001 | /* 70770 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 27002 | /* 70774 */ GIR_RootConstrainSelectedInstOperands, |
| 27003 | /* 70775 */ // GIR_Coverage, 2388, |
| 27004 | /* 70775 */ GIR_EraseRootFromParent_Done, |
| 27005 | /* 70776 */ // Label 1654: @70776 |
| 27006 | /* 70776 */ GIM_Try, /*On fail goto*//*Label 1655*/ GIMT_Encode4(70856), // Rule ID 1556 // |
| 27007 | /* 70781 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_NoNaNsFPMath_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 27008 | /* 70784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27009 | /* 70788 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 27010 | /* 70792 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 27011 | /* 70796 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27012 | /* 70800 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27013 | /* 70804 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27014 | /* 70808 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 27015 | /* 70812 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 27016 | /* 70816 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 27017 | /* 70820 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27018 | /* 70825 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27019 | /* 70830 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27020 | /* 70835 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27021 | /* 70837 */ // (fneg:{ *:[f64] } (strict_fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 27022 | /* 70837 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32), |
| 27023 | /* 70840 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 27024 | /* 70842 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 27025 | /* 70846 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 27026 | /* 70850 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 27027 | /* 70854 */ GIR_RootConstrainSelectedInstOperands, |
| 27028 | /* 70855 */ // GIR_Coverage, 1556, |
| 27029 | /* 70855 */ GIR_EraseRootFromParent_Done, |
| 27030 | /* 70856 */ // Label 1655: @70856 |
| 27031 | /* 70856 */ GIM_Try, /*On fail goto*//*Label 1656*/ GIMT_Encode4(70936), // Rule ID 1564 // |
| 27032 | /* 70861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_NoNaNsFPMath_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 27033 | /* 70864 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27034 | /* 70868 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 27035 | /* 70872 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 27036 | /* 70876 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27037 | /* 70880 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27038 | /* 70884 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27039 | /* 70888 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 27040 | /* 70892 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 27041 | /* 70896 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 27042 | /* 70900 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27043 | /* 70905 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27044 | /* 70910 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27045 | /* 70915 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27046 | /* 70917 */ // (fneg:{ *:[f64] } (strict_fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 27047 | /* 70917 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D64), |
| 27048 | /* 70920 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 27049 | /* 70922 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 27050 | /* 70926 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 27051 | /* 70930 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 27052 | /* 70934 */ GIR_RootConstrainSelectedInstOperands, |
| 27053 | /* 70935 */ // GIR_Coverage, 1564, |
| 27054 | /* 70935 */ GIR_EraseRootFromParent_Done, |
| 27055 | /* 70936 */ // Label 1656: @70936 |
| 27056 | /* 70936 */ GIM_Try, /*On fail goto*//*Label 1657*/ GIMT_Encode4(71016), // Rule ID 2387 // |
| 27057 | /* 70941 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_InMicroMips_NoNaNsFPMath_NotFP64bit_NotMips32r6), |
| 27058 | /* 70944 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27059 | /* 70948 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 27060 | /* 70952 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FSUB), |
| 27061 | /* 70956 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 27062 | /* 70960 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 27063 | /* 70964 */ GIM_RecordInsn, /*DefineMI*/2, /*MI*/1, /*OpIdx*/1, // MIs[2] |
| 27064 | /* 70968 */ GIM_CheckOpcode, /*MI*/2, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 27065 | /* 70972 */ GIM_CheckType, /*MI*/2, /*Op*/1, /*Type*/GILLT_s64, |
| 27066 | /* 70976 */ GIM_CheckType, /*MI*/2, /*Op*/2, /*Type*/GILLT_s64, |
| 27067 | /* 70980 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27068 | /* 70985 */ GIM_CheckRegBankForClass, /*MI*/2, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27069 | /* 70990 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27070 | /* 70995 */ GIM_CheckIsSafeToFold, /*NumInsns*/2, |
| 27071 | /* 70997 */ // (fneg:{ *:[f64] } (strict_fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr)) => (NMSUB_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 27072 | /* 70997 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::NMSUB_D32_MM), |
| 27073 | /* 71000 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 27074 | /* 71002 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // fr |
| 27075 | /* 71006 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/1, // fs |
| 27076 | /* 71010 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/2, /*OpIdx*/2, // ft |
| 27077 | /* 71014 */ GIR_RootConstrainSelectedInstOperands, |
| 27078 | /* 71015 */ // GIR_Coverage, 2387, |
| 27079 | /* 71015 */ GIR_EraseRootFromParent_Done, |
| 27080 | /* 71016 */ // Label 1657: @71016 |
| 27081 | /* 71016 */ GIM_Try, /*On fail goto*//*Label 1658*/ GIMT_Encode4(71043), // Rule ID 130 // |
| 27082 | /* 71021 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 27083 | /* 71024 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27084 | /* 71028 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27085 | /* 71032 */ // (fneg:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) => (FNEG_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) |
| 27086 | /* 71032 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FNEG_D32), |
| 27087 | /* 71037 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27088 | /* 71041 */ GIR_RootConstrainSelectedInstOperands, |
| 27089 | /* 71042 */ // GIR_Coverage, 130, |
| 27090 | /* 71042 */ GIR_Done, |
| 27091 | /* 71043 */ // Label 1658: @71043 |
| 27092 | /* 71043 */ GIM_Try, /*On fail goto*//*Label 1659*/ GIMT_Encode4(71070), // Rule ID 131 // |
| 27093 | /* 71048 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 27094 | /* 71051 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27095 | /* 71055 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27096 | /* 71059 */ // (fneg:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) => (FNEG_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 27097 | /* 71059 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FNEG_D64), |
| 27098 | /* 71064 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27099 | /* 71068 */ GIR_RootConstrainSelectedInstOperands, |
| 27100 | /* 71069 */ // GIR_Coverage, 131, |
| 27101 | /* 71069 */ GIR_Done, |
| 27102 | /* 71070 */ // Label 1659: @71070 |
| 27103 | /* 71070 */ GIM_Try, /*On fail goto*//*Label 1660*/ GIMT_Encode4(71093), // Rule ID 1229 // |
| 27104 | /* 71075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit), |
| 27105 | /* 71078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27106 | /* 71082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27107 | /* 71086 */ // (fneg:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) => (FNEG_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) |
| 27108 | /* 71086 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FNEG_D32_MM), |
| 27109 | /* 71091 */ GIR_RootConstrainSelectedInstOperands, |
| 27110 | /* 71092 */ // GIR_Coverage, 1229, |
| 27111 | /* 71092 */ GIR_Done, |
| 27112 | /* 71093 */ // Label 1660: @71093 |
| 27113 | /* 71093 */ GIM_Try, /*On fail goto*//*Label 1661*/ GIMT_Encode4(71116), // Rule ID 1230 // |
| 27114 | /* 71098 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat), |
| 27115 | /* 71101 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27116 | /* 71105 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27117 | /* 71109 */ // (fneg:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) => (FNEG_D64_MM:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 27118 | /* 71109 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FNEG_D64_MM), |
| 27119 | /* 71114 */ GIR_RootConstrainSelectedInstOperands, |
| 27120 | /* 71115 */ // GIR_Coverage, 1230, |
| 27121 | /* 71115 */ GIR_Done, |
| 27122 | /* 71116 */ // Label 1661: @71116 |
| 27123 | /* 71116 */ GIM_Reject, |
| 27124 | /* 71117 */ // Label 1621: @71117 |
| 27125 | /* 71117 */ GIM_Reject, |
| 27126 | /* 71118 */ // Label 1592: @71118 |
| 27127 | /* 71118 */ GIM_Reject, |
| 27128 | /* 71119 */ // Label 54: @71119 |
| 27129 | /* 71119 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1664*/ GIMT_Encode4(71312), |
| 27130 | /* 71130 */ /*GILLT_s32*//*Label 1662*/ GIMT_Encode4(71138), |
| 27131 | /* 71134 */ /*GILLT_s64*//*Label 1663*/ GIMT_Encode4(71165), |
| 27132 | /* 71138 */ // Label 1662: @71138 |
| 27133 | /* 71138 */ GIM_Try, /*On fail goto*//*Label 1665*/ GIMT_Encode4(71164), // Rule ID 1131 // |
| 27134 | /* 71143 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 27135 | /* 71146 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 27136 | /* 71149 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27137 | /* 71153 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128F16RegClassID), |
| 27138 | /* 71157 */ // (fpextend:{ *:[f32] } MSA128F16:{ *:[f16] }:$ws) => (MSA_FP_EXTEND_W_PSEUDO:{ *:[f32] } MSA128F16:{ *:[f16] }:$ws) |
| 27139 | /* 71157 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MSA_FP_EXTEND_W_PSEUDO), |
| 27140 | /* 71162 */ GIR_RootConstrainSelectedInstOperands, |
| 27141 | /* 71163 */ // GIR_Coverage, 1131, |
| 27142 | /* 71163 */ GIR_Done, |
| 27143 | /* 71164 */ // Label 1665: @71164 |
| 27144 | /* 71164 */ GIM_Reject, |
| 27145 | /* 71165 */ // Label 1663: @71165 |
| 27146 | /* 71165 */ GIM_Try, /*On fail goto*//*Label 1666*/ GIMT_Encode4(71191), // Rule ID 1133 // |
| 27147 | /* 71170 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 27148 | /* 71173 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s16, |
| 27149 | /* 71176 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27150 | /* 71180 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128F16RegClassID), |
| 27151 | /* 71184 */ // (fpextend:{ *:[f64] } MSA128F16:{ *:[f16] }:$ws) => (MSA_FP_EXTEND_D_PSEUDO:{ *:[f64] } MSA128F16:{ *:[f16] }:$ws) |
| 27152 | /* 71184 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MSA_FP_EXTEND_D_PSEUDO), |
| 27153 | /* 71189 */ GIR_RootConstrainSelectedInstOperands, |
| 27154 | /* 71190 */ // GIR_Coverage, 1133, |
| 27155 | /* 71190 */ GIR_Done, |
| 27156 | /* 71191 */ // Label 1666: @71191 |
| 27157 | /* 71191 */ GIM_Try, /*On fail goto*//*Label 1667*/ GIMT_Encode4(71221), // Rule ID 1528 // |
| 27158 | /* 71196 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotFP64bit_NotInMicroMips), |
| 27159 | /* 71199 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27160 | /* 71202 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27161 | /* 71206 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27162 | /* 71210 */ // (fpextend:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) => (CVT_D32_S:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) |
| 27163 | /* 71210 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_D32_S), |
| 27164 | /* 71215 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27165 | /* 71219 */ GIR_RootConstrainSelectedInstOperands, |
| 27166 | /* 71220 */ // GIR_Coverage, 1528, |
| 27167 | /* 71220 */ GIR_Done, |
| 27168 | /* 71221 */ // Label 1667: @71221 |
| 27169 | /* 71221 */ GIM_Try, /*On fail goto*//*Label 1668*/ GIMT_Encode4(71251), // Rule ID 1543 // |
| 27170 | /* 71226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_NotInMicroMips), |
| 27171 | /* 71229 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27172 | /* 71232 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27173 | /* 71236 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27174 | /* 71240 */ // (fpextend:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) => (CVT_D64_S:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) |
| 27175 | /* 71240 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_D64_S), |
| 27176 | /* 71245 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27177 | /* 71249 */ GIR_RootConstrainSelectedInstOperands, |
| 27178 | /* 71250 */ // GIR_Coverage, 1543, |
| 27179 | /* 71250 */ GIR_Done, |
| 27180 | /* 71251 */ // Label 1668: @71251 |
| 27181 | /* 71251 */ GIM_Try, /*On fail goto*//*Label 1669*/ GIMT_Encode4(71281), // Rule ID 2401 // |
| 27182 | /* 71256 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit), |
| 27183 | /* 71259 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27184 | /* 71262 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27185 | /* 71266 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27186 | /* 71270 */ // (fpextend:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) => (CVT_D64_S_MM:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) |
| 27187 | /* 71270 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_D64_S_MM), |
| 27188 | /* 71275 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27189 | /* 71279 */ GIR_RootConstrainSelectedInstOperands, |
| 27190 | /* 71280 */ // GIR_Coverage, 2401, |
| 27191 | /* 71280 */ GIR_Done, |
| 27192 | /* 71281 */ // Label 1669: @71281 |
| 27193 | /* 71281 */ GIM_Try, /*On fail goto*//*Label 1670*/ GIMT_Encode4(71311), // Rule ID 2403 // |
| 27194 | /* 71286 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit), |
| 27195 | /* 71289 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27196 | /* 71292 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27197 | /* 71296 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27198 | /* 71300 */ // (fpextend:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) => (CVT_D32_S_MM:{ *:[f64] } FGR32Opnd:{ *:[f32] }:$src) |
| 27199 | /* 71300 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_D32_S_MM), |
| 27200 | /* 71305 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27201 | /* 71309 */ GIR_RootConstrainSelectedInstOperands, |
| 27202 | /* 71310 */ // GIR_Coverage, 2403, |
| 27203 | /* 71310 */ GIR_Done, |
| 27204 | /* 71311 */ // Label 1670: @71311 |
| 27205 | /* 71311 */ GIM_Reject, |
| 27206 | /* 71312 */ // Label 1664: @71312 |
| 27207 | /* 71312 */ GIM_Reject, |
| 27208 | /* 71313 */ // Label 55: @71313 |
| 27209 | /* 71313 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(0), GIMT_Encode2(2), /*)*//*default:*//*Label 1673*/ GIMT_Encode4(71491), |
| 27210 | /* 71324 */ /*GILLT_s16*//*Label 1671*/ GIMT_Encode4(71332), |
| 27211 | /* 71328 */ /*GILLT_s32*//*Label 1672*/ GIMT_Encode4(71385), |
| 27212 | /* 71332 */ // Label 1671: @71332 |
| 27213 | /* 71332 */ GIM_Try, /*On fail goto*//*Label 1674*/ GIMT_Encode4(71358), // Rule ID 1132 // |
| 27214 | /* 71337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 27215 | /* 71340 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27216 | /* 71343 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128F16RegClassID), |
| 27217 | /* 71347 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27218 | /* 71351 */ // (fpround:{ *:[f16] } FGR32Opnd:{ *:[f32] }:$fs) => (MSA_FP_ROUND_W_PSEUDO:{ *:[f16] } FGR32Opnd:{ *:[f32] }:$fs) |
| 27219 | /* 71351 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MSA_FP_ROUND_W_PSEUDO), |
| 27220 | /* 71356 */ GIR_RootConstrainSelectedInstOperands, |
| 27221 | /* 71357 */ // GIR_Coverage, 1132, |
| 27222 | /* 71357 */ GIR_Done, |
| 27223 | /* 71358 */ // Label 1674: @71358 |
| 27224 | /* 71358 */ GIM_Try, /*On fail goto*//*Label 1675*/ GIMT_Encode4(71384), // Rule ID 1134 // |
| 27225 | /* 71363 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 27226 | /* 71366 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27227 | /* 71369 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128F16RegClassID), |
| 27228 | /* 71373 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27229 | /* 71377 */ // (fpround:{ *:[f16] } FGR64Opnd:{ *:[f64] }:$fs) => (MSA_FP_ROUND_D_PSEUDO:{ *:[f16] } FGR64Opnd:{ *:[f64] }:$fs) |
| 27230 | /* 71377 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MSA_FP_ROUND_D_PSEUDO), |
| 27231 | /* 71382 */ GIR_RootConstrainSelectedInstOperands, |
| 27232 | /* 71383 */ // GIR_Coverage, 1134, |
| 27233 | /* 71383 */ GIR_Done, |
| 27234 | /* 71384 */ // Label 1675: @71384 |
| 27235 | /* 71384 */ GIM_Reject, |
| 27236 | /* 71385 */ // Label 1672: @71385 |
| 27237 | /* 71385 */ GIM_Try, /*On fail goto*//*Label 1676*/ GIMT_Encode4(71490), |
| 27238 | /* 71390 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27239 | /* 71393 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27240 | /* 71397 */ GIM_Try, /*On fail goto*//*Label 1677*/ GIMT_Encode4(71420), // Rule ID 1526 // |
| 27241 | /* 71402 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotFP64bit_NotInMicroMips), |
| 27242 | /* 71405 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27243 | /* 71409 */ // (fpround:{ *:[f32] } AFGR64Opnd:{ *:[f64] }:$src) => (CVT_S_D32:{ *:[f32] } AFGR64Opnd:{ *:[f64] }:$src) |
| 27244 | /* 71409 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_S_D32), |
| 27245 | /* 71414 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27246 | /* 71418 */ GIR_RootConstrainSelectedInstOperands, |
| 27247 | /* 71419 */ // GIR_Coverage, 1526, |
| 27248 | /* 71419 */ GIR_Done, |
| 27249 | /* 71420 */ // Label 1677: @71420 |
| 27250 | /* 71420 */ GIM_Try, /*On fail goto*//*Label 1678*/ GIMT_Encode4(71443), // Rule ID 1541 // |
| 27251 | /* 71425 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_NotInMicroMips), |
| 27252 | /* 71428 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27253 | /* 71432 */ // (fpround:{ *:[f32] } FGR64Opnd:{ *:[f64] }:$src) => (CVT_S_D64:{ *:[f32] } FGR64Opnd:{ *:[f64] }:$src) |
| 27254 | /* 71432 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_S_D64), |
| 27255 | /* 71437 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27256 | /* 71441 */ GIR_RootConstrainSelectedInstOperands, |
| 27257 | /* 71442 */ // GIR_Coverage, 1541, |
| 27258 | /* 71442 */ GIR_Done, |
| 27259 | /* 71443 */ // Label 1678: @71443 |
| 27260 | /* 71443 */ GIM_Try, /*On fail goto*//*Label 1679*/ GIMT_Encode4(71466), // Rule ID 2400 // |
| 27261 | /* 71448 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit), |
| 27262 | /* 71451 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27263 | /* 71455 */ // (fpround:{ *:[f32] } FGR64Opnd:{ *:[f64] }:$src) => (CVT_S_D64_MM:{ *:[f32] } FGR64Opnd:{ *:[f64] }:$src) |
| 27264 | /* 71455 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_S_D64_MM), |
| 27265 | /* 71460 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27266 | /* 71464 */ GIR_RootConstrainSelectedInstOperands, |
| 27267 | /* 71465 */ // GIR_Coverage, 2400, |
| 27268 | /* 71465 */ GIR_Done, |
| 27269 | /* 71466 */ // Label 1679: @71466 |
| 27270 | /* 71466 */ GIM_Try, /*On fail goto*//*Label 1680*/ GIMT_Encode4(71489), // Rule ID 2402 // |
| 27271 | /* 71471 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotFP64bit), |
| 27272 | /* 71474 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27273 | /* 71478 */ // (fpround:{ *:[f32] } AFGR64Opnd:{ *:[f64] }:$src) => (CVT_S_D32_MM:{ *:[f32] } AFGR64Opnd:{ *:[f64] }:$src) |
| 27274 | /* 71478 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CVT_S_D32_MM), |
| 27275 | /* 71483 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27276 | /* 71487 */ GIR_RootConstrainSelectedInstOperands, |
| 27277 | /* 71488 */ // GIR_Coverage, 2402, |
| 27278 | /* 71488 */ GIR_Done, |
| 27279 | /* 71489 */ // Label 1680: @71489 |
| 27280 | /* 71489 */ GIM_Reject, |
| 27281 | /* 71490 */ // Label 1676: @71490 |
| 27282 | /* 71490 */ GIM_Reject, |
| 27283 | /* 71491 */ // Label 1673: @71491 |
| 27284 | /* 71491 */ GIM_Reject, |
| 27285 | /* 71492 */ // Label 56: @71492 |
| 27286 | /* 71492 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(7), /*)*//*default:*//*Label 1683*/ GIMT_Encode4(71569), |
| 27287 | /* 71503 */ /*GILLT_v2s64*//*Label 1681*/ GIMT_Encode4(71515), GIMT_Encode4(0), |
| 27288 | /* 71511 */ /*GILLT_v4s32*//*Label 1682*/ GIMT_Encode4(71542), |
| 27289 | /* 71515 */ // Label 1681: @71515 |
| 27290 | /* 71515 */ GIM_Try, /*On fail goto*//*Label 1684*/ GIMT_Encode4(71541), // Rule ID 852 // |
| 27291 | /* 71520 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27292 | /* 71523 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27293 | /* 71526 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27294 | /* 71530 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27295 | /* 71534 */ // (fp_to_sint:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws) => (FTRUNC_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 27296 | /* 71534 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FTRUNC_S_D), |
| 27297 | /* 71539 */ GIR_RootConstrainSelectedInstOperands, |
| 27298 | /* 71540 */ // GIR_Coverage, 852, |
| 27299 | /* 71540 */ GIR_Done, |
| 27300 | /* 71541 */ // Label 1684: @71541 |
| 27301 | /* 71541 */ GIM_Reject, |
| 27302 | /* 71542 */ // Label 1682: @71542 |
| 27303 | /* 71542 */ GIM_Try, /*On fail goto*//*Label 1685*/ GIMT_Encode4(71568), // Rule ID 851 // |
| 27304 | /* 71547 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27305 | /* 71550 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27306 | /* 71553 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27307 | /* 71557 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27308 | /* 71561 */ // (fp_to_sint:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws) => (FTRUNC_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 27309 | /* 71561 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FTRUNC_S_W), |
| 27310 | /* 71566 */ GIR_RootConstrainSelectedInstOperands, |
| 27311 | /* 71567 */ // GIR_Coverage, 851, |
| 27312 | /* 71567 */ GIR_Done, |
| 27313 | /* 71568 */ // Label 1685: @71568 |
| 27314 | /* 71568 */ GIM_Reject, |
| 27315 | /* 71569 */ // Label 1683: @71569 |
| 27316 | /* 71569 */ GIM_Reject, |
| 27317 | /* 71570 */ // Label 57: @71570 |
| 27318 | /* 71570 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(7), /*)*//*default:*//*Label 1688*/ GIMT_Encode4(71647), |
| 27319 | /* 71581 */ /*GILLT_v2s64*//*Label 1686*/ GIMT_Encode4(71593), GIMT_Encode4(0), |
| 27320 | /* 71589 */ /*GILLT_v4s32*//*Label 1687*/ GIMT_Encode4(71620), |
| 27321 | /* 71593 */ // Label 1686: @71593 |
| 27322 | /* 71593 */ GIM_Try, /*On fail goto*//*Label 1689*/ GIMT_Encode4(71619), // Rule ID 854 // |
| 27323 | /* 71598 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27324 | /* 71601 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27325 | /* 71604 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27326 | /* 71608 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27327 | /* 71612 */ // (fp_to_uint:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws) => (FTRUNC_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 27328 | /* 71612 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FTRUNC_U_D), |
| 27329 | /* 71617 */ GIR_RootConstrainSelectedInstOperands, |
| 27330 | /* 71618 */ // GIR_Coverage, 854, |
| 27331 | /* 71618 */ GIR_Done, |
| 27332 | /* 71619 */ // Label 1689: @71619 |
| 27333 | /* 71619 */ GIM_Reject, |
| 27334 | /* 71620 */ // Label 1687: @71620 |
| 27335 | /* 71620 */ GIM_Try, /*On fail goto*//*Label 1690*/ GIMT_Encode4(71646), // Rule ID 853 // |
| 27336 | /* 71625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27337 | /* 71628 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27338 | /* 71631 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27339 | /* 71635 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27340 | /* 71639 */ // (fp_to_uint:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws) => (FTRUNC_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 27341 | /* 71639 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FTRUNC_U_W), |
| 27342 | /* 71644 */ GIR_RootConstrainSelectedInstOperands, |
| 27343 | /* 71645 */ // GIR_Coverage, 853, |
| 27344 | /* 71645 */ GIR_Done, |
| 27345 | /* 71646 */ // Label 1690: @71646 |
| 27346 | /* 71646 */ GIM_Reject, |
| 27347 | /* 71647 */ // Label 1688: @71647 |
| 27348 | /* 71647 */ GIM_Reject, |
| 27349 | /* 71648 */ // Label 58: @71648 |
| 27350 | /* 71648 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(7), /*)*//*default:*//*Label 1695*/ GIMT_Encode4(71900), |
| 27351 | /* 71659 */ /*GILLT_s32*//*Label 1691*/ GIMT_Encode4(71683), |
| 27352 | /* 71663 */ /*GILLT_s64*//*Label 1692*/ GIMT_Encode4(71767), GIMT_Encode4(0), |
| 27353 | /* 71671 */ /*GILLT_v2s64*//*Label 1693*/ GIMT_Encode4(71846), GIMT_Encode4(0), |
| 27354 | /* 71679 */ /*GILLT_v4s32*//*Label 1694*/ GIMT_Encode4(71873), |
| 27355 | /* 71683 */ // Label 1691: @71683 |
| 27356 | /* 71683 */ GIM_Try, /*On fail goto*//*Label 1696*/ GIMT_Encode4(71706), // Rule ID 1519 // |
| 27357 | /* 71688 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27358 | /* 71691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27359 | /* 71695 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 27360 | /* 71699 */ // (sint_to_fp:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$src) => (PseudoCVT_S_W:{ *:[f32] } GPR32Opnd:{ *:[i32] }:$src) |
| 27361 | /* 71699 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoCVT_S_W), |
| 27362 | /* 71704 */ GIR_RootConstrainSelectedInstOperands, |
| 27363 | /* 71705 */ // GIR_Coverage, 1519, |
| 27364 | /* 71705 */ GIR_Done, |
| 27365 | /* 71706 */ // Label 1696: @71706 |
| 27366 | /* 71706 */ GIM_Try, /*On fail goto*//*Label 1697*/ GIMT_Encode4(71766), // Rule ID 1534 // |
| 27367 | /* 71711 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsFP64bit), |
| 27368 | /* 71714 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27369 | /* 71717 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27370 | /* 71721 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 27371 | /* 71725 */ // (sint_to_fp:{ *:[f32] } GPR64Opnd:{ *:[i64] }:$src) => (EXTRACT_SUBREG:{ *:[f32] } (PseudoCVT_S_L:{ *:[f64] } GPR64Opnd:{ *:[i64] }:$src), sub_lo:{ *:[i32] }) |
| 27372 | /* 71725 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 27373 | /* 71728 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::PseudoCVT_S_L), |
| 27374 | /* 71732 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 27375 | /* 71737 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // src |
| 27376 | /* 71741 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 27377 | /* 71743 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(TargetOpcode::COPY), |
| 27378 | /* 71746 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[dst] |
| 27379 | /* 71748 */ GIR_AddTempSubRegister, /*InsnID*/0, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(0), GIMT_Encode2(Mips::sub_lo), |
| 27380 | /* 71755 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/0, GIMT_Encode2(Mips::FGR32RegClassID), |
| 27381 | /* 71760 */ GIR_ConstrainOperandRC, /*InsnID*/0, /*Op*/1, GIMT_Encode2(Mips::FGR64RegClassID), |
| 27382 | /* 71765 */ // GIR_Coverage, 1534, |
| 27383 | /* 71765 */ GIR_EraseRootFromParent_Done, |
| 27384 | /* 71766 */ // Label 1697: @71766 |
| 27385 | /* 71766 */ GIM_Reject, |
| 27386 | /* 71767 */ // Label 1692: @71767 |
| 27387 | /* 71767 */ GIM_Try, /*On fail goto*//*Label 1698*/ GIMT_Encode4(71793), // Rule ID 1523 // |
| 27388 | /* 71772 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_NotFP64bit), |
| 27389 | /* 71775 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27390 | /* 71778 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27391 | /* 71782 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 27392 | /* 71786 */ // (sint_to_fp:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$src) => (PseudoCVT_D32_W:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$src) |
| 27393 | /* 71786 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoCVT_D32_W), |
| 27394 | /* 71791 */ GIR_RootConstrainSelectedInstOperands, |
| 27395 | /* 71792 */ // GIR_Coverage, 1523, |
| 27396 | /* 71792 */ GIR_Done, |
| 27397 | /* 71793 */ // Label 1698: @71793 |
| 27398 | /* 71793 */ GIM_Try, /*On fail goto*//*Label 1699*/ GIMT_Encode4(71819), // Rule ID 1532 // |
| 27399 | /* 71798 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsFP64bit), |
| 27400 | /* 71801 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27401 | /* 71804 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27402 | /* 71808 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 27403 | /* 71812 */ // (sint_to_fp:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$src) => (PseudoCVT_D64_W:{ *:[f64] } GPR32Opnd:{ *:[i32] }:$src) |
| 27404 | /* 71812 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoCVT_D64_W), |
| 27405 | /* 71817 */ GIR_RootConstrainSelectedInstOperands, |
| 27406 | /* 71818 */ // GIR_Coverage, 1532, |
| 27407 | /* 71818 */ GIR_Done, |
| 27408 | /* 71819 */ // Label 1699: @71819 |
| 27409 | /* 71819 */ GIM_Try, /*On fail goto*//*Label 1700*/ GIMT_Encode4(71845), // Rule ID 1536 // |
| 27410 | /* 71824 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_IsFP64bit), |
| 27411 | /* 71827 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27412 | /* 71830 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27413 | /* 71834 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 27414 | /* 71838 */ // (sint_to_fp:{ *:[f64] } GPR64Opnd:{ *:[i64] }:$src) => (PseudoCVT_D64_L:{ *:[f64] } GPR64Opnd:{ *:[i64] }:$src) |
| 27415 | /* 71838 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PseudoCVT_D64_L), |
| 27416 | /* 71843 */ GIR_RootConstrainSelectedInstOperands, |
| 27417 | /* 71844 */ // GIR_Coverage, 1536, |
| 27418 | /* 71844 */ GIR_Done, |
| 27419 | /* 71845 */ // Label 1700: @71845 |
| 27420 | /* 71845 */ GIM_Reject, |
| 27421 | /* 71846 */ // Label 1693: @71846 |
| 27422 | /* 71846 */ GIM_Try, /*On fail goto*//*Label 1701*/ GIMT_Encode4(71872), // Rule ID 784 // |
| 27423 | /* 71851 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27424 | /* 71854 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27425 | /* 71857 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27426 | /* 71861 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27427 | /* 71865 */ // (sint_to_fp:{ *:[v2f64] } MSA128DOpnd:{ *:[v2i64] }:$ws) => (FFINT_S_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2i64] }:$ws) |
| 27428 | /* 71865 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FFINT_S_D), |
| 27429 | /* 71870 */ GIR_RootConstrainSelectedInstOperands, |
| 27430 | /* 71871 */ // GIR_Coverage, 784, |
| 27431 | /* 71871 */ GIR_Done, |
| 27432 | /* 71872 */ // Label 1701: @71872 |
| 27433 | /* 71872 */ GIM_Reject, |
| 27434 | /* 71873 */ // Label 1694: @71873 |
| 27435 | /* 71873 */ GIM_Try, /*On fail goto*//*Label 1702*/ GIMT_Encode4(71899), // Rule ID 783 // |
| 27436 | /* 71878 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27437 | /* 71881 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27438 | /* 71884 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27439 | /* 71888 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27440 | /* 71892 */ // (sint_to_fp:{ *:[v4f32] } MSA128WOpnd:{ *:[v4i32] }:$ws) => (FFINT_S_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4i32] }:$ws) |
| 27441 | /* 71892 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FFINT_S_W), |
| 27442 | /* 71897 */ GIR_RootConstrainSelectedInstOperands, |
| 27443 | /* 71898 */ // GIR_Coverage, 783, |
| 27444 | /* 71898 */ GIR_Done, |
| 27445 | /* 71899 */ // Label 1702: @71899 |
| 27446 | /* 71899 */ GIM_Reject, |
| 27447 | /* 71900 */ // Label 1695: @71900 |
| 27448 | /* 71900 */ GIM_Reject, |
| 27449 | /* 71901 */ // Label 59: @71901 |
| 27450 | /* 71901 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(7), /*)*//*default:*//*Label 1705*/ GIMT_Encode4(71978), |
| 27451 | /* 71912 */ /*GILLT_v2s64*//*Label 1703*/ GIMT_Encode4(71924), GIMT_Encode4(0), |
| 27452 | /* 71920 */ /*GILLT_v4s32*//*Label 1704*/ GIMT_Encode4(71951), |
| 27453 | /* 71924 */ // Label 1703: @71924 |
| 27454 | /* 71924 */ GIM_Try, /*On fail goto*//*Label 1706*/ GIMT_Encode4(71950), // Rule ID 786 // |
| 27455 | /* 71929 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27456 | /* 71932 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27457 | /* 71935 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27458 | /* 71939 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27459 | /* 71943 */ // (uint_to_fp:{ *:[v2f64] } MSA128DOpnd:{ *:[v2i64] }:$ws) => (FFINT_U_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2i64] }:$ws) |
| 27460 | /* 71943 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FFINT_U_D), |
| 27461 | /* 71948 */ GIR_RootConstrainSelectedInstOperands, |
| 27462 | /* 71949 */ // GIR_Coverage, 786, |
| 27463 | /* 71949 */ GIR_Done, |
| 27464 | /* 71950 */ // Label 1706: @71950 |
| 27465 | /* 71950 */ GIM_Reject, |
| 27466 | /* 71951 */ // Label 1704: @71951 |
| 27467 | /* 71951 */ GIM_Try, /*On fail goto*//*Label 1707*/ GIMT_Encode4(71977), // Rule ID 785 // |
| 27468 | /* 71956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27469 | /* 71959 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27470 | /* 71962 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27471 | /* 71966 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27472 | /* 71970 */ // (uint_to_fp:{ *:[v4f32] } MSA128WOpnd:{ *:[v4i32] }:$ws) => (FFINT_U_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4i32] }:$ws) |
| 27473 | /* 71970 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FFINT_U_W), |
| 27474 | /* 71975 */ GIR_RootConstrainSelectedInstOperands, |
| 27475 | /* 71976 */ // GIR_Coverage, 785, |
| 27476 | /* 71976 */ GIR_Done, |
| 27477 | /* 71977 */ // Label 1707: @71977 |
| 27478 | /* 71977 */ GIM_Reject, |
| 27479 | /* 71978 */ // Label 1705: @71978 |
| 27480 | /* 71978 */ GIM_Reject, |
| 27481 | /* 71979 */ // Label 60: @71979 |
| 27482 | /* 71979 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(7), /*)*//*default:*//*Label 1712*/ GIMT_Encode4(72226), |
| 27483 | /* 71990 */ /*GILLT_s32*//*Label 1708*/ GIMT_Encode4(72014), |
| 27484 | /* 71994 */ /*GILLT_s64*//*Label 1709*/ GIMT_Encode4(72062), GIMT_Encode4(0), |
| 27485 | /* 72002 */ /*GILLT_v2s64*//*Label 1710*/ GIMT_Encode4(72172), GIMT_Encode4(0), |
| 27486 | /* 72010 */ /*GILLT_v4s32*//*Label 1711*/ GIMT_Encode4(72199), |
| 27487 | /* 72014 */ // Label 1708: @72014 |
| 27488 | /* 72014 */ GIM_Try, /*On fail goto*//*Label 1713*/ GIMT_Encode4(72061), |
| 27489 | /* 72019 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27490 | /* 72022 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27491 | /* 72026 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27492 | /* 72030 */ GIM_Try, /*On fail goto*//*Label 1714*/ GIMT_Encode4(72045), // Rule ID 126 // |
| 27493 | /* 72035 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips_UseAbs), |
| 27494 | /* 72038 */ // (fabs:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FABS_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 27495 | /* 72038 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_S), |
| 27496 | /* 72043 */ GIR_RootConstrainSelectedInstOperands, |
| 27497 | /* 72044 */ // GIR_Coverage, 126, |
| 27498 | /* 72044 */ GIR_Done, |
| 27499 | /* 72045 */ // Label 1714: @72045 |
| 27500 | /* 72045 */ GIM_Try, /*On fail goto*//*Label 1715*/ GIMT_Encode4(72060), // Rule ID 1227 // |
| 27501 | /* 72050 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_UseAbs), |
| 27502 | /* 72053 */ // (fabs:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FABS_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 27503 | /* 72053 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_S_MM), |
| 27504 | /* 72058 */ GIR_RootConstrainSelectedInstOperands, |
| 27505 | /* 72059 */ // GIR_Coverage, 1227, |
| 27506 | /* 72059 */ GIR_Done, |
| 27507 | /* 72060 */ // Label 1715: @72060 |
| 27508 | /* 72060 */ GIM_Reject, |
| 27509 | /* 72061 */ // Label 1713: @72061 |
| 27510 | /* 72061 */ GIM_Reject, |
| 27511 | /* 72062 */ // Label 1709: @72062 |
| 27512 | /* 72062 */ GIM_Try, /*On fail goto*//*Label 1716*/ GIMT_Encode4(72171), |
| 27513 | /* 72067 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27514 | /* 72070 */ GIM_Try, /*On fail goto*//*Label 1717*/ GIMT_Encode4(72097), // Rule ID 127 // |
| 27515 | /* 72075 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_UseAbs), |
| 27516 | /* 72078 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27517 | /* 72082 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27518 | /* 72086 */ // (fabs:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) => (FABS_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) |
| 27519 | /* 72086 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_D32), |
| 27520 | /* 72091 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27521 | /* 72095 */ GIR_RootConstrainSelectedInstOperands, |
| 27522 | /* 72096 */ // GIR_Coverage, 127, |
| 27523 | /* 72096 */ GIR_Done, |
| 27524 | /* 72097 */ // Label 1717: @72097 |
| 27525 | /* 72097 */ GIM_Try, /*On fail goto*//*Label 1718*/ GIMT_Encode4(72124), // Rule ID 128 // |
| 27526 | /* 72102 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_UseAbs), |
| 27527 | /* 72105 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27528 | /* 72109 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27529 | /* 72113 */ // (fabs:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) => (FABS_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 27530 | /* 72113 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_D64), |
| 27531 | /* 72118 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 27532 | /* 72122 */ GIR_RootConstrainSelectedInstOperands, |
| 27533 | /* 72123 */ // GIR_Coverage, 128, |
| 27534 | /* 72123 */ GIR_Done, |
| 27535 | /* 72124 */ // Label 1718: @72124 |
| 27536 | /* 72124 */ GIM_Try, /*On fail goto*//*Label 1719*/ GIMT_Encode4(72147), // Rule ID 1225 // |
| 27537 | /* 72129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit), |
| 27538 | /* 72132 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27539 | /* 72136 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 27540 | /* 72140 */ // (fabs:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) => (FABS_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) |
| 27541 | /* 72140 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_D32_MM), |
| 27542 | /* 72145 */ GIR_RootConstrainSelectedInstOperands, |
| 27543 | /* 72146 */ // GIR_Coverage, 1225, |
| 27544 | /* 72146 */ GIR_Done, |
| 27545 | /* 72147 */ // Label 1719: @72147 |
| 27546 | /* 72147 */ GIM_Try, /*On fail goto*//*Label 1720*/ GIMT_Encode4(72170), // Rule ID 1226 // |
| 27547 | /* 72152 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat), |
| 27548 | /* 72155 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27549 | /* 72159 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27550 | /* 72163 */ // (fabs:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) => (FABS_D64_MM:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 27551 | /* 72163 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_D64_MM), |
| 27552 | /* 72168 */ GIR_RootConstrainSelectedInstOperands, |
| 27553 | /* 72169 */ // GIR_Coverage, 1226, |
| 27554 | /* 72169 */ GIR_Done, |
| 27555 | /* 72170 */ // Label 1720: @72170 |
| 27556 | /* 72170 */ GIM_Reject, |
| 27557 | /* 72171 */ // Label 1716: @72171 |
| 27558 | /* 72171 */ GIM_Reject, |
| 27559 | /* 72172 */ // Label 1710: @72172 |
| 27560 | /* 72172 */ GIM_Try, /*On fail goto*//*Label 1721*/ GIMT_Encode4(72198), // Rule ID 1118 // |
| 27561 | /* 72177 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27562 | /* 72180 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27563 | /* 72183 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27564 | /* 72187 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27565 | /* 72191 */ // (fabs:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) => (FABS_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 27566 | /* 72191 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_D), |
| 27567 | /* 72196 */ GIR_RootConstrainSelectedInstOperands, |
| 27568 | /* 72197 */ // GIR_Coverage, 1118, |
| 27569 | /* 72197 */ GIR_Done, |
| 27570 | /* 72198 */ // Label 1721: @72198 |
| 27571 | /* 72198 */ GIM_Reject, |
| 27572 | /* 72199 */ // Label 1711: @72199 |
| 27573 | /* 72199 */ GIM_Try, /*On fail goto*//*Label 1722*/ GIMT_Encode4(72225), // Rule ID 1117 // |
| 27574 | /* 72204 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27575 | /* 72207 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27576 | /* 72210 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27577 | /* 72214 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27578 | /* 72218 */ // (fabs:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) => (FABS_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 27579 | /* 72218 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FABS_W), |
| 27580 | /* 72223 */ GIR_RootConstrainSelectedInstOperands, |
| 27581 | /* 72224 */ // GIR_Coverage, 1117, |
| 27582 | /* 72224 */ GIR_Done, |
| 27583 | /* 72225 */ // Label 1722: @72225 |
| 27584 | /* 72225 */ GIM_Reject, |
| 27585 | /* 72226 */ // Label 1712: @72226 |
| 27586 | /* 72226 */ GIM_Reject, |
| 27587 | /* 72227 */ // Label 61: @72227 |
| 27588 | /* 72227 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1725*/ GIMT_Encode4(72300), |
| 27589 | /* 72238 */ /*GILLT_s32*//*Label 1723*/ GIMT_Encode4(72246), |
| 27590 | /* 72242 */ /*GILLT_s64*//*Label 1724*/ GIMT_Encode4(72273), |
| 27591 | /* 72246 */ // Label 1723: @72246 |
| 27592 | /* 72246 */ GIM_Try, /*On fail goto*//*Label 1726*/ GIMT_Encode4(72272), // Rule ID 1889 // |
| 27593 | /* 72251 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27594 | /* 72254 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27595 | /* 72257 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27596 | /* 72261 */ // (fcanonicalize:{ *:[f32] } f32:{ *:[f32] }:$src) => (MIN_S:{ *:[f32] } f32:{ *:[f32] }:$src, f32:{ *:[f32] }:$src) |
| 27597 | /* 72261 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MIN_S), |
| 27598 | /* 72264 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 27599 | /* 72266 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 27600 | /* 72268 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 27601 | /* 72270 */ GIR_RootConstrainSelectedInstOperands, |
| 27602 | /* 72271 */ // GIR_Coverage, 1889, |
| 27603 | /* 72271 */ GIR_EraseRootFromParent_Done, |
| 27604 | /* 72272 */ // Label 1726: @72272 |
| 27605 | /* 72272 */ GIM_Reject, |
| 27606 | /* 72273 */ // Label 1724: @72273 |
| 27607 | /* 72273 */ GIM_Try, /*On fail goto*//*Label 1727*/ GIMT_Encode4(72299), // Rule ID 1890 // |
| 27608 | /* 72278 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27609 | /* 72281 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27610 | /* 72284 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27611 | /* 72288 */ // (fcanonicalize:{ *:[f64] } f64:{ *:[f64] }:$src) => (MIN_D:{ *:[f64] } f64:{ *:[f64] }:$src, f64:{ *:[f64] }:$src) |
| 27612 | /* 72288 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MIN_D), |
| 27613 | /* 72291 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 27614 | /* 72293 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 27615 | /* 72295 */ GIR_RootToRootCopy, /*OpIdx*/1, // src |
| 27616 | /* 72297 */ GIR_RootConstrainSelectedInstOperands, |
| 27617 | /* 72298 */ // GIR_Coverage, 1890, |
| 27618 | /* 72298 */ GIR_EraseRootFromParent_Done, |
| 27619 | /* 72299 */ // Label 1727: @72299 |
| 27620 | /* 72299 */ GIM_Reject, |
| 27621 | /* 72300 */ // Label 1725: @72300 |
| 27622 | /* 72300 */ GIM_Reject, |
| 27623 | /* 72301 */ // Label 62: @72301 |
| 27624 | /* 72301 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1730*/ GIMT_Encode4(72372), |
| 27625 | /* 72312 */ /*GILLT_s32*//*Label 1728*/ GIMT_Encode4(72320), |
| 27626 | /* 72316 */ /*GILLT_s64*//*Label 1729*/ GIMT_Encode4(72346), |
| 27627 | /* 72320 */ // Label 1728: @72320 |
| 27628 | /* 72320 */ GIM_Try, /*On fail goto*//*Label 1731*/ GIMT_Encode4(72345), // Rule ID 1886 // |
| 27629 | /* 72325 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27630 | /* 72328 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27631 | /* 72331 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 27632 | /* 72334 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27633 | /* 72338 */ // (fminnum:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) => (MIN_S:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 27634 | /* 72338 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_S), |
| 27635 | /* 72343 */ GIR_RootConstrainSelectedInstOperands, |
| 27636 | /* 72344 */ // GIR_Coverage, 1886, |
| 27637 | /* 72344 */ GIR_Done, |
| 27638 | /* 72345 */ // Label 1731: @72345 |
| 27639 | /* 72345 */ GIM_Reject, |
| 27640 | /* 72346 */ // Label 1729: @72346 |
| 27641 | /* 72346 */ GIM_Try, /*On fail goto*//*Label 1732*/ GIMT_Encode4(72371), // Rule ID 1888 // |
| 27642 | /* 72351 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27643 | /* 72354 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27644 | /* 72357 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 27645 | /* 72360 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27646 | /* 72364 */ // (fminnum:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) => (MIN_D:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 27647 | /* 72364 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_D), |
| 27648 | /* 72369 */ GIR_RootConstrainSelectedInstOperands, |
| 27649 | /* 72370 */ // GIR_Coverage, 1888, |
| 27650 | /* 72370 */ GIR_Done, |
| 27651 | /* 72371 */ // Label 1732: @72371 |
| 27652 | /* 72371 */ GIM_Reject, |
| 27653 | /* 72372 */ // Label 1730: @72372 |
| 27654 | /* 72372 */ GIM_Reject, |
| 27655 | /* 72373 */ // Label 63: @72373 |
| 27656 | /* 72373 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1735*/ GIMT_Encode4(72444), |
| 27657 | /* 72384 */ /*GILLT_s32*//*Label 1733*/ GIMT_Encode4(72392), |
| 27658 | /* 72388 */ /*GILLT_s64*//*Label 1734*/ GIMT_Encode4(72418), |
| 27659 | /* 72392 */ // Label 1733: @72392 |
| 27660 | /* 72392 */ GIM_Try, /*On fail goto*//*Label 1736*/ GIMT_Encode4(72417), // Rule ID 1882 // |
| 27661 | /* 72397 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27662 | /* 72400 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27663 | /* 72403 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 27664 | /* 72406 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27665 | /* 72410 */ // (fmaxnum:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) => (MAX_S:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 27666 | /* 72410 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_S), |
| 27667 | /* 72415 */ GIR_RootConstrainSelectedInstOperands, |
| 27668 | /* 72416 */ // GIR_Coverage, 1882, |
| 27669 | /* 72416 */ GIR_Done, |
| 27670 | /* 72417 */ // Label 1736: @72417 |
| 27671 | /* 72417 */ GIM_Reject, |
| 27672 | /* 72418 */ // Label 1734: @72418 |
| 27673 | /* 72418 */ GIM_Try, /*On fail goto*//*Label 1737*/ GIMT_Encode4(72443), // Rule ID 1884 // |
| 27674 | /* 72423 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27675 | /* 72426 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27676 | /* 72429 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 27677 | /* 72432 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27678 | /* 72436 */ // (fmaxnum:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) => (MAX_D:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 27679 | /* 72436 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_D), |
| 27680 | /* 72441 */ GIR_RootConstrainSelectedInstOperands, |
| 27681 | /* 72442 */ // GIR_Coverage, 1884, |
| 27682 | /* 72442 */ GIR_Done, |
| 27683 | /* 72443 */ // Label 1737: @72443 |
| 27684 | /* 72443 */ GIM_Reject, |
| 27685 | /* 72444 */ // Label 1735: @72444 |
| 27686 | /* 72444 */ GIM_Reject, |
| 27687 | /* 72445 */ // Label 64: @72445 |
| 27688 | /* 72445 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1740*/ GIMT_Encode4(72516), |
| 27689 | /* 72456 */ /*GILLT_s32*//*Label 1738*/ GIMT_Encode4(72464), |
| 27690 | /* 72460 */ /*GILLT_s64*//*Label 1739*/ GIMT_Encode4(72490), |
| 27691 | /* 72464 */ // Label 1738: @72464 |
| 27692 | /* 72464 */ GIM_Try, /*On fail goto*//*Label 1741*/ GIMT_Encode4(72489), // Rule ID 1885 // |
| 27693 | /* 72469 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27694 | /* 72472 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27695 | /* 72475 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 27696 | /* 72478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27697 | /* 72482 */ // (fminnum_ieee:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) => (MIN_S:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 27698 | /* 72482 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_S), |
| 27699 | /* 72487 */ GIR_RootConstrainSelectedInstOperands, |
| 27700 | /* 72488 */ // GIR_Coverage, 1885, |
| 27701 | /* 72488 */ GIR_Done, |
| 27702 | /* 72489 */ // Label 1741: @72489 |
| 27703 | /* 72489 */ GIM_Reject, |
| 27704 | /* 72490 */ // Label 1739: @72490 |
| 27705 | /* 72490 */ GIM_Try, /*On fail goto*//*Label 1742*/ GIMT_Encode4(72515), // Rule ID 1887 // |
| 27706 | /* 72495 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27707 | /* 72498 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27708 | /* 72501 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 27709 | /* 72504 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27710 | /* 72508 */ // (fminnum_ieee:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) => (MIN_D:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 27711 | /* 72508 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_D), |
| 27712 | /* 72513 */ GIR_RootConstrainSelectedInstOperands, |
| 27713 | /* 72514 */ // GIR_Coverage, 1887, |
| 27714 | /* 72514 */ GIR_Done, |
| 27715 | /* 72515 */ // Label 1742: @72515 |
| 27716 | /* 72515 */ GIM_Reject, |
| 27717 | /* 72516 */ // Label 1740: @72516 |
| 27718 | /* 72516 */ GIM_Reject, |
| 27719 | /* 72517 */ // Label 65: @72517 |
| 27720 | /* 72517 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1745*/ GIMT_Encode4(72588), |
| 27721 | /* 72528 */ /*GILLT_s32*//*Label 1743*/ GIMT_Encode4(72536), |
| 27722 | /* 72532 */ /*GILLT_s64*//*Label 1744*/ GIMT_Encode4(72562), |
| 27723 | /* 72536 */ // Label 1743: @72536 |
| 27724 | /* 72536 */ GIM_Try, /*On fail goto*//*Label 1746*/ GIMT_Encode4(72561), // Rule ID 1881 // |
| 27725 | /* 72541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27726 | /* 72544 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 27727 | /* 72547 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 27728 | /* 72550 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 27729 | /* 72554 */ // (fmaxnum_ieee:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) => (MAX_S:{ *:[f32] } f32:{ *:[f32] }:$lhs, f32:{ *:[f32] }:$rhs) |
| 27730 | /* 72554 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_S), |
| 27731 | /* 72559 */ GIR_RootConstrainSelectedInstOperands, |
| 27732 | /* 72560 */ // GIR_Coverage, 1881, |
| 27733 | /* 72560 */ GIR_Done, |
| 27734 | /* 72561 */ // Label 1746: @72561 |
| 27735 | /* 72561 */ GIM_Reject, |
| 27736 | /* 72562 */ // Label 1744: @72562 |
| 27737 | /* 72562 */ GIM_Try, /*On fail goto*//*Label 1747*/ GIMT_Encode4(72587), // Rule ID 1883 // |
| 27738 | /* 72567 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc_NotInMicroMips), |
| 27739 | /* 72570 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 27740 | /* 72573 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 27741 | /* 72576 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 27742 | /* 72580 */ // (fmaxnum_ieee:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) => (MAX_D:{ *:[f64] } f64:{ *:[f64] }:$lhs, f64:{ *:[f64] }:$rhs) |
| 27743 | /* 72580 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_D), |
| 27744 | /* 72585 */ GIR_RootConstrainSelectedInstOperands, |
| 27745 | /* 72586 */ // GIR_Coverage, 1883, |
| 27746 | /* 72586 */ GIR_Done, |
| 27747 | /* 72587 */ // Label 1747: @72587 |
| 27748 | /* 72587 */ GIM_Reject, |
| 27749 | /* 72588 */ // Label 1745: @72588 |
| 27750 | /* 72588 */ GIM_Reject, |
| 27751 | /* 72589 */ // Label 66: @72589 |
| 27752 | /* 72589 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(9), /*)*//*default:*//*Label 1752*/ GIMT_Encode4(72756), |
| 27753 | /* 72600 */ /*GILLT_v2s64*//*Label 1748*/ GIMT_Encode4(72620), GIMT_Encode4(0), |
| 27754 | /* 72608 */ /*GILLT_v4s32*//*Label 1749*/ GIMT_Encode4(72654), |
| 27755 | /* 72612 */ /*GILLT_v8s16*//*Label 1750*/ GIMT_Encode4(72688), |
| 27756 | /* 72616 */ /*GILLT_v16s8*//*Label 1751*/ GIMT_Encode4(72722), |
| 27757 | /* 72620 */ // Label 1748: @72620 |
| 27758 | /* 72620 */ GIM_Try, /*On fail goto*//*Label 1753*/ GIMT_Encode4(72653), // Rule ID 946 // |
| 27759 | /* 72625 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27760 | /* 72628 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27761 | /* 72631 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 27762 | /* 72634 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27763 | /* 72638 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27764 | /* 72642 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27765 | /* 72646 */ // (smin:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MIN_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 27766 | /* 72646 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_S_D), |
| 27767 | /* 72651 */ GIR_RootConstrainSelectedInstOperands, |
| 27768 | /* 72652 */ // GIR_Coverage, 946, |
| 27769 | /* 72652 */ GIR_Done, |
| 27770 | /* 72653 */ // Label 1753: @72653 |
| 27771 | /* 72653 */ GIM_Reject, |
| 27772 | /* 72654 */ // Label 1749: @72654 |
| 27773 | /* 72654 */ GIM_Try, /*On fail goto*//*Label 1754*/ GIMT_Encode4(72687), // Rule ID 945 // |
| 27774 | /* 72659 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27775 | /* 72662 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27776 | /* 72665 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 27777 | /* 72668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27778 | /* 72672 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27779 | /* 72676 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27780 | /* 72680 */ // (smin:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MIN_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 27781 | /* 72680 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_S_W), |
| 27782 | /* 72685 */ GIR_RootConstrainSelectedInstOperands, |
| 27783 | /* 72686 */ // GIR_Coverage, 945, |
| 27784 | /* 72686 */ GIR_Done, |
| 27785 | /* 72687 */ // Label 1754: @72687 |
| 27786 | /* 72687 */ GIM_Reject, |
| 27787 | /* 72688 */ // Label 1750: @72688 |
| 27788 | /* 72688 */ GIM_Try, /*On fail goto*//*Label 1755*/ GIMT_Encode4(72721), // Rule ID 944 // |
| 27789 | /* 72693 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27790 | /* 72696 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 27791 | /* 72699 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 27792 | /* 72702 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27793 | /* 72706 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27794 | /* 72710 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27795 | /* 72714 */ // (smin:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MIN_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 27796 | /* 72714 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_S_H), |
| 27797 | /* 72719 */ GIR_RootConstrainSelectedInstOperands, |
| 27798 | /* 72720 */ // GIR_Coverage, 944, |
| 27799 | /* 72720 */ GIR_Done, |
| 27800 | /* 72721 */ // Label 1755: @72721 |
| 27801 | /* 72721 */ GIM_Reject, |
| 27802 | /* 72722 */ // Label 1751: @72722 |
| 27803 | /* 72722 */ GIM_Try, /*On fail goto*//*Label 1756*/ GIMT_Encode4(72755), // Rule ID 943 // |
| 27804 | /* 72727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27805 | /* 72730 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 27806 | /* 72733 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 27807 | /* 72736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27808 | /* 72740 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27809 | /* 72744 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27810 | /* 72748 */ // (smin:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MIN_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 27811 | /* 72748 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_S_B), |
| 27812 | /* 72753 */ GIR_RootConstrainSelectedInstOperands, |
| 27813 | /* 72754 */ // GIR_Coverage, 943, |
| 27814 | /* 72754 */ GIR_Done, |
| 27815 | /* 72755 */ // Label 1756: @72755 |
| 27816 | /* 72755 */ GIM_Reject, |
| 27817 | /* 72756 */ // Label 1752: @72756 |
| 27818 | /* 72756 */ GIM_Reject, |
| 27819 | /* 72757 */ // Label 67: @72757 |
| 27820 | /* 72757 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(9), /*)*//*default:*//*Label 1761*/ GIMT_Encode4(72924), |
| 27821 | /* 72768 */ /*GILLT_v2s64*//*Label 1757*/ GIMT_Encode4(72788), GIMT_Encode4(0), |
| 27822 | /* 72776 */ /*GILLT_v4s32*//*Label 1758*/ GIMT_Encode4(72822), |
| 27823 | /* 72780 */ /*GILLT_v8s16*//*Label 1759*/ GIMT_Encode4(72856), |
| 27824 | /* 72784 */ /*GILLT_v16s8*//*Label 1760*/ GIMT_Encode4(72890), |
| 27825 | /* 72788 */ // Label 1757: @72788 |
| 27826 | /* 72788 */ GIM_Try, /*On fail goto*//*Label 1762*/ GIMT_Encode4(72821), // Rule ID 926 // |
| 27827 | /* 72793 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27828 | /* 72796 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27829 | /* 72799 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 27830 | /* 72802 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27831 | /* 72806 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27832 | /* 72810 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27833 | /* 72814 */ // (smax:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MAX_S_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 27834 | /* 72814 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_S_D), |
| 27835 | /* 72819 */ GIR_RootConstrainSelectedInstOperands, |
| 27836 | /* 72820 */ // GIR_Coverage, 926, |
| 27837 | /* 72820 */ GIR_Done, |
| 27838 | /* 72821 */ // Label 1762: @72821 |
| 27839 | /* 72821 */ GIM_Reject, |
| 27840 | /* 72822 */ // Label 1758: @72822 |
| 27841 | /* 72822 */ GIM_Try, /*On fail goto*//*Label 1763*/ GIMT_Encode4(72855), // Rule ID 925 // |
| 27842 | /* 72827 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27843 | /* 72830 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27844 | /* 72833 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 27845 | /* 72836 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27846 | /* 72840 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27847 | /* 72844 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27848 | /* 72848 */ // (smax:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MAX_S_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 27849 | /* 72848 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_S_W), |
| 27850 | /* 72853 */ GIR_RootConstrainSelectedInstOperands, |
| 27851 | /* 72854 */ // GIR_Coverage, 925, |
| 27852 | /* 72854 */ GIR_Done, |
| 27853 | /* 72855 */ // Label 1763: @72855 |
| 27854 | /* 72855 */ GIM_Reject, |
| 27855 | /* 72856 */ // Label 1759: @72856 |
| 27856 | /* 72856 */ GIM_Try, /*On fail goto*//*Label 1764*/ GIMT_Encode4(72889), // Rule ID 924 // |
| 27857 | /* 72861 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27858 | /* 72864 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 27859 | /* 72867 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 27860 | /* 72870 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27861 | /* 72874 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27862 | /* 72878 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27863 | /* 72882 */ // (smax:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MAX_S_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 27864 | /* 72882 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_S_H), |
| 27865 | /* 72887 */ GIR_RootConstrainSelectedInstOperands, |
| 27866 | /* 72888 */ // GIR_Coverage, 924, |
| 27867 | /* 72888 */ GIR_Done, |
| 27868 | /* 72889 */ // Label 1764: @72889 |
| 27869 | /* 72889 */ GIM_Reject, |
| 27870 | /* 72890 */ // Label 1760: @72890 |
| 27871 | /* 72890 */ GIM_Try, /*On fail goto*//*Label 1765*/ GIMT_Encode4(72923), // Rule ID 923 // |
| 27872 | /* 72895 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27873 | /* 72898 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 27874 | /* 72901 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 27875 | /* 72904 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27876 | /* 72908 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27877 | /* 72912 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27878 | /* 72916 */ // (smax:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MAX_S_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 27879 | /* 72916 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_S_B), |
| 27880 | /* 72921 */ GIR_RootConstrainSelectedInstOperands, |
| 27881 | /* 72922 */ // GIR_Coverage, 923, |
| 27882 | /* 72922 */ GIR_Done, |
| 27883 | /* 72923 */ // Label 1765: @72923 |
| 27884 | /* 72923 */ GIM_Reject, |
| 27885 | /* 72924 */ // Label 1761: @72924 |
| 27886 | /* 72924 */ GIM_Reject, |
| 27887 | /* 72925 */ // Label 68: @72925 |
| 27888 | /* 72925 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(9), /*)*//*default:*//*Label 1770*/ GIMT_Encode4(73092), |
| 27889 | /* 72936 */ /*GILLT_v2s64*//*Label 1766*/ GIMT_Encode4(72956), GIMT_Encode4(0), |
| 27890 | /* 72944 */ /*GILLT_v4s32*//*Label 1767*/ GIMT_Encode4(72990), |
| 27891 | /* 72948 */ /*GILLT_v8s16*//*Label 1768*/ GIMT_Encode4(73024), |
| 27892 | /* 72952 */ /*GILLT_v16s8*//*Label 1769*/ GIMT_Encode4(73058), |
| 27893 | /* 72956 */ // Label 1766: @72956 |
| 27894 | /* 72956 */ GIM_Try, /*On fail goto*//*Label 1771*/ GIMT_Encode4(72989), // Rule ID 950 // |
| 27895 | /* 72961 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27896 | /* 72964 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27897 | /* 72967 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 27898 | /* 72970 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27899 | /* 72974 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27900 | /* 72978 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27901 | /* 72982 */ // (umin:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MIN_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 27902 | /* 72982 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_U_D), |
| 27903 | /* 72987 */ GIR_RootConstrainSelectedInstOperands, |
| 27904 | /* 72988 */ // GIR_Coverage, 950, |
| 27905 | /* 72988 */ GIR_Done, |
| 27906 | /* 72989 */ // Label 1771: @72989 |
| 27907 | /* 72989 */ GIM_Reject, |
| 27908 | /* 72990 */ // Label 1767: @72990 |
| 27909 | /* 72990 */ GIM_Try, /*On fail goto*//*Label 1772*/ GIMT_Encode4(73023), // Rule ID 949 // |
| 27910 | /* 72995 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27911 | /* 72998 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27912 | /* 73001 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 27913 | /* 73004 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27914 | /* 73008 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27915 | /* 73012 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27916 | /* 73016 */ // (umin:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MIN_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 27917 | /* 73016 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_U_W), |
| 27918 | /* 73021 */ GIR_RootConstrainSelectedInstOperands, |
| 27919 | /* 73022 */ // GIR_Coverage, 949, |
| 27920 | /* 73022 */ GIR_Done, |
| 27921 | /* 73023 */ // Label 1772: @73023 |
| 27922 | /* 73023 */ GIM_Reject, |
| 27923 | /* 73024 */ // Label 1768: @73024 |
| 27924 | /* 73024 */ GIM_Try, /*On fail goto*//*Label 1773*/ GIMT_Encode4(73057), // Rule ID 948 // |
| 27925 | /* 73029 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27926 | /* 73032 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 27927 | /* 73035 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 27928 | /* 73038 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27929 | /* 73042 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27930 | /* 73046 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27931 | /* 73050 */ // (umin:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MIN_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 27932 | /* 73050 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_U_H), |
| 27933 | /* 73055 */ GIR_RootConstrainSelectedInstOperands, |
| 27934 | /* 73056 */ // GIR_Coverage, 948, |
| 27935 | /* 73056 */ GIR_Done, |
| 27936 | /* 73057 */ // Label 1773: @73057 |
| 27937 | /* 73057 */ GIM_Reject, |
| 27938 | /* 73058 */ // Label 1769: @73058 |
| 27939 | /* 73058 */ GIM_Try, /*On fail goto*//*Label 1774*/ GIMT_Encode4(73091), // Rule ID 947 // |
| 27940 | /* 73063 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27941 | /* 73066 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 27942 | /* 73069 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 27943 | /* 73072 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27944 | /* 73076 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27945 | /* 73080 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 27946 | /* 73084 */ // (umin:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MIN_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 27947 | /* 73084 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MIN_U_B), |
| 27948 | /* 73089 */ GIR_RootConstrainSelectedInstOperands, |
| 27949 | /* 73090 */ // GIR_Coverage, 947, |
| 27950 | /* 73090 */ GIR_Done, |
| 27951 | /* 73091 */ // Label 1774: @73091 |
| 27952 | /* 73091 */ GIM_Reject, |
| 27953 | /* 73092 */ // Label 1770: @73092 |
| 27954 | /* 73092 */ GIM_Reject, |
| 27955 | /* 73093 */ // Label 69: @73093 |
| 27956 | /* 73093 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(9), /*)*//*default:*//*Label 1779*/ GIMT_Encode4(73260), |
| 27957 | /* 73104 */ /*GILLT_v2s64*//*Label 1775*/ GIMT_Encode4(73124), GIMT_Encode4(0), |
| 27958 | /* 73112 */ /*GILLT_v4s32*//*Label 1776*/ GIMT_Encode4(73158), |
| 27959 | /* 73116 */ /*GILLT_v8s16*//*Label 1777*/ GIMT_Encode4(73192), |
| 27960 | /* 73120 */ /*GILLT_v16s8*//*Label 1778*/ GIMT_Encode4(73226), |
| 27961 | /* 73124 */ // Label 1775: @73124 |
| 27962 | /* 73124 */ GIM_Try, /*On fail goto*//*Label 1780*/ GIMT_Encode4(73157), // Rule ID 930 // |
| 27963 | /* 73129 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27964 | /* 73132 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 27965 | /* 73135 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v2s64, |
| 27966 | /* 73138 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27967 | /* 73142 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27968 | /* 73146 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 27969 | /* 73150 */ // (umax:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) => (MAX_U_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws, MSA128DOpnd:{ *:[v2i64] }:$wt) |
| 27970 | /* 73150 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_U_D), |
| 27971 | /* 73155 */ GIR_RootConstrainSelectedInstOperands, |
| 27972 | /* 73156 */ // GIR_Coverage, 930, |
| 27973 | /* 73156 */ GIR_Done, |
| 27974 | /* 73157 */ // Label 1780: @73157 |
| 27975 | /* 73157 */ GIM_Reject, |
| 27976 | /* 73158 */ // Label 1776: @73158 |
| 27977 | /* 73158 */ GIM_Try, /*On fail goto*//*Label 1781*/ GIMT_Encode4(73191), // Rule ID 929 // |
| 27978 | /* 73163 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27979 | /* 73166 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 27980 | /* 73169 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v4s32, |
| 27981 | /* 73172 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27982 | /* 73176 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27983 | /* 73180 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 27984 | /* 73184 */ // (umax:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) => (MAX_U_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws, MSA128WOpnd:{ *:[v4i32] }:$wt) |
| 27985 | /* 73184 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_U_W), |
| 27986 | /* 73189 */ GIR_RootConstrainSelectedInstOperands, |
| 27987 | /* 73190 */ // GIR_Coverage, 929, |
| 27988 | /* 73190 */ GIR_Done, |
| 27989 | /* 73191 */ // Label 1781: @73191 |
| 27990 | /* 73191 */ GIM_Reject, |
| 27991 | /* 73192 */ // Label 1777: @73192 |
| 27992 | /* 73192 */ GIM_Try, /*On fail goto*//*Label 1782*/ GIMT_Encode4(73225), // Rule ID 928 // |
| 27993 | /* 73197 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 27994 | /* 73200 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 27995 | /* 73203 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v8s16, |
| 27996 | /* 73206 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27997 | /* 73210 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27998 | /* 73214 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 27999 | /* 73218 */ // (umax:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) => (MAX_U_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws, MSA128HOpnd:{ *:[v8i16] }:$wt) |
| 28000 | /* 73218 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_U_H), |
| 28001 | /* 73223 */ GIR_RootConstrainSelectedInstOperands, |
| 28002 | /* 73224 */ // GIR_Coverage, 928, |
| 28003 | /* 73224 */ GIR_Done, |
| 28004 | /* 73225 */ // Label 1782: @73225 |
| 28005 | /* 73225 */ GIM_Reject, |
| 28006 | /* 73226 */ // Label 1778: @73226 |
| 28007 | /* 73226 */ GIM_Try, /*On fail goto*//*Label 1783*/ GIMT_Encode4(73259), // Rule ID 927 // |
| 28008 | /* 73231 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28009 | /* 73234 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 28010 | /* 73237 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_v16s8, |
| 28011 | /* 73240 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28012 | /* 73244 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28013 | /* 73248 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28014 | /* 73252 */ // (umax:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) => (MAX_U_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws, MSA128BOpnd:{ *:[v16i8] }:$wt) |
| 28015 | /* 73252 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::MAX_U_B), |
| 28016 | /* 73257 */ GIR_RootConstrainSelectedInstOperands, |
| 28017 | /* 73258 */ // GIR_Coverage, 927, |
| 28018 | /* 73258 */ GIR_Done, |
| 28019 | /* 73259 */ // Label 1783: @73259 |
| 28020 | /* 73259 */ GIM_Reject, |
| 28021 | /* 73260 */ // Label 1779: @73260 |
| 28022 | /* 73260 */ GIM_Reject, |
| 28023 | /* 73261 */ // Label 70: @73261 |
| 28024 | /* 73261 */ GIM_Try, /*On fail goto*//*Label 1784*/ GIMT_Encode4(73384), |
| 28025 | /* 73266 */ GIM_CheckIsMBB, /*MI*/0, /*Op*/0, |
| 28026 | /* 73269 */ GIM_Try, /*On fail goto*//*Label 1785*/ GIMT_Encode4(73290), // Rule ID 91 // |
| 28027 | /* 73274 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips_RelocNotPIC), |
| 28028 | /* 73277 */ // (br (bb:{ *:[Other] }):$target) => (J (bb:{ *:[Other] }):$target) |
| 28029 | /* 73277 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::J), |
| 28030 | /* 73282 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::AT), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 28031 | /* 73288 */ GIR_RootConstrainSelectedInstOperands, |
| 28032 | /* 73289 */ // GIR_Coverage, 91, |
| 28033 | /* 73289 */ GIR_Done, |
| 28034 | /* 73290 */ // Label 1785: @73290 |
| 28035 | /* 73290 */ GIM_Try, /*On fail goto*//*Label 1786*/ GIMT_Encode4(73311), // Rule ID 98 // |
| 28036 | /* 73295 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 28037 | /* 73298 */ // (br (bb:{ *:[Other] }):$offset) => (B (bb:{ *:[Other] }):$offset) |
| 28038 | /* 73298 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::B), |
| 28039 | /* 73303 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::AT), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 28040 | /* 73309 */ GIR_RootConstrainSelectedInstOperands, |
| 28041 | /* 73310 */ // GIR_Coverage, 98, |
| 28042 | /* 73310 */ GIR_Done, |
| 28043 | /* 73311 */ // Label 1786: @73311 |
| 28044 | /* 73311 */ GIM_Try, /*On fail goto*//*Label 1787*/ GIMT_Encode4(73332), // Rule ID 1179 // |
| 28045 | /* 73316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6_RelocNotPIC), |
| 28046 | /* 73319 */ // (br (bb:{ *:[Other] }):$target) => (J_MM (bb:{ *:[Other] }):$target) |
| 28047 | /* 73319 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::J_MM), |
| 28048 | /* 73324 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::AT), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 28049 | /* 73330 */ GIR_RootConstrainSelectedInstOperands, |
| 28050 | /* 73331 */ // GIR_Coverage, 1179, |
| 28051 | /* 73331 */ GIR_Done, |
| 28052 | /* 73332 */ // Label 1787: @73332 |
| 28053 | /* 73332 */ GIM_Try, /*On fail goto*//*Label 1788*/ GIMT_Encode4(73353), // Rule ID 1188 // |
| 28054 | /* 73337 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_NotMips32r6_RelocPIC), |
| 28055 | /* 73340 */ // (br (bb:{ *:[Other] }):$offset) => (B_MM (bb:{ *:[Other] }):$offset) |
| 28056 | /* 73340 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::B_MM), |
| 28057 | /* 73345 */ GIR_AddImplicitDef, /*InsnID*/0, GIMT_Encode2(Mips::AT), GIMT_Encode2(static_cast<unsigned>(RegState::Dead)), |
| 28058 | /* 73351 */ GIR_RootConstrainSelectedInstOperands, |
| 28059 | /* 73352 */ // GIR_Coverage, 1188, |
| 28060 | /* 73352 */ GIR_Done, |
| 28061 | /* 73353 */ // Label 1788: @73353 |
| 28062 | /* 73353 */ GIM_Try, /*On fail goto*//*Label 1789*/ GIMT_Encode4(73368), // Rule ID 1246 // |
| 28063 | /* 73358 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_InMicroMips), |
| 28064 | /* 73361 */ // (br (bb:{ *:[Other] }):$offset) => (BC_MMR6 (bb:{ *:[Other] }):$offset) |
| 28065 | /* 73361 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::BC_MMR6), |
| 28066 | /* 73366 */ GIR_RootConstrainSelectedInstOperands, |
| 28067 | /* 73367 */ // GIR_Coverage, 1246, |
| 28068 | /* 73367 */ GIR_Done, |
| 28069 | /* 73368 */ // Label 1789: @73368 |
| 28070 | /* 73368 */ GIM_Try, /*On fail goto*//*Label 1790*/ GIMT_Encode4(73383), // Rule ID 1994 // |
| 28071 | /* 73373 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 28072 | /* 73376 */ // (br (bb:{ *:[Other] }):$imm16) => (Bimm16 (bb:{ *:[Other] }):$imm16) |
| 28073 | /* 73376 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::Bimm16), |
| 28074 | /* 73381 */ GIR_RootConstrainSelectedInstOperands, |
| 28075 | /* 73382 */ // GIR_Coverage, 1994, |
| 28076 | /* 73382 */ GIR_Done, |
| 28077 | /* 73383 */ // Label 1790: @73383 |
| 28078 | /* 73383 */ GIM_Reject, |
| 28079 | /* 73384 */ // Label 1784: @73384 |
| 28080 | /* 73384 */ GIM_Reject, |
| 28081 | /* 73385 */ // Label 71: @73385 |
| 28082 | /* 73385 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(9), /*)*//*default:*//*Label 1795*/ GIMT_Encode4(73948), |
| 28083 | /* 73396 */ /*GILLT_v2s64*//*Label 1791*/ GIMT_Encode4(73416), GIMT_Encode4(0), |
| 28084 | /* 73404 */ /*GILLT_v4s32*//*Label 1792*/ GIMT_Encode4(73589), |
| 28085 | /* 73408 */ /*GILLT_v8s16*//*Label 1793*/ GIMT_Encode4(73762), |
| 28086 | /* 73412 */ /*GILLT_v16s8*//*Label 1794*/ GIMT_Encode4(73855), |
| 28087 | /* 73416 */ // Label 1791: @73416 |
| 28088 | /* 73416 */ GIM_Try, /*On fail goto*//*Label 1796*/ GIMT_Encode4(73588), |
| 28089 | /* 73421 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 28090 | /* 73424 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 28091 | /* 73427 */ GIM_Try, /*On fail goto*//*Label 1797*/ GIMT_Encode4(73467), // Rule ID 896 // |
| 28092 | /* 73432 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28093 | /* 73435 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 28094 | /* 73438 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28095 | /* 73442 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28096 | /* 73446 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28097 | /* 73450 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28098 | /* 73454 */ // (vector_insert:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, GPR64Opnd:{ *:[i64] }:$fs, GPR32Opnd:{ *:[i32] }:$n) => (INSERT_D_VIDX_PSEUDO:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, GPR32Opnd:{ *:[i32] }:$n, GPR64Opnd:{ *:[i64] }:$fs) |
| 28099 | /* 73454 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_D_VIDX_PSEUDO), |
| 28100 | /* 73457 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28101 | /* 73459 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28102 | /* 73461 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28103 | /* 73463 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28104 | /* 73465 */ GIR_RootConstrainSelectedInstOperands, |
| 28105 | /* 73466 */ // GIR_Coverage, 896, |
| 28106 | /* 73466 */ GIR_EraseRootFromParent_Done, |
| 28107 | /* 73467 */ // Label 1797: @73467 |
| 28108 | /* 73467 */ GIM_Try, /*On fail goto*//*Label 1798*/ GIMT_Encode4(73507), // Rule ID 898 // |
| 28109 | /* 73472 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28110 | /* 73475 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 28111 | /* 73478 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28112 | /* 73482 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28113 | /* 73486 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28114 | /* 73490 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28115 | /* 73494 */ // (vector_insert:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd_in, FGR64Opnd:{ *:[f64] }:$fs, GPR32Opnd:{ *:[i32] }:$n) => (INSERT_FD_VIDX_PSEUDO:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd_in, GPR32Opnd:{ *:[i32] }:$n, FGR64Opnd:{ *:[f64] }:$fs) |
| 28116 | /* 73494 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_FD_VIDX_PSEUDO), |
| 28117 | /* 73497 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28118 | /* 73499 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28119 | /* 73501 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28120 | /* 73503 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28121 | /* 73505 */ GIR_RootConstrainSelectedInstOperands, |
| 28122 | /* 73506 */ // GIR_Coverage, 898, |
| 28123 | /* 73506 */ GIR_EraseRootFromParent_Done, |
| 28124 | /* 73507 */ // Label 1798: @73507 |
| 28125 | /* 73507 */ GIM_Try, /*On fail goto*//*Label 1799*/ GIMT_Encode4(73547), // Rule ID 902 // |
| 28126 | /* 73512 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28127 | /* 73515 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 28128 | /* 73518 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28129 | /* 73522 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28130 | /* 73526 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28131 | /* 73530 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28132 | /* 73534 */ // (vector_insert:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, GPR64Opnd:{ *:[i64] }:$fs, GPR64Opnd:{ *:[i64] }:$n) => (INSERT_D_VIDX64_PSEUDO:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$wd_in, GPR64Opnd:{ *:[i64] }:$n, GPR64Opnd:{ *:[i64] }:$fs) |
| 28133 | /* 73534 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_D_VIDX64_PSEUDO), |
| 28134 | /* 73537 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28135 | /* 73539 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28136 | /* 73541 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28137 | /* 73543 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28138 | /* 73545 */ GIR_RootConstrainSelectedInstOperands, |
| 28139 | /* 73546 */ // GIR_Coverage, 902, |
| 28140 | /* 73546 */ GIR_EraseRootFromParent_Done, |
| 28141 | /* 73547 */ // Label 1799: @73547 |
| 28142 | /* 73547 */ GIM_Try, /*On fail goto*//*Label 1800*/ GIMT_Encode4(73587), // Rule ID 904 // |
| 28143 | /* 73552 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28144 | /* 73555 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 28145 | /* 73558 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28146 | /* 73562 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28147 | /* 73566 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28148 | /* 73570 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28149 | /* 73574 */ // (vector_insert:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd_in, FGR64Opnd:{ *:[f64] }:$fs, GPR64Opnd:{ *:[i64] }:$n) => (INSERT_FD_VIDX64_PSEUDO:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$wd_in, GPR64Opnd:{ *:[i64] }:$n, FGR64Opnd:{ *:[f64] }:$fs) |
| 28150 | /* 73574 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_FD_VIDX64_PSEUDO), |
| 28151 | /* 73577 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28152 | /* 73579 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28153 | /* 73581 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28154 | /* 73583 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28155 | /* 73585 */ GIR_RootConstrainSelectedInstOperands, |
| 28156 | /* 73586 */ // GIR_Coverage, 904, |
| 28157 | /* 73586 */ GIR_EraseRootFromParent_Done, |
| 28158 | /* 73587 */ // Label 1800: @73587 |
| 28159 | /* 73587 */ GIM_Reject, |
| 28160 | /* 73588 */ // Label 1796: @73588 |
| 28161 | /* 73588 */ GIM_Reject, |
| 28162 | /* 73589 */ // Label 1792: @73589 |
| 28163 | /* 73589 */ GIM_Try, /*On fail goto*//*Label 1801*/ GIMT_Encode4(73761), |
| 28164 | /* 73594 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 28165 | /* 73597 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 28166 | /* 73600 */ GIM_Try, /*On fail goto*//*Label 1802*/ GIMT_Encode4(73640), // Rule ID 895 // |
| 28167 | /* 73605 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28168 | /* 73608 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 28169 | /* 73611 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28170 | /* 73615 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28171 | /* 73619 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28172 | /* 73623 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28173 | /* 73627 */ // (vector_insert:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, GPR32Opnd:{ *:[i32] }:$fs, GPR32Opnd:{ *:[i32] }:$n) => (INSERT_W_VIDX_PSEUDO:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, GPR32Opnd:{ *:[i32] }:$n, GPR32Opnd:{ *:[i32] }:$fs) |
| 28174 | /* 73627 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_W_VIDX_PSEUDO), |
| 28175 | /* 73630 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28176 | /* 73632 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28177 | /* 73634 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28178 | /* 73636 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28179 | /* 73638 */ GIR_RootConstrainSelectedInstOperands, |
| 28180 | /* 73639 */ // GIR_Coverage, 895, |
| 28181 | /* 73639 */ GIR_EraseRootFromParent_Done, |
| 28182 | /* 73640 */ // Label 1802: @73640 |
| 28183 | /* 73640 */ GIM_Try, /*On fail goto*//*Label 1803*/ GIMT_Encode4(73680), // Rule ID 897 // |
| 28184 | /* 73645 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28185 | /* 73648 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 28186 | /* 73651 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28187 | /* 73655 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28188 | /* 73659 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28189 | /* 73663 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28190 | /* 73667 */ // (vector_insert:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd_in, FGR32Opnd:{ *:[f32] }:$fs, GPR32Opnd:{ *:[i32] }:$n) => (INSERT_FW_VIDX_PSEUDO:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd_in, GPR32Opnd:{ *:[i32] }:$n, FGR32Opnd:{ *:[f32] }:$fs) |
| 28191 | /* 73667 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_FW_VIDX_PSEUDO), |
| 28192 | /* 73670 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28193 | /* 73672 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28194 | /* 73674 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28195 | /* 73676 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28196 | /* 73678 */ GIR_RootConstrainSelectedInstOperands, |
| 28197 | /* 73679 */ // GIR_Coverage, 897, |
| 28198 | /* 73679 */ GIR_EraseRootFromParent_Done, |
| 28199 | /* 73680 */ // Label 1803: @73680 |
| 28200 | /* 73680 */ GIM_Try, /*On fail goto*//*Label 1804*/ GIMT_Encode4(73720), // Rule ID 901 // |
| 28201 | /* 73685 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28202 | /* 73688 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 28203 | /* 73691 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28204 | /* 73695 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28205 | /* 73699 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28206 | /* 73703 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28207 | /* 73707 */ // (vector_insert:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, GPR32Opnd:{ *:[i32] }:$fs, GPR64Opnd:{ *:[i64] }:$n) => (INSERT_W_VIDX64_PSEUDO:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$wd_in, GPR64Opnd:{ *:[i64] }:$n, GPR32Opnd:{ *:[i32] }:$fs) |
| 28208 | /* 73707 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_W_VIDX64_PSEUDO), |
| 28209 | /* 73710 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28210 | /* 73712 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28211 | /* 73714 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28212 | /* 73716 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28213 | /* 73718 */ GIR_RootConstrainSelectedInstOperands, |
| 28214 | /* 73719 */ // GIR_Coverage, 901, |
| 28215 | /* 73719 */ GIR_EraseRootFromParent_Done, |
| 28216 | /* 73720 */ // Label 1804: @73720 |
| 28217 | /* 73720 */ GIM_Try, /*On fail goto*//*Label 1805*/ GIMT_Encode4(73760), // Rule ID 903 // |
| 28218 | /* 73725 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28219 | /* 73728 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 28220 | /* 73731 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28221 | /* 73735 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28222 | /* 73739 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28223 | /* 73743 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28224 | /* 73747 */ // (vector_insert:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd_in, FGR32Opnd:{ *:[f32] }:$fs, GPR64Opnd:{ *:[i64] }:$n) => (INSERT_FW_VIDX64_PSEUDO:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$wd_in, GPR64Opnd:{ *:[i64] }:$n, FGR32Opnd:{ *:[f32] }:$fs) |
| 28225 | /* 73747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_FW_VIDX64_PSEUDO), |
| 28226 | /* 73750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28227 | /* 73752 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28228 | /* 73754 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28229 | /* 73756 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28230 | /* 73758 */ GIR_RootConstrainSelectedInstOperands, |
| 28231 | /* 73759 */ // GIR_Coverage, 903, |
| 28232 | /* 73759 */ GIR_EraseRootFromParent_Done, |
| 28233 | /* 73760 */ // Label 1805: @73760 |
| 28234 | /* 73760 */ GIM_Reject, |
| 28235 | /* 73761 */ // Label 1801: @73761 |
| 28236 | /* 73761 */ GIM_Reject, |
| 28237 | /* 73762 */ // Label 1793: @73762 |
| 28238 | /* 73762 */ GIM_Try, /*On fail goto*//*Label 1806*/ GIMT_Encode4(73854), |
| 28239 | /* 73767 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 28240 | /* 73770 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 28241 | /* 73773 */ GIM_Try, /*On fail goto*//*Label 1807*/ GIMT_Encode4(73813), // Rule ID 894 // |
| 28242 | /* 73778 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28243 | /* 73781 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 28244 | /* 73784 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28245 | /* 73788 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28246 | /* 73792 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28247 | /* 73796 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28248 | /* 73800 */ // (vector_insert:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, GPR32Opnd:{ *:[i32] }:$fs, GPR32Opnd:{ *:[i32] }:$n) => (INSERT_H_VIDX_PSEUDO:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, GPR32Opnd:{ *:[i32] }:$n, GPR32Opnd:{ *:[i32] }:$fs) |
| 28249 | /* 73800 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_H_VIDX_PSEUDO), |
| 28250 | /* 73803 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28251 | /* 73805 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28252 | /* 73807 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28253 | /* 73809 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28254 | /* 73811 */ GIR_RootConstrainSelectedInstOperands, |
| 28255 | /* 73812 */ // GIR_Coverage, 894, |
| 28256 | /* 73812 */ GIR_EraseRootFromParent_Done, |
| 28257 | /* 73813 */ // Label 1807: @73813 |
| 28258 | /* 73813 */ GIM_Try, /*On fail goto*//*Label 1808*/ GIMT_Encode4(73853), // Rule ID 900 // |
| 28259 | /* 73818 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28260 | /* 73821 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 28261 | /* 73824 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28262 | /* 73828 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28263 | /* 73832 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28264 | /* 73836 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28265 | /* 73840 */ // (vector_insert:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, GPR32Opnd:{ *:[i32] }:$fs, GPR64Opnd:{ *:[i64] }:$n) => (INSERT_H_VIDX64_PSEUDO:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$wd_in, GPR64Opnd:{ *:[i64] }:$n, GPR32Opnd:{ *:[i32] }:$fs) |
| 28266 | /* 73840 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_H_VIDX64_PSEUDO), |
| 28267 | /* 73843 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28268 | /* 73845 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28269 | /* 73847 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28270 | /* 73849 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28271 | /* 73851 */ GIR_RootConstrainSelectedInstOperands, |
| 28272 | /* 73852 */ // GIR_Coverage, 900, |
| 28273 | /* 73852 */ GIR_EraseRootFromParent_Done, |
| 28274 | /* 73853 */ // Label 1808: @73853 |
| 28275 | /* 73853 */ GIM_Reject, |
| 28276 | /* 73854 */ // Label 1806: @73854 |
| 28277 | /* 73854 */ GIM_Reject, |
| 28278 | /* 73855 */ // Label 1794: @73855 |
| 28279 | /* 73855 */ GIM_Try, /*On fail goto*//*Label 1809*/ GIMT_Encode4(73947), |
| 28280 | /* 73860 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 28281 | /* 73863 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 28282 | /* 73866 */ GIM_Try, /*On fail goto*//*Label 1810*/ GIMT_Encode4(73906), // Rule ID 893 // |
| 28283 | /* 73871 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28284 | /* 73874 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s32, |
| 28285 | /* 73877 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28286 | /* 73881 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28287 | /* 73885 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28288 | /* 73889 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28289 | /* 73893 */ // (vector_insert:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, GPR32Opnd:{ *:[i32] }:$fs, GPR32Opnd:{ *:[i32] }:$n) => (INSERT_B_VIDX_PSEUDO:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, GPR32Opnd:{ *:[i32] }:$n, GPR32Opnd:{ *:[i32] }:$fs) |
| 28290 | /* 73893 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_B_VIDX_PSEUDO), |
| 28291 | /* 73896 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28292 | /* 73898 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28293 | /* 73900 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28294 | /* 73902 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28295 | /* 73904 */ GIR_RootConstrainSelectedInstOperands, |
| 28296 | /* 73905 */ // GIR_Coverage, 893, |
| 28297 | /* 73905 */ GIR_EraseRootFromParent_Done, |
| 28298 | /* 73906 */ // Label 1810: @73906 |
| 28299 | /* 73906 */ GIM_Try, /*On fail goto*//*Label 1811*/ GIMT_Encode4(73946), // Rule ID 899 // |
| 28300 | /* 73911 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28301 | /* 73914 */ GIM_RootCheckType, /*Op*/3, /*Type*/GILLT_s64, |
| 28302 | /* 73917 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28303 | /* 73921 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28304 | /* 73925 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28305 | /* 73929 */ GIM_RootCheckRegBankForClass, /*Op*/3, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28306 | /* 73933 */ // (vector_insert:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, GPR32Opnd:{ *:[i32] }:$fs, GPR64Opnd:{ *:[i64] }:$n) => (INSERT_B_VIDX64_PSEUDO:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$wd_in, GPR64Opnd:{ *:[i64] }:$n, GPR32Opnd:{ *:[i32] }:$fs) |
| 28307 | /* 73933 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::INSERT_B_VIDX64_PSEUDO), |
| 28308 | /* 73936 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[wd] |
| 28309 | /* 73938 */ GIR_RootToRootCopy, /*OpIdx*/1, // wd_in |
| 28310 | /* 73940 */ GIR_RootToRootCopy, /*OpIdx*/3, // n |
| 28311 | /* 73942 */ GIR_RootToRootCopy, /*OpIdx*/2, // fs |
| 28312 | /* 73944 */ GIR_RootConstrainSelectedInstOperands, |
| 28313 | /* 73945 */ // GIR_Coverage, 899, |
| 28314 | /* 73945 */ GIR_EraseRootFromParent_Done, |
| 28315 | /* 73946 */ // Label 1811: @73946 |
| 28316 | /* 73946 */ GIM_Reject, |
| 28317 | /* 73947 */ // Label 1809: @73947 |
| 28318 | /* 73947 */ GIM_Reject, |
| 28319 | /* 73948 */ // Label 1795: @73948 |
| 28320 | /* 73948 */ GIM_Reject, |
| 28321 | /* 73949 */ // Label 72: @73949 |
| 28322 | /* 73949 */ GIM_Try, /*On fail goto*//*Label 1812*/ GIMT_Encode4(74000), // Rule ID 2121 // |
| 28323 | /* 73954 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA), |
| 28324 | /* 73957 */ GIM_RootCheckType, /*Op*/0, /*Type*/GILLT_s32, |
| 28325 | /* 73960 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 28326 | /* 73963 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 28327 | /* 73966 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28328 | /* 73970 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28329 | /* 73974 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 28330 | /* 73978 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_CONSTANT), |
| 28331 | /* 73982 */ GIM_CheckI64ImmPredicate, /*MI*/1, /*Predicate*/GIMT_Encode2(GICXXPred_I64_Predicate_immZExt4), |
| 28332 | /* 73986 */ // MIs[1] Operand 1 |
| 28333 | /* 73986 */ // No operand predicates |
| 28334 | /* 73986 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28335 | /* 73988 */ // (extractelt:{ *:[i32] } MSA128W:{ *:[v4i32] }:$ws, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$idx) => (COPY_S_W:{ *:[i32] } MSA128W:{ *:[v4i32] }:$ws, (imm:{ *:[i32] })<<P:Predicate_immZExt4>>:$idx) |
| 28336 | /* 73988 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::COPY_S_W), |
| 28337 | /* 73991 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28338 | /* 73993 */ GIR_RootToRootCopy, /*OpIdx*/1, // ws |
| 28339 | /* 73995 */ GIR_CopyConstantAsSImm, /*NewInsnID*/0, /*OldInsnID*/1, // idx |
| 28340 | /* 73998 */ GIR_RootConstrainSelectedInstOperands, |
| 28341 | /* 73999 */ // GIR_Coverage, 2121, |
| 28342 | /* 73999 */ GIR_EraseRootFromParent_Done, |
| 28343 | /* 74000 */ // Label 1812: @74000 |
| 28344 | /* 74000 */ GIM_Reject, |
| 28345 | /* 74001 */ // Label 73: @74001 |
| 28346 | /* 74001 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 1819*/ GIMT_Encode4(74505), |
| 28347 | /* 74012 */ /*GILLT_s32*//*Label 1813*/ GIMT_Encode4(74044), |
| 28348 | /* 74016 */ /*GILLT_s64*//*Label 1814*/ GIMT_Encode4(74253), GIMT_Encode4(0), |
| 28349 | /* 74024 */ /*GILLT_v2s64*//*Label 1815*/ GIMT_Encode4(74397), GIMT_Encode4(0), |
| 28350 | /* 74032 */ /*GILLT_v4s32*//*Label 1816*/ GIMT_Encode4(74424), |
| 28351 | /* 74036 */ /*GILLT_v8s16*//*Label 1817*/ GIMT_Encode4(74451), |
| 28352 | /* 74040 */ /*GILLT_v16s8*//*Label 1818*/ GIMT_Encode4(74478), |
| 28353 | /* 74044 */ // Label 1813: @74044 |
| 28354 | /* 74044 */ GIM_Try, /*On fail goto*//*Label 1820*/ GIMT_Encode4(74252), |
| 28355 | /* 74049 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 28356 | /* 74052 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28357 | /* 74056 */ GIM_Try, /*On fail goto*//*Label 1821*/ GIMT_Encode4(74102), // Rule ID 109 // |
| 28358 | /* 74061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28359 | /* 74064 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28360 | /* 74068 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28361 | /* 74072 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 28362 | /* 74076 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 28363 | /* 74080 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28364 | /* 74085 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 28365 | /* 74089 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28366 | /* 74091 */ // (ctlz:{ *:[i32] } (xor:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, -1:{ *:[i32] })) => (CLO:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 28367 | /* 74091 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CLO), |
| 28368 | /* 74094 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28369 | /* 74096 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 28370 | /* 74100 */ GIR_RootConstrainSelectedInstOperands, |
| 28371 | /* 74101 */ // GIR_Coverage, 109, |
| 28372 | /* 74101 */ GIR_EraseRootFromParent_Done, |
| 28373 | /* 74102 */ // Label 1821: @74102 |
| 28374 | /* 74102 */ GIM_Try, /*On fail goto*//*Label 1822*/ GIMT_Encode4(74148), // Rule ID 385 // |
| 28375 | /* 74107 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc), |
| 28376 | /* 74110 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28377 | /* 74114 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28378 | /* 74118 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 28379 | /* 74122 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 28380 | /* 74126 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28381 | /* 74131 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 28382 | /* 74135 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28383 | /* 74137 */ // (ctlz:{ *:[i32] } (xor:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, -1:{ *:[i32] })) => (CLO_R6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 28384 | /* 74137 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CLO_R6), |
| 28385 | /* 74140 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28386 | /* 74142 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 28387 | /* 74146 */ GIR_RootConstrainSelectedInstOperands, |
| 28388 | /* 74147 */ // GIR_Coverage, 385, |
| 28389 | /* 74147 */ GIR_EraseRootFromParent_Done, |
| 28390 | /* 74148 */ // Label 1822: @74148 |
| 28391 | /* 74148 */ GIM_Try, /*On fail goto*//*Label 1823*/ GIMT_Encode4(74194), // Rule ID 1175 // |
| 28392 | /* 74153 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 28393 | /* 74156 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28394 | /* 74160 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28395 | /* 74164 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 28396 | /* 74168 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 28397 | /* 74172 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28398 | /* 74177 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 28399 | /* 74181 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28400 | /* 74183 */ // (ctlz:{ *:[i32] } (xor:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs, -1:{ *:[i32] })) => (CLO_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 28401 | /* 74183 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::CLO_MM), |
| 28402 | /* 74186 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28403 | /* 74188 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 28404 | /* 74192 */ GIR_RootConstrainSelectedInstOperands, |
| 28405 | /* 74193 */ // GIR_Coverage, 1175, |
| 28406 | /* 74193 */ GIR_EraseRootFromParent_Done, |
| 28407 | /* 74194 */ // Label 1823: @74194 |
| 28408 | /* 74194 */ GIM_Try, /*On fail goto*//*Label 1824*/ GIMT_Encode4(74213), // Rule ID 108 // |
| 28409 | /* 74199 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32_HasStdEnc_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28410 | /* 74202 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28411 | /* 74206 */ // (ctlz:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) => (CLZ:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 28412 | /* 74206 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CLZ), |
| 28413 | /* 74211 */ GIR_RootConstrainSelectedInstOperands, |
| 28414 | /* 74212 */ // GIR_Coverage, 108, |
| 28415 | /* 74212 */ GIR_Done, |
| 28416 | /* 74213 */ // Label 1824: @74213 |
| 28417 | /* 74213 */ GIM_Try, /*On fail goto*//*Label 1825*/ GIMT_Encode4(74232), // Rule ID 386 // |
| 28418 | /* 74218 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r6_HasStdEnc), |
| 28419 | /* 74221 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28420 | /* 74225 */ // (ctlz:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) => (CLZ_R6:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 28421 | /* 74225 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CLZ_R6), |
| 28422 | /* 74230 */ GIR_RootConstrainSelectedInstOperands, |
| 28423 | /* 74231 */ // GIR_Coverage, 386, |
| 28424 | /* 74231 */ GIR_Done, |
| 28425 | /* 74232 */ // Label 1825: @74232 |
| 28426 | /* 74232 */ GIM_Try, /*On fail goto*//*Label 1826*/ GIMT_Encode4(74251), // Rule ID 1174 // |
| 28427 | /* 74237 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 28428 | /* 74240 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28429 | /* 74244 */ // (ctlz:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) => (CLZ_MM:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 28430 | /* 74244 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::CLZ_MM), |
| 28431 | /* 74249 */ GIR_RootConstrainSelectedInstOperands, |
| 28432 | /* 74250 */ // GIR_Coverage, 1174, |
| 28433 | /* 74250 */ GIR_Done, |
| 28434 | /* 74251 */ // Label 1826: @74251 |
| 28435 | /* 74251 */ GIM_Reject, |
| 28436 | /* 74252 */ // Label 1820: @74252 |
| 28437 | /* 74252 */ GIM_Reject, |
| 28438 | /* 74253 */ // Label 1814: @74253 |
| 28439 | /* 74253 */ GIM_Try, /*On fail goto*//*Label 1827*/ GIMT_Encode4(74396), |
| 28440 | /* 74258 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 28441 | /* 74261 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28442 | /* 74265 */ GIM_Try, /*On fail goto*//*Label 1828*/ GIMT_Encode4(74311), // Rule ID 339 // |
| 28443 | /* 74270 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips64r6), |
| 28444 | /* 74273 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28445 | /* 74277 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28446 | /* 74281 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28447 | /* 74285 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28448 | /* 74289 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28449 | /* 74294 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 28450 | /* 74298 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28451 | /* 74300 */ // (ctlz:{ *:[i64] } (xor:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, -1:{ *:[i64] })) => (DCLO:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) |
| 28452 | /* 74300 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DCLO), |
| 28453 | /* 74303 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28454 | /* 74305 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 28455 | /* 74309 */ GIR_RootConstrainSelectedInstOperands, |
| 28456 | /* 74310 */ // GIR_Coverage, 339, |
| 28457 | /* 74310 */ GIR_EraseRootFromParent_Done, |
| 28458 | /* 74311 */ // Label 1828: @74311 |
| 28459 | /* 74311 */ GIM_Try, /*On fail goto*//*Label 1829*/ GIMT_Encode4(74357), // Rule ID 414 // |
| 28460 | /* 74316 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 28461 | /* 74319 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28462 | /* 74323 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_XOR), |
| 28463 | /* 74327 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28464 | /* 74331 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28465 | /* 74335 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28466 | /* 74340 */ GIM_CheckConstantInt8, /*MI*/1, /*Op*/2, 255, |
| 28467 | /* 74344 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28468 | /* 74346 */ // (ctlz:{ *:[i64] } (xor:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs, -1:{ *:[i64] })) => (DCLO_R6:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) |
| 28469 | /* 74346 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DCLO_R6), |
| 28470 | /* 74349 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28471 | /* 74351 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // rs |
| 28472 | /* 74355 */ GIR_RootConstrainSelectedInstOperands, |
| 28473 | /* 74356 */ // GIR_Coverage, 414, |
| 28474 | /* 74356 */ GIR_EraseRootFromParent_Done, |
| 28475 | /* 74357 */ // Label 1829: @74357 |
| 28476 | /* 74357 */ GIM_Try, /*On fail goto*//*Label 1830*/ GIMT_Encode4(74376), // Rule ID 338 // |
| 28477 | /* 74362 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64_HasStdEnc_IsGP64bit_NotInMicroMips_NotMips64r6), |
| 28478 | /* 74365 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28479 | /* 74369 */ // (ctlz:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) => (DCLZ:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) |
| 28480 | /* 74369 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DCLZ), |
| 28481 | /* 74374 */ GIR_RootConstrainSelectedInstOperands, |
| 28482 | /* 74375 */ // GIR_Coverage, 338, |
| 28483 | /* 74375 */ GIR_Done, |
| 28484 | /* 74376 */ // Label 1830: @74376 |
| 28485 | /* 74376 */ GIM_Try, /*On fail goto*//*Label 1831*/ GIMT_Encode4(74395), // Rule ID 415 // |
| 28486 | /* 74381 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r6_HasStdEnc_NotInMicroMips), |
| 28487 | /* 74384 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28488 | /* 74388 */ // (ctlz:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) => (DCLZ_R6:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) |
| 28489 | /* 74388 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DCLZ_R6), |
| 28490 | /* 74393 */ GIR_RootConstrainSelectedInstOperands, |
| 28491 | /* 74394 */ // GIR_Coverage, 415, |
| 28492 | /* 74394 */ GIR_Done, |
| 28493 | /* 74395 */ // Label 1831: @74395 |
| 28494 | /* 74395 */ GIM_Reject, |
| 28495 | /* 74396 */ // Label 1827: @74396 |
| 28496 | /* 74396 */ GIM_Reject, |
| 28497 | /* 74397 */ // Label 1815: @74397 |
| 28498 | /* 74397 */ GIM_Try, /*On fail goto*//*Label 1832*/ GIMT_Encode4(74423), // Rule ID 990 // |
| 28499 | /* 74402 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28500 | /* 74405 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 28501 | /* 74408 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28502 | /* 74412 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28503 | /* 74416 */ // (ctlz:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws) => (NLZC_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws) |
| 28504 | /* 74416 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::NLZC_D), |
| 28505 | /* 74421 */ GIR_RootConstrainSelectedInstOperands, |
| 28506 | /* 74422 */ // GIR_Coverage, 990, |
| 28507 | /* 74422 */ GIR_Done, |
| 28508 | /* 74423 */ // Label 1832: @74423 |
| 28509 | /* 74423 */ GIM_Reject, |
| 28510 | /* 74424 */ // Label 1816: @74424 |
| 28511 | /* 74424 */ GIM_Try, /*On fail goto*//*Label 1833*/ GIMT_Encode4(74450), // Rule ID 989 // |
| 28512 | /* 74429 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28513 | /* 74432 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 28514 | /* 74435 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28515 | /* 74439 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28516 | /* 74443 */ // (ctlz:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws) => (NLZC_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws) |
| 28517 | /* 74443 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::NLZC_W), |
| 28518 | /* 74448 */ GIR_RootConstrainSelectedInstOperands, |
| 28519 | /* 74449 */ // GIR_Coverage, 989, |
| 28520 | /* 74449 */ GIR_Done, |
| 28521 | /* 74450 */ // Label 1833: @74450 |
| 28522 | /* 74450 */ GIM_Reject, |
| 28523 | /* 74451 */ // Label 1817: @74451 |
| 28524 | /* 74451 */ GIM_Try, /*On fail goto*//*Label 1834*/ GIMT_Encode4(74477), // Rule ID 988 // |
| 28525 | /* 74456 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28526 | /* 74459 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 28527 | /* 74462 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28528 | /* 74466 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28529 | /* 74470 */ // (ctlz:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws) => (NLZC_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws) |
| 28530 | /* 74470 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::NLZC_H), |
| 28531 | /* 74475 */ GIR_RootConstrainSelectedInstOperands, |
| 28532 | /* 74476 */ // GIR_Coverage, 988, |
| 28533 | /* 74476 */ GIR_Done, |
| 28534 | /* 74477 */ // Label 1834: @74477 |
| 28535 | /* 74477 */ GIM_Reject, |
| 28536 | /* 74478 */ // Label 1818: @74478 |
| 28537 | /* 74478 */ GIM_Try, /*On fail goto*//*Label 1835*/ GIMT_Encode4(74504), // Rule ID 987 // |
| 28538 | /* 74483 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28539 | /* 74486 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 28540 | /* 74489 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28541 | /* 74493 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28542 | /* 74497 */ // (ctlz:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws) => (NLZC_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws) |
| 28543 | /* 74497 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::NLZC_B), |
| 28544 | /* 74502 */ GIR_RootConstrainSelectedInstOperands, |
| 28545 | /* 74503 */ // GIR_Coverage, 987, |
| 28546 | /* 74503 */ GIR_Done, |
| 28547 | /* 74504 */ // Label 1835: @74504 |
| 28548 | /* 74504 */ GIM_Reject, |
| 28549 | /* 74505 */ // Label 1819: @74505 |
| 28550 | /* 74505 */ GIM_Reject, |
| 28551 | /* 74506 */ // Label 74: @74506 |
| 28552 | /* 74506 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(9), /*)*//*default:*//*Label 1842*/ GIMT_Encode4(74711), |
| 28553 | /* 74517 */ /*GILLT_s32*//*Label 1836*/ GIMT_Encode4(74549), |
| 28554 | /* 74521 */ /*GILLT_s64*//*Label 1837*/ GIMT_Encode4(74576), GIMT_Encode4(0), |
| 28555 | /* 74529 */ /*GILLT_v2s64*//*Label 1838*/ GIMT_Encode4(74603), GIMT_Encode4(0), |
| 28556 | /* 74537 */ /*GILLT_v4s32*//*Label 1839*/ GIMT_Encode4(74630), |
| 28557 | /* 74541 */ /*GILLT_v8s16*//*Label 1840*/ GIMT_Encode4(74657), |
| 28558 | /* 74545 */ /*GILLT_v16s8*//*Label 1841*/ GIMT_Encode4(74684), |
| 28559 | /* 74549 */ // Label 1836: @74549 |
| 28560 | /* 74549 */ GIM_Try, /*On fail goto*//*Label 1843*/ GIMT_Encode4(74575), // Rule ID 353 // |
| 28561 | /* 74554 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 28562 | /* 74557 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 28563 | /* 74560 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28564 | /* 74564 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28565 | /* 74568 */ // (ctpop:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) => (POP:{ *:[i32] } GPR32Opnd:{ *:[i32] }:$rs) |
| 28566 | /* 74568 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::POP), |
| 28567 | /* 74573 */ GIR_RootConstrainSelectedInstOperands, |
| 28568 | /* 74574 */ // GIR_Coverage, 353, |
| 28569 | /* 74574 */ GIR_Done, |
| 28570 | /* 74575 */ // Label 1843: @74575 |
| 28571 | /* 74575 */ GIM_Reject, |
| 28572 | /* 74576 */ // Label 1837: @74576 |
| 28573 | /* 74576 */ GIM_Try, /*On fail goto*//*Label 1844*/ GIMT_Encode4(74602), // Rule ID 354 // |
| 28574 | /* 74581 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasCnMips), |
| 28575 | /* 74584 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 28576 | /* 74587 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28577 | /* 74591 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28578 | /* 74595 */ // (ctpop:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) => (DPOP:{ *:[i64] } GPR64Opnd:{ *:[i64] }:$rs) |
| 28579 | /* 74595 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::DPOP), |
| 28580 | /* 74600 */ GIR_RootConstrainSelectedInstOperands, |
| 28581 | /* 74601 */ // GIR_Coverage, 354, |
| 28582 | /* 74601 */ GIR_Done, |
| 28583 | /* 74602 */ // Label 1844: @74602 |
| 28584 | /* 74602 */ GIM_Reject, |
| 28585 | /* 74603 */ // Label 1838: @74603 |
| 28586 | /* 74603 */ GIM_Try, /*On fail goto*//*Label 1845*/ GIMT_Encode4(74629), // Rule ID 1012 // |
| 28587 | /* 74608 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28588 | /* 74611 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 28589 | /* 74614 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28590 | /* 74618 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28591 | /* 74622 */ // (ctpop:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws) => (PCNT_D:{ *:[v2i64] } MSA128DOpnd:{ *:[v2i64] }:$ws) |
| 28592 | /* 74622 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PCNT_D), |
| 28593 | /* 74627 */ GIR_RootConstrainSelectedInstOperands, |
| 28594 | /* 74628 */ // GIR_Coverage, 1012, |
| 28595 | /* 74628 */ GIR_Done, |
| 28596 | /* 74629 */ // Label 1845: @74629 |
| 28597 | /* 74629 */ GIM_Reject, |
| 28598 | /* 74630 */ // Label 1839: @74630 |
| 28599 | /* 74630 */ GIM_Try, /*On fail goto*//*Label 1846*/ GIMT_Encode4(74656), // Rule ID 1011 // |
| 28600 | /* 74635 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28601 | /* 74638 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 28602 | /* 74641 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28603 | /* 74645 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28604 | /* 74649 */ // (ctpop:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws) => (PCNT_W:{ *:[v4i32] } MSA128WOpnd:{ *:[v4i32] }:$ws) |
| 28605 | /* 74649 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PCNT_W), |
| 28606 | /* 74654 */ GIR_RootConstrainSelectedInstOperands, |
| 28607 | /* 74655 */ // GIR_Coverage, 1011, |
| 28608 | /* 74655 */ GIR_Done, |
| 28609 | /* 74656 */ // Label 1846: @74656 |
| 28610 | /* 74656 */ GIM_Reject, |
| 28611 | /* 74657 */ // Label 1840: @74657 |
| 28612 | /* 74657 */ GIM_Try, /*On fail goto*//*Label 1847*/ GIMT_Encode4(74683), // Rule ID 1010 // |
| 28613 | /* 74662 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28614 | /* 74665 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v8s16, |
| 28615 | /* 74668 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28616 | /* 74672 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128HRegClassID), |
| 28617 | /* 74676 */ // (ctpop:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws) => (PCNT_H:{ *:[v8i16] } MSA128HOpnd:{ *:[v8i16] }:$ws) |
| 28618 | /* 74676 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PCNT_H), |
| 28619 | /* 74681 */ GIR_RootConstrainSelectedInstOperands, |
| 28620 | /* 74682 */ // GIR_Coverage, 1010, |
| 28621 | /* 74682 */ GIR_Done, |
| 28622 | /* 74683 */ // Label 1847: @74683 |
| 28623 | /* 74683 */ GIM_Reject, |
| 28624 | /* 74684 */ // Label 1841: @74684 |
| 28625 | /* 74684 */ GIM_Try, /*On fail goto*//*Label 1848*/ GIMT_Encode4(74710), // Rule ID 1009 // |
| 28626 | /* 74689 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28627 | /* 74692 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v16s8, |
| 28628 | /* 74695 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28629 | /* 74699 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128BRegClassID), |
| 28630 | /* 74703 */ // (ctpop:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws) => (PCNT_B:{ *:[v16i8] } MSA128BOpnd:{ *:[v16i8] }:$ws) |
| 28631 | /* 74703 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::PCNT_B), |
| 28632 | /* 74708 */ GIR_RootConstrainSelectedInstOperands, |
| 28633 | /* 74709 */ // GIR_Coverage, 1009, |
| 28634 | /* 74709 */ GIR_Done, |
| 28635 | /* 74710 */ // Label 1848: @74710 |
| 28636 | /* 74710 */ GIM_Reject, |
| 28637 | /* 74711 */ // Label 1842: @74711 |
| 28638 | /* 74711 */ GIM_Reject, |
| 28639 | /* 74712 */ // Label 75: @74712 |
| 28640 | /* 74712 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1851*/ GIMT_Encode4(74875), |
| 28641 | /* 74723 */ /*GILLT_s32*//*Label 1849*/ GIMT_Encode4(74731), |
| 28642 | /* 74727 */ /*GILLT_s64*//*Label 1850*/ GIMT_Encode4(74827), |
| 28643 | /* 74731 */ // Label 1849: @74731 |
| 28644 | /* 74731 */ GIM_Try, /*On fail goto*//*Label 1852*/ GIMT_Encode4(74826), |
| 28645 | /* 74736 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 28646 | /* 74739 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28647 | /* 74743 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR32RegClassID), |
| 28648 | /* 74747 */ GIM_Try, /*On fail goto*//*Label 1853*/ GIMT_Encode4(74786), // Rule ID 1502 // |
| 28649 | /* 74752 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips32r2_HasStdEnc_NotInMicroMips), |
| 28650 | /* 74755 */ // (bswap:{ *:[i32] } GPR32:{ *:[i32] }:$rt) => (ROTR:{ *:[i32] } (WSBH:{ *:[i32] } GPR32:{ *:[i32] }:$rt), 16:{ *:[i32] }) |
| 28651 | /* 74755 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 28652 | /* 74758 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::WSBH), |
| 28653 | /* 74762 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 28654 | /* 74767 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // rt |
| 28655 | /* 74771 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 28656 | /* 74773 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ROTR), |
| 28657 | /* 74776 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28658 | /* 74778 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 28659 | /* 74781 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/16, |
| 28660 | /* 74784 */ GIR_RootConstrainSelectedInstOperands, |
| 28661 | /* 74785 */ // GIR_Coverage, 1502, |
| 28662 | /* 74785 */ GIR_EraseRootFromParent_Done, |
| 28663 | /* 74786 */ // Label 1853: @74786 |
| 28664 | /* 74786 */ GIM_Try, /*On fail goto*//*Label 1854*/ GIMT_Encode4(74825), // Rule ID 2318 // |
| 28665 | /* 74791 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 28666 | /* 74794 */ // (bswap:{ *:[i32] } GPR32:{ *:[i32] }:$rt) => (ROTR_MM:{ *:[i32] } (WSBH_MM:{ *:[i32] } GPR32:{ *:[i32] }:$rt), 16:{ *:[i32] }) |
| 28667 | /* 74794 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s32, |
| 28668 | /* 74797 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::WSBH_MM), |
| 28669 | /* 74801 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 28670 | /* 74806 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // rt |
| 28671 | /* 74810 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 28672 | /* 74812 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::ROTR_MM), |
| 28673 | /* 74815 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28674 | /* 74817 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 28675 | /* 74820 */ GIR_AddImm8, /*InsnID*/0, /*Imm*/16, |
| 28676 | /* 74823 */ GIR_RootConstrainSelectedInstOperands, |
| 28677 | /* 74824 */ // GIR_Coverage, 2318, |
| 28678 | /* 74824 */ GIR_EraseRootFromParent_Done, |
| 28679 | /* 74825 */ // Label 1854: @74825 |
| 28680 | /* 74825 */ GIM_Reject, |
| 28681 | /* 74826 */ // Label 1852: @74826 |
| 28682 | /* 74826 */ GIM_Reject, |
| 28683 | /* 74827 */ // Label 1850: @74827 |
| 28684 | /* 74827 */ GIM_Try, /*On fail goto*//*Label 1855*/ GIMT_Encode4(74874), // Rule ID 1692 // |
| 28685 | /* 74832 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips64r2_HasStdEnc), |
| 28686 | /* 74835 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 28687 | /* 74838 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28688 | /* 74842 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::GPR64RegClassID), |
| 28689 | /* 74846 */ // (bswap:{ *:[i64] } GPR64:{ *:[i64] }:$rt) => (DSHD:{ *:[i64] } (DSBH:{ *:[i64] } GPR64:{ *:[i64] }:$rt)) |
| 28690 | /* 74846 */ GIR_MakeTempReg, /*TempRegID*/0, /*TypeID*/GILLT_s64, |
| 28691 | /* 74849 */ GIR_BuildMI, /*InsnID*/1, /*Opcode*/GIMT_Encode2(Mips::DSBH), |
| 28692 | /* 74853 */ GIR_AddTempRegister, /*InsnID*/1, /*TempRegID*/0, /*TempRegFlags*/GIMT_Encode2(static_cast<uint16_t>(RegState::Define)), |
| 28693 | /* 74858 */ GIR_Copy, /*NewInsnID*/1, /*OldInsnID*/0, /*OpIdx*/1, // rt |
| 28694 | /* 74862 */ GIR_ConstrainSelectedInstOperands, /*InsnID*/1, |
| 28695 | /* 74864 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::DSHD), |
| 28696 | /* 74867 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[rd] |
| 28697 | /* 74869 */ GIR_AddSimpleTempRegister, /*InsnID*/0, /*TempRegID*/0, |
| 28698 | /* 74872 */ GIR_RootConstrainSelectedInstOperands, |
| 28699 | /* 74873 */ // GIR_Coverage, 1692, |
| 28700 | /* 74873 */ GIR_EraseRootFromParent_Done, |
| 28701 | /* 74874 */ // Label 1855: @74874 |
| 28702 | /* 74874 */ GIM_Reject, |
| 28703 | /* 74875 */ // Label 1851: @74875 |
| 28704 | /* 74875 */ GIM_Reject, |
| 28705 | /* 74876 */ // Label 76: @74876 |
| 28706 | /* 74876 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(7), /*)*//*default:*//*Label 1860*/ GIMT_Encode4(75139), |
| 28707 | /* 74887 */ /*GILLT_s32*//*Label 1856*/ GIMT_Encode4(74911), |
| 28708 | /* 74891 */ /*GILLT_s64*//*Label 1857*/ GIMT_Encode4(74967), GIMT_Encode4(0), |
| 28709 | /* 74899 */ /*GILLT_v2s64*//*Label 1858*/ GIMT_Encode4(75085), GIMT_Encode4(0), |
| 28710 | /* 74907 */ /*GILLT_v4s32*//*Label 1859*/ GIMT_Encode4(75112), |
| 28711 | /* 74911 */ // Label 1856: @74911 |
| 28712 | /* 74911 */ GIM_Try, /*On fail goto*//*Label 1861*/ GIMT_Encode4(74966), |
| 28713 | /* 74916 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 28714 | /* 74919 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28715 | /* 74923 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28716 | /* 74927 */ GIM_Try, /*On fail goto*//*Label 1862*/ GIMT_Encode4(74946), // Rule ID 133 // |
| 28717 | /* 74932 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips2_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 28718 | /* 74935 */ // (fsqrt:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FSQRT_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 28719 | /* 74935 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_S), |
| 28720 | /* 74940 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 28721 | /* 74944 */ GIR_RootConstrainSelectedInstOperands, |
| 28722 | /* 74945 */ // GIR_Coverage, 133, |
| 28723 | /* 74945 */ GIR_Done, |
| 28724 | /* 74946 */ // Label 1862: @74946 |
| 28725 | /* 74946 */ GIM_Try, /*On fail goto*//*Label 1863*/ GIMT_Encode4(74965), // Rule ID 1237 // |
| 28726 | /* 74951 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat), |
| 28727 | /* 74954 */ // (fsqrt:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FSQRT_S_MM:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 28728 | /* 74954 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_S_MM), |
| 28729 | /* 74959 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 28730 | /* 74963 */ GIR_RootConstrainSelectedInstOperands, |
| 28731 | /* 74964 */ // GIR_Coverage, 1237, |
| 28732 | /* 74964 */ GIR_Done, |
| 28733 | /* 74965 */ // Label 1863: @74965 |
| 28734 | /* 74965 */ GIM_Reject, |
| 28735 | /* 74966 */ // Label 1861: @74966 |
| 28736 | /* 74966 */ GIM_Reject, |
| 28737 | /* 74967 */ // Label 1857: @74967 |
| 28738 | /* 74967 */ GIM_Try, /*On fail goto*//*Label 1864*/ GIMT_Encode4(75084), |
| 28739 | /* 74972 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 28740 | /* 74975 */ GIM_Try, /*On fail goto*//*Label 1865*/ GIMT_Encode4(75002), // Rule ID 135 // |
| 28741 | /* 74980 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 28742 | /* 74983 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28743 | /* 74987 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28744 | /* 74991 */ // (fsqrt:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) => (FSQRT_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) |
| 28745 | /* 74991 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_D32), |
| 28746 | /* 74996 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 28747 | /* 75000 */ GIR_RootConstrainSelectedInstOperands, |
| 28748 | /* 75001 */ // GIR_Coverage, 135, |
| 28749 | /* 75001 */ GIR_Done, |
| 28750 | /* 75002 */ // Label 1865: @75002 |
| 28751 | /* 75002 */ GIM_Try, /*On fail goto*//*Label 1866*/ GIMT_Encode4(75029), // Rule ID 137 // |
| 28752 | /* 75007 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 28753 | /* 75010 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28754 | /* 75014 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28755 | /* 75018 */ // (fsqrt:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) => (FSQRT_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 28756 | /* 75018 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_D64), |
| 28757 | /* 75023 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 28758 | /* 75027 */ GIR_RootConstrainSelectedInstOperands, |
| 28759 | /* 75028 */ // GIR_Coverage, 137, |
| 28760 | /* 75028 */ GIR_Done, |
| 28761 | /* 75029 */ // Label 1866: @75029 |
| 28762 | /* 75029 */ GIM_Try, /*On fail goto*//*Label 1867*/ GIMT_Encode4(75056), // Rule ID 1223 // |
| 28763 | /* 75034 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsNotSoftFloat_NotFP64bit), |
| 28764 | /* 75037 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28765 | /* 75041 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28766 | /* 75045 */ // (fsqrt:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) => (FSQRT_D32_MM:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) |
| 28767 | /* 75045 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_D32_MM), |
| 28768 | /* 75050 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 28769 | /* 75054 */ GIR_RootConstrainSelectedInstOperands, |
| 28770 | /* 75055 */ // GIR_Coverage, 1223, |
| 28771 | /* 75055 */ GIR_Done, |
| 28772 | /* 75056 */ // Label 1867: @75056 |
| 28773 | /* 75056 */ GIM_Try, /*On fail goto*//*Label 1868*/ GIMT_Encode4(75083), // Rule ID 1224 // |
| 28774 | /* 75061 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips_IsFP64bit_IsNotSoftFloat), |
| 28775 | /* 75064 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28776 | /* 75068 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28777 | /* 75072 */ // (fsqrt:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) => (FSQRT_D64_MM:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 28778 | /* 75072 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_D64_MM), |
| 28779 | /* 75077 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 28780 | /* 75081 */ GIR_RootConstrainSelectedInstOperands, |
| 28781 | /* 75082 */ // GIR_Coverage, 1224, |
| 28782 | /* 75082 */ GIR_Done, |
| 28783 | /* 75083 */ // Label 1868: @75083 |
| 28784 | /* 75083 */ GIM_Reject, |
| 28785 | /* 75084 */ // Label 1864: @75084 |
| 28786 | /* 75084 */ GIM_Reject, |
| 28787 | /* 75085 */ // Label 1858: @75085 |
| 28788 | /* 75085 */ GIM_Try, /*On fail goto*//*Label 1869*/ GIMT_Encode4(75111), // Rule ID 832 // |
| 28789 | /* 75090 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28790 | /* 75093 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 28791 | /* 75096 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28792 | /* 75100 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28793 | /* 75104 */ // (fsqrt:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) => (FSQRT_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 28794 | /* 75104 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_D), |
| 28795 | /* 75109 */ GIR_RootConstrainSelectedInstOperands, |
| 28796 | /* 75110 */ // GIR_Coverage, 832, |
| 28797 | /* 75110 */ GIR_Done, |
| 28798 | /* 75111 */ // Label 1869: @75111 |
| 28799 | /* 75111 */ GIM_Reject, |
| 28800 | /* 75112 */ // Label 1859: @75112 |
| 28801 | /* 75112 */ GIM_Try, /*On fail goto*//*Label 1870*/ GIMT_Encode4(75138), // Rule ID 831 // |
| 28802 | /* 75117 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28803 | /* 75120 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 28804 | /* 75123 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28805 | /* 75127 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28806 | /* 75131 */ // (fsqrt:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) => (FSQRT_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 28807 | /* 75131 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_W), |
| 28808 | /* 75136 */ GIR_RootConstrainSelectedInstOperands, |
| 28809 | /* 75137 */ // GIR_Coverage, 831, |
| 28810 | /* 75137 */ GIR_Done, |
| 28811 | /* 75138 */ // Label 1870: @75138 |
| 28812 | /* 75138 */ GIM_Reject, |
| 28813 | /* 75139 */ // Label 1860: @75139 |
| 28814 | /* 75139 */ GIM_Reject, |
| 28815 | /* 75140 */ // Label 77: @75140 |
| 28816 | /* 75140 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(4), GIMT_Encode2(7), /*)*//*default:*//*Label 1873*/ GIMT_Encode4(75217), |
| 28817 | /* 75151 */ /*GILLT_v2s64*//*Label 1871*/ GIMT_Encode4(75163), GIMT_Encode4(0), |
| 28818 | /* 75159 */ /*GILLT_v4s32*//*Label 1872*/ GIMT_Encode4(75190), |
| 28819 | /* 75163 */ // Label 1871: @75163 |
| 28820 | /* 75163 */ GIM_Try, /*On fail goto*//*Label 1874*/ GIMT_Encode4(75189), // Rule ID 814 // |
| 28821 | /* 75168 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28822 | /* 75171 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v2s64, |
| 28823 | /* 75174 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28824 | /* 75178 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128DRegClassID), |
| 28825 | /* 75182 */ // (frint:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) => (FRINT_D:{ *:[v2f64] } MSA128DOpnd:{ *:[v2f64] }:$ws) |
| 28826 | /* 75182 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FRINT_D), |
| 28827 | /* 75187 */ GIR_RootConstrainSelectedInstOperands, |
| 28828 | /* 75188 */ // GIR_Coverage, 814, |
| 28829 | /* 75188 */ GIR_Done, |
| 28830 | /* 75189 */ // Label 1874: @75189 |
| 28831 | /* 75189 */ GIM_Reject, |
| 28832 | /* 75190 */ // Label 1872: @75190 |
| 28833 | /* 75190 */ GIM_Try, /*On fail goto*//*Label 1875*/ GIMT_Encode4(75216), // Rule ID 813 // |
| 28834 | /* 75195 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMSA_HasStdEnc), |
| 28835 | /* 75198 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_v4s32, |
| 28836 | /* 75201 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28837 | /* 75205 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::MSA128WRegClassID), |
| 28838 | /* 75209 */ // (frint:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) => (FRINT_W:{ *:[v4f32] } MSA128WOpnd:{ *:[v4f32] }:$ws) |
| 28839 | /* 75209 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FRINT_W), |
| 28840 | /* 75214 */ GIR_RootConstrainSelectedInstOperands, |
| 28841 | /* 75215 */ // GIR_Coverage, 813, |
| 28842 | /* 75215 */ GIR_Done, |
| 28843 | /* 75216 */ // Label 1875: @75216 |
| 28844 | /* 75216 */ GIM_Reject, |
| 28845 | /* 75217 */ // Label 1873: @75217 |
| 28846 | /* 75217 */ GIM_Reject, |
| 28847 | /* 75218 */ // Label 78: @75218 |
| 28848 | /* 75218 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1878*/ GIMT_Encode4(76072), |
| 28849 | /* 75229 */ /*GILLT_s32*//*Label 1876*/ GIMT_Encode4(75237), |
| 28850 | /* 75233 */ /*GILLT_s64*//*Label 1877*/ GIMT_Encode4(75509), |
| 28851 | /* 75237 */ // Label 1876: @75237 |
| 28852 | /* 75237 */ GIM_Try, /*On fail goto*//*Label 1879*/ GIMT_Encode4(75508), |
| 28853 | /* 75242 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 28854 | /* 75245 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 28855 | /* 75248 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28856 | /* 75252 */ GIM_Try, /*On fail goto*//*Label 1880*/ GIMT_Encode4(75309), // Rule ID 179 // |
| 28857 | /* 75257 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28858 | /* 75260 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28859 | /* 75264 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 28860 | /* 75268 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 28861 | /* 75272 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 28862 | /* 75276 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28863 | /* 75281 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28864 | /* 75286 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28865 | /* 75290 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28866 | /* 75292 */ // (strict_fadd:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 28867 | /* 75292 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 28868 | /* 75295 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 28869 | /* 75297 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 28870 | /* 75299 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 28871 | /* 75303 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 28872 | /* 75307 */ GIR_RootConstrainSelectedInstOperands, |
| 28873 | /* 75308 */ // GIR_Coverage, 179, |
| 28874 | /* 75308 */ GIR_EraseRootFromParent_Done, |
| 28875 | /* 75309 */ // Label 1880: @75309 |
| 28876 | /* 75309 */ GIM_Try, /*On fail goto*//*Label 1881*/ GIMT_Encode4(75366), // Rule ID 178 // |
| 28877 | /* 75314 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28878 | /* 75317 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28879 | /* 75321 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 28880 | /* 75325 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 28881 | /* 75329 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 28882 | /* 75333 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28883 | /* 75338 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28884 | /* 75343 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28885 | /* 75347 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28886 | /* 75349 */ // (strict_fadd:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 28887 | /* 75349 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 28888 | /* 75352 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 28889 | /* 75354 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 28890 | /* 75356 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 28891 | /* 75360 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 28892 | /* 75364 */ GIR_RootConstrainSelectedInstOperands, |
| 28893 | /* 75365 */ // GIR_Coverage, 178, |
| 28894 | /* 75365 */ GIR_EraseRootFromParent_Done, |
| 28895 | /* 75366 */ // Label 1881: @75366 |
| 28896 | /* 75366 */ GIM_Try, /*On fail goto*//*Label 1882*/ GIMT_Encode4(75423), // Rule ID 2488 // |
| 28897 | /* 75371 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28898 | /* 75374 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28899 | /* 75378 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 28900 | /* 75382 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 28901 | /* 75386 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 28902 | /* 75390 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 28903 | /* 75394 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28904 | /* 75399 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28905 | /* 75404 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28906 | /* 75406 */ // (strict_fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft)) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 28907 | /* 75406 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 28908 | /* 75409 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 28909 | /* 75411 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 28910 | /* 75413 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 28911 | /* 75417 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 28912 | /* 75421 */ GIR_RootConstrainSelectedInstOperands, |
| 28913 | /* 75422 */ // GIR_Coverage, 2488, |
| 28914 | /* 75422 */ GIR_EraseRootFromParent_Done, |
| 28915 | /* 75423 */ // Label 1882: @75423 |
| 28916 | /* 75423 */ GIM_Try, /*On fail goto*//*Label 1883*/ GIMT_Encode4(75480), // Rule ID 2487 // |
| 28917 | /* 75428 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28918 | /* 75431 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28919 | /* 75435 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 28920 | /* 75439 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 28921 | /* 75443 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 28922 | /* 75447 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 28923 | /* 75451 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28924 | /* 75456 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28925 | /* 75461 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28926 | /* 75463 */ // (strict_fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft)) => (MADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 28927 | /* 75463 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_S), |
| 28928 | /* 75466 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 28929 | /* 75468 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 28930 | /* 75470 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 28931 | /* 75474 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 28932 | /* 75478 */ GIR_RootConstrainSelectedInstOperands, |
| 28933 | /* 75479 */ // GIR_Coverage, 2487, |
| 28934 | /* 75479 */ GIR_EraseRootFromParent_Done, |
| 28935 | /* 75480 */ // Label 1883: @75480 |
| 28936 | /* 75480 */ GIM_Try, /*On fail goto*//*Label 1884*/ GIMT_Encode4(75507), // Rule ID 154 // |
| 28937 | /* 75485 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 28938 | /* 75488 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28939 | /* 75492 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 28940 | /* 75496 */ // (strict_fadd:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FADD_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 28941 | /* 75496 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_S), |
| 28942 | /* 75501 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 28943 | /* 75505 */ GIR_RootConstrainSelectedInstOperands, |
| 28944 | /* 75506 */ // GIR_Coverage, 154, |
| 28945 | /* 75506 */ GIR_Done, |
| 28946 | /* 75507 */ // Label 1884: @75507 |
| 28947 | /* 75507 */ GIM_Reject, |
| 28948 | /* 75508 */ // Label 1879: @75508 |
| 28949 | /* 75508 */ GIM_Reject, |
| 28950 | /* 75509 */ // Label 1877: @75509 |
| 28951 | /* 75509 */ GIM_Try, /*On fail goto*//*Label 1885*/ GIMT_Encode4(76071), |
| 28952 | /* 75514 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 28953 | /* 75517 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 28954 | /* 75520 */ GIM_Try, /*On fail goto*//*Label 1886*/ GIMT_Encode4(75581), // Rule ID 187 // |
| 28955 | /* 75525 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28956 | /* 75528 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28957 | /* 75532 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28958 | /* 75536 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 28959 | /* 75540 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28960 | /* 75544 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28961 | /* 75548 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28962 | /* 75553 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28963 | /* 75558 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28964 | /* 75562 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28965 | /* 75564 */ // (strict_fadd:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 28966 | /* 75564 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 28967 | /* 75567 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 28968 | /* 75569 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 28969 | /* 75571 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 28970 | /* 75575 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 28971 | /* 75579 */ GIR_RootConstrainSelectedInstOperands, |
| 28972 | /* 75580 */ // GIR_Coverage, 187, |
| 28973 | /* 75580 */ GIR_EraseRootFromParent_Done, |
| 28974 | /* 75581 */ // Label 1886: @75581 |
| 28975 | /* 75581 */ GIM_Try, /*On fail goto*//*Label 1887*/ GIMT_Encode4(75642), // Rule ID 195 // |
| 28976 | /* 75586 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28977 | /* 75589 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28978 | /* 75593 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 28979 | /* 75597 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 28980 | /* 75601 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 28981 | /* 75605 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 28982 | /* 75609 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28983 | /* 75614 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28984 | /* 75619 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 28985 | /* 75623 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 28986 | /* 75625 */ // (strict_fadd:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 28987 | /* 75625 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 28988 | /* 75628 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 28989 | /* 75630 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 28990 | /* 75632 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 28991 | /* 75636 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 28992 | /* 75640 */ GIR_RootConstrainSelectedInstOperands, |
| 28993 | /* 75641 */ // GIR_Coverage, 195, |
| 28994 | /* 75641 */ GIR_EraseRootFromParent_Done, |
| 28995 | /* 75642 */ // Label 1887: @75642 |
| 28996 | /* 75642 */ GIM_Try, /*On fail goto*//*Label 1888*/ GIMT_Encode4(75703), // Rule ID 186 // |
| 28997 | /* 75647 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 28998 | /* 75650 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 28999 | /* 75654 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29000 | /* 75658 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 29001 | /* 75662 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29002 | /* 75666 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29003 | /* 75670 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29004 | /* 75675 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29005 | /* 75680 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29006 | /* 75684 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29007 | /* 75686 */ // (strict_fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29008 | /* 75686 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 29009 | /* 75689 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29010 | /* 75691 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29011 | /* 75693 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29012 | /* 75697 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29013 | /* 75701 */ GIR_RootConstrainSelectedInstOperands, |
| 29014 | /* 75702 */ // GIR_Coverage, 186, |
| 29015 | /* 75702 */ GIR_EraseRootFromParent_Done, |
| 29016 | /* 75703 */ // Label 1888: @75703 |
| 29017 | /* 75703 */ GIM_Try, /*On fail goto*//*Label 1889*/ GIMT_Encode4(75764), // Rule ID 194 // |
| 29018 | /* 75708 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29019 | /* 75711 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29020 | /* 75715 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29021 | /* 75719 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 29022 | /* 75723 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29023 | /* 75727 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29024 | /* 75731 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29025 | /* 75736 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29026 | /* 75741 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29027 | /* 75745 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29028 | /* 75747 */ // (strict_fadd:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29029 | /* 75747 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 29030 | /* 75750 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29031 | /* 75752 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29032 | /* 75754 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29033 | /* 75758 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29034 | /* 75762 */ GIR_RootConstrainSelectedInstOperands, |
| 29035 | /* 75763 */ // GIR_Coverage, 194, |
| 29036 | /* 75763 */ GIR_EraseRootFromParent_Done, |
| 29037 | /* 75764 */ // Label 1889: @75764 |
| 29038 | /* 75764 */ GIM_Try, /*On fail goto*//*Label 1890*/ GIMT_Encode4(75825), // Rule ID 2492 // |
| 29039 | /* 75769 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29040 | /* 75772 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29041 | /* 75776 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29042 | /* 75780 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 29043 | /* 75784 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 29044 | /* 75788 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29045 | /* 75792 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29046 | /* 75796 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29047 | /* 75801 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29048 | /* 75806 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29049 | /* 75808 */ // (strict_fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29050 | /* 75808 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 29051 | /* 75811 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29052 | /* 75813 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 29053 | /* 75815 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29054 | /* 75819 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29055 | /* 75823 */ GIR_RootConstrainSelectedInstOperands, |
| 29056 | /* 75824 */ // GIR_Coverage, 2492, |
| 29057 | /* 75824 */ GIR_EraseRootFromParent_Done, |
| 29058 | /* 75825 */ // Label 1890: @75825 |
| 29059 | /* 75825 */ GIM_Try, /*On fail goto*//*Label 1891*/ GIMT_Encode4(75886), // Rule ID 2496 // |
| 29060 | /* 75830 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29061 | /* 75833 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29062 | /* 75837 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29063 | /* 75841 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 29064 | /* 75845 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 29065 | /* 75849 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29066 | /* 75853 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29067 | /* 75857 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29068 | /* 75862 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29069 | /* 75867 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29070 | /* 75869 */ // (strict_fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29071 | /* 75869 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 29072 | /* 75872 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29073 | /* 75874 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 29074 | /* 75876 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29075 | /* 75880 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29076 | /* 75884 */ GIR_RootConstrainSelectedInstOperands, |
| 29077 | /* 75885 */ // GIR_Coverage, 2496, |
| 29078 | /* 75885 */ GIR_EraseRootFromParent_Done, |
| 29079 | /* 75886 */ // Label 1891: @75886 |
| 29080 | /* 75886 */ GIM_Try, /*On fail goto*//*Label 1892*/ GIMT_Encode4(75947), // Rule ID 2491 // |
| 29081 | /* 75891 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29082 | /* 75894 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29083 | /* 75898 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29084 | /* 75902 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 29085 | /* 75906 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 29086 | /* 75910 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29087 | /* 75914 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29088 | /* 75918 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29089 | /* 75923 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29090 | /* 75928 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29091 | /* 75930 */ // (strict_fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29092 | /* 75930 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D32), |
| 29093 | /* 75933 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29094 | /* 75935 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 29095 | /* 75937 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29096 | /* 75941 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29097 | /* 75945 */ GIR_RootConstrainSelectedInstOperands, |
| 29098 | /* 75946 */ // GIR_Coverage, 2491, |
| 29099 | /* 75946 */ GIR_EraseRootFromParent_Done, |
| 29100 | /* 75947 */ // Label 1892: @75947 |
| 29101 | /* 75947 */ GIM_Try, /*On fail goto*//*Label 1893*/ GIMT_Encode4(76008), // Rule ID 2495 // |
| 29102 | /* 75952 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29103 | /* 75955 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29104 | /* 75959 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29105 | /* 75963 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/2, // MIs[1] |
| 29106 | /* 75967 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 29107 | /* 75971 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29108 | /* 75975 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29109 | /* 75979 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29110 | /* 75984 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29111 | /* 75989 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29112 | /* 75991 */ // (strict_fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft)) => (MADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29113 | /* 75991 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MADD_D64), |
| 29114 | /* 75994 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29115 | /* 75996 */ GIR_RootToRootCopy, /*OpIdx*/1, // fr |
| 29116 | /* 75998 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29117 | /* 76002 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29118 | /* 76006 */ GIR_RootConstrainSelectedInstOperands, |
| 29119 | /* 76007 */ // GIR_Coverage, 2495, |
| 29120 | /* 76007 */ GIR_EraseRootFromParent_Done, |
| 29121 | /* 76008 */ // Label 1893: @76008 |
| 29122 | /* 76008 */ GIM_Try, /*On fail goto*//*Label 1894*/ GIMT_Encode4(76039), // Rule ID 156 // |
| 29123 | /* 76013 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 29124 | /* 76016 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29125 | /* 76020 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29126 | /* 76024 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29127 | /* 76028 */ // (strict_fadd:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FADD_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29128 | /* 76028 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_D32), |
| 29129 | /* 76033 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29130 | /* 76037 */ GIR_RootConstrainSelectedInstOperands, |
| 29131 | /* 76038 */ // GIR_Coverage, 156, |
| 29132 | /* 76038 */ GIR_Done, |
| 29133 | /* 76039 */ // Label 1894: @76039 |
| 29134 | /* 76039 */ GIM_Try, /*On fail goto*//*Label 1895*/ GIMT_Encode4(76070), // Rule ID 158 // |
| 29135 | /* 76044 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 29136 | /* 76047 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29137 | /* 76051 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29138 | /* 76055 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29139 | /* 76059 */ // (strict_fadd:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FADD_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29140 | /* 76059 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FADD_D64), |
| 29141 | /* 76064 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29142 | /* 76068 */ GIR_RootConstrainSelectedInstOperands, |
| 29143 | /* 76069 */ // GIR_Coverage, 158, |
| 29144 | /* 76069 */ GIR_Done, |
| 29145 | /* 76070 */ // Label 1895: @76070 |
| 29146 | /* 76070 */ GIM_Reject, |
| 29147 | /* 76071 */ // Label 1885: @76071 |
| 29148 | /* 76071 */ GIM_Reject, |
| 29149 | /* 76072 */ // Label 1878: @76072 |
| 29150 | /* 76072 */ GIM_Reject, |
| 29151 | /* 76073 */ // Label 79: @76073 |
| 29152 | /* 76073 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1898*/ GIMT_Encode4(76569), |
| 29153 | /* 76084 */ /*GILLT_s32*//*Label 1896*/ GIMT_Encode4(76092), |
| 29154 | /* 76088 */ /*GILLT_s64*//*Label 1897*/ GIMT_Encode4(76250), |
| 29155 | /* 76092 */ // Label 1896: @76092 |
| 29156 | /* 76092 */ GIM_Try, /*On fail goto*//*Label 1899*/ GIMT_Encode4(76249), |
| 29157 | /* 76097 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 29158 | /* 76100 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 29159 | /* 76103 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29160 | /* 76107 */ GIM_Try, /*On fail goto*//*Label 1900*/ GIMT_Encode4(76164), // Rule ID 183 // |
| 29161 | /* 76112 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29162 | /* 76115 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29163 | /* 76119 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 29164 | /* 76123 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 29165 | /* 76127 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 29166 | /* 76131 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29167 | /* 76136 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29168 | /* 76141 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29169 | /* 76145 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29170 | /* 76147 */ // (strict_fsub:{ *:[f32] } (fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 29171 | /* 76147 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_S), |
| 29172 | /* 76150 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29173 | /* 76152 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29174 | /* 76154 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29175 | /* 76158 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29176 | /* 76162 */ GIR_RootConstrainSelectedInstOperands, |
| 29177 | /* 76163 */ // GIR_Coverage, 183, |
| 29178 | /* 76163 */ GIR_EraseRootFromParent_Done, |
| 29179 | /* 76164 */ // Label 1900: @76164 |
| 29180 | /* 76164 */ GIM_Try, /*On fail goto*//*Label 1901*/ GIMT_Encode4(76221), // Rule ID 182 // |
| 29181 | /* 76169 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29182 | /* 76172 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29183 | /* 76176 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 29184 | /* 76180 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s32, |
| 29185 | /* 76184 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s32, |
| 29186 | /* 76188 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29187 | /* 76193 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29188 | /* 76198 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29189 | /* 76202 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29190 | /* 76204 */ // (strict_fsub:{ *:[f32] } (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft), FGR32Opnd:{ *:[f32] }:$fr) => (MSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fr, FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 29191 | /* 76204 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_S), |
| 29192 | /* 76207 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29193 | /* 76209 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29194 | /* 76211 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29195 | /* 76215 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29196 | /* 76219 */ GIR_RootConstrainSelectedInstOperands, |
| 29197 | /* 76220 */ // GIR_Coverage, 182, |
| 29198 | /* 76220 */ GIR_EraseRootFromParent_Done, |
| 29199 | /* 76221 */ // Label 1901: @76221 |
| 29200 | /* 76221 */ GIM_Try, /*On fail goto*//*Label 1902*/ GIMT_Encode4(76248), // Rule ID 172 // |
| 29201 | /* 76226 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 29202 | /* 76229 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29203 | /* 76233 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29204 | /* 76237 */ // (strict_fsub:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FSUB_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 29205 | /* 76237 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_S), |
| 29206 | /* 76242 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29207 | /* 76246 */ GIR_RootConstrainSelectedInstOperands, |
| 29208 | /* 76247 */ // GIR_Coverage, 172, |
| 29209 | /* 76247 */ GIR_Done, |
| 29210 | /* 76248 */ // Label 1902: @76248 |
| 29211 | /* 76248 */ GIM_Reject, |
| 29212 | /* 76249 */ // Label 1899: @76249 |
| 29213 | /* 76249 */ GIM_Reject, |
| 29214 | /* 76250 */ // Label 1897: @76250 |
| 29215 | /* 76250 */ GIM_Try, /*On fail goto*//*Label 1903*/ GIMT_Encode4(76568), |
| 29216 | /* 76255 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 29217 | /* 76258 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 29218 | /* 76261 */ GIM_Try, /*On fail goto*//*Label 1904*/ GIMT_Encode4(76322), // Rule ID 191 // |
| 29219 | /* 76266 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29220 | /* 76269 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29221 | /* 76273 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29222 | /* 76277 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 29223 | /* 76281 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29224 | /* 76285 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29225 | /* 76289 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29226 | /* 76294 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29227 | /* 76299 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29228 | /* 76303 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29229 | /* 76305 */ // (strict_fsub:{ *:[f64] } (fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29230 | /* 76305 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D32), |
| 29231 | /* 76308 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29232 | /* 76310 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29233 | /* 76312 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29234 | /* 76316 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29235 | /* 76320 */ GIR_RootConstrainSelectedInstOperands, |
| 29236 | /* 76321 */ // GIR_Coverage, 191, |
| 29237 | /* 76321 */ GIR_EraseRootFromParent_Done, |
| 29238 | /* 76322 */ // Label 1904: @76322 |
| 29239 | /* 76322 */ GIM_Try, /*On fail goto*//*Label 1905*/ GIMT_Encode4(76383), // Rule ID 199 // |
| 29240 | /* 76327 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29241 | /* 76330 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29242 | /* 76334 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29243 | /* 76338 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_FMUL), |
| 29244 | /* 76342 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29245 | /* 76346 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29246 | /* 76350 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29247 | /* 76355 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29248 | /* 76360 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29249 | /* 76364 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29250 | /* 76366 */ // (strict_fsub:{ *:[f64] } (fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29251 | /* 76366 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D64), |
| 29252 | /* 76369 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29253 | /* 76371 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29254 | /* 76373 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29255 | /* 76377 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29256 | /* 76381 */ GIR_RootConstrainSelectedInstOperands, |
| 29257 | /* 76382 */ // GIR_Coverage, 199, |
| 29258 | /* 76382 */ GIR_EraseRootFromParent_Done, |
| 29259 | /* 76383 */ // Label 1905: @76383 |
| 29260 | /* 76383 */ GIM_Try, /*On fail goto*//*Label 1906*/ GIMT_Encode4(76444), // Rule ID 190 // |
| 29261 | /* 76388 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29262 | /* 76391 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29263 | /* 76395 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29264 | /* 76399 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 29265 | /* 76403 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29266 | /* 76407 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29267 | /* 76411 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29268 | /* 76416 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29269 | /* 76421 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29270 | /* 76425 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29271 | /* 76427 */ // (strict_fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft), AFGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fr, AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29272 | /* 76427 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D32), |
| 29273 | /* 76430 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29274 | /* 76432 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29275 | /* 76434 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29276 | /* 76438 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29277 | /* 76442 */ GIR_RootConstrainSelectedInstOperands, |
| 29278 | /* 76443 */ // GIR_Coverage, 190, |
| 29279 | /* 76443 */ GIR_EraseRootFromParent_Done, |
| 29280 | /* 76444 */ // Label 1906: @76444 |
| 29281 | /* 76444 */ GIM_Try, /*On fail goto*//*Label 1907*/ GIMT_Encode4(76505), // Rule ID 198 // |
| 29282 | /* 76449 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMadd4_HasMips4_32r2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips_NotMips32r6_NotMips64r6), |
| 29283 | /* 76452 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29284 | /* 76456 */ GIM_RecordInsn, /*DefineMI*/1, /*MI*/0, /*OpIdx*/1, // MIs[1] |
| 29285 | /* 76460 */ GIM_CheckOpcode, /*MI*/1, GIMT_Encode2(TargetOpcode::G_STRICT_FMUL), |
| 29286 | /* 76464 */ GIM_CheckType, /*MI*/1, /*Op*/1, /*Type*/GILLT_s64, |
| 29287 | /* 76468 */ GIM_CheckType, /*MI*/1, /*Op*/2, /*Type*/GILLT_s64, |
| 29288 | /* 76472 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29289 | /* 76477 */ GIM_CheckRegBankForClass, /*MI*/1, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29290 | /* 76482 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29291 | /* 76486 */ GIM_CheckIsSafeToFold, /*NumInsns*/1, |
| 29292 | /* 76488 */ // (strict_fsub:{ *:[f64] } (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft), FGR64Opnd:{ *:[f64] }:$fr) => (MSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fr, FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29293 | /* 76488 */ GIR_BuildRootMI, /*Opcode*/GIMT_Encode2(Mips::MSUB_D64), |
| 29294 | /* 76491 */ GIR_RootToRootCopy, /*OpIdx*/0, // DstI[fd] |
| 29295 | /* 76493 */ GIR_RootToRootCopy, /*OpIdx*/2, // fr |
| 29296 | /* 76495 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/1, // fs |
| 29297 | /* 76499 */ GIR_Copy, /*NewInsnID*/0, /*OldInsnID*/1, /*OpIdx*/2, // ft |
| 29298 | /* 76503 */ GIR_RootConstrainSelectedInstOperands, |
| 29299 | /* 76504 */ // GIR_Coverage, 198, |
| 29300 | /* 76504 */ GIR_EraseRootFromParent_Done, |
| 29301 | /* 76505 */ // Label 1907: @76505 |
| 29302 | /* 76505 */ GIM_Try, /*On fail goto*//*Label 1908*/ GIMT_Encode4(76536), // Rule ID 174 // |
| 29303 | /* 76510 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 29304 | /* 76513 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29305 | /* 76517 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29306 | /* 76521 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29307 | /* 76525 */ // (strict_fsub:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FSUB_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29308 | /* 76525 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_D32), |
| 29309 | /* 76530 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29310 | /* 76534 */ GIR_RootConstrainSelectedInstOperands, |
| 29311 | /* 76535 */ // GIR_Coverage, 174, |
| 29312 | /* 76535 */ GIR_Done, |
| 29313 | /* 76536 */ // Label 1908: @76536 |
| 29314 | /* 76536 */ GIM_Try, /*On fail goto*//*Label 1909*/ GIMT_Encode4(76567), // Rule ID 176 // |
| 29315 | /* 76541 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 29316 | /* 76544 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29317 | /* 76548 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29318 | /* 76552 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29319 | /* 76556 */ // (strict_fsub:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FSUB_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29320 | /* 76556 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSUB_D64), |
| 29321 | /* 76561 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29322 | /* 76565 */ GIR_RootConstrainSelectedInstOperands, |
| 29323 | /* 76566 */ // GIR_Coverage, 176, |
| 29324 | /* 76566 */ GIR_Done, |
| 29325 | /* 76567 */ // Label 1909: @76567 |
| 29326 | /* 76567 */ GIM_Reject, |
| 29327 | /* 76568 */ // Label 1903: @76568 |
| 29328 | /* 76568 */ GIM_Reject, |
| 29329 | /* 76569 */ // Label 1898: @76569 |
| 29330 | /* 76569 */ GIM_Reject, |
| 29331 | /* 76570 */ // Label 80: @76570 |
| 29332 | /* 76570 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1912*/ GIMT_Encode4(76702), |
| 29333 | /* 76581 */ /*GILLT_s32*//*Label 1910*/ GIMT_Encode4(76589), |
| 29334 | /* 76585 */ /*GILLT_s64*//*Label 1911*/ GIMT_Encode4(76627), |
| 29335 | /* 76589 */ // Label 1910: @76589 |
| 29336 | /* 76589 */ GIM_Try, /*On fail goto*//*Label 1913*/ GIMT_Encode4(76626), // Rule ID 166 // |
| 29337 | /* 76594 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 29338 | /* 76597 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 29339 | /* 76600 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 29340 | /* 76603 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29341 | /* 76607 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29342 | /* 76611 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29343 | /* 76615 */ // (strict_fmul:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FMUL_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 29344 | /* 76615 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_S), |
| 29345 | /* 76620 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29346 | /* 76624 */ GIR_RootConstrainSelectedInstOperands, |
| 29347 | /* 76625 */ // GIR_Coverage, 166, |
| 29348 | /* 76625 */ GIR_Done, |
| 29349 | /* 76626 */ // Label 1913: @76626 |
| 29350 | /* 76626 */ GIM_Reject, |
| 29351 | /* 76627 */ // Label 1911: @76627 |
| 29352 | /* 76627 */ GIM_Try, /*On fail goto*//*Label 1914*/ GIMT_Encode4(76701), |
| 29353 | /* 76632 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 29354 | /* 76635 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 29355 | /* 76638 */ GIM_Try, /*On fail goto*//*Label 1915*/ GIMT_Encode4(76669), // Rule ID 168 // |
| 29356 | /* 76643 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 29357 | /* 76646 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29358 | /* 76650 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29359 | /* 76654 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29360 | /* 76658 */ // (strict_fmul:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FMUL_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29361 | /* 76658 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_D32), |
| 29362 | /* 76663 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29363 | /* 76667 */ GIR_RootConstrainSelectedInstOperands, |
| 29364 | /* 76668 */ // GIR_Coverage, 168, |
| 29365 | /* 76668 */ GIR_Done, |
| 29366 | /* 76669 */ // Label 1915: @76669 |
| 29367 | /* 76669 */ GIM_Try, /*On fail goto*//*Label 1916*/ GIMT_Encode4(76700), // Rule ID 170 // |
| 29368 | /* 76674 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 29369 | /* 76677 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29370 | /* 76681 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29371 | /* 76685 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29372 | /* 76689 */ // (strict_fmul:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FMUL_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29373 | /* 76689 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FMUL_D64), |
| 29374 | /* 76694 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29375 | /* 76698 */ GIR_RootConstrainSelectedInstOperands, |
| 29376 | /* 76699 */ // GIR_Coverage, 170, |
| 29377 | /* 76699 */ GIR_Done, |
| 29378 | /* 76700 */ // Label 1916: @76700 |
| 29379 | /* 76700 */ GIM_Reject, |
| 29380 | /* 76701 */ // Label 1914: @76701 |
| 29381 | /* 76701 */ GIM_Reject, |
| 29382 | /* 76702 */ // Label 1912: @76702 |
| 29383 | /* 76702 */ GIM_Reject, |
| 29384 | /* 76703 */ // Label 81: @76703 |
| 29385 | /* 76703 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1919*/ GIMT_Encode4(76835), |
| 29386 | /* 76714 */ /*GILLT_s32*//*Label 1917*/ GIMT_Encode4(76722), |
| 29387 | /* 76718 */ /*GILLT_s64*//*Label 1918*/ GIMT_Encode4(76760), |
| 29388 | /* 76722 */ // Label 1917: @76722 |
| 29389 | /* 76722 */ GIM_Try, /*On fail goto*//*Label 1920*/ GIMT_Encode4(76759), // Rule ID 160 // |
| 29390 | /* 76727 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 29391 | /* 76730 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 29392 | /* 76733 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s32, |
| 29393 | /* 76736 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29394 | /* 76740 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29395 | /* 76744 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29396 | /* 76748 */ // (strict_fdiv:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) => (FDIV_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs, FGR32Opnd:{ *:[f32] }:$ft) |
| 29397 | /* 76748 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_S), |
| 29398 | /* 76753 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29399 | /* 76757 */ GIR_RootConstrainSelectedInstOperands, |
| 29400 | /* 76758 */ // GIR_Coverage, 160, |
| 29401 | /* 76758 */ GIR_Done, |
| 29402 | /* 76759 */ // Label 1920: @76759 |
| 29403 | /* 76759 */ GIM_Reject, |
| 29404 | /* 76760 */ // Label 1918: @76760 |
| 29405 | /* 76760 */ GIM_Try, /*On fail goto*//*Label 1921*/ GIMT_Encode4(76834), |
| 29406 | /* 76765 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 29407 | /* 76768 */ GIM_RootCheckType, /*Op*/2, /*Type*/GILLT_s64, |
| 29408 | /* 76771 */ GIM_Try, /*On fail goto*//*Label 1922*/ GIMT_Encode4(76802), // Rule ID 162 // |
| 29409 | /* 76776 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 29410 | /* 76779 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29411 | /* 76783 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29412 | /* 76787 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29413 | /* 76791 */ // (strict_fdiv:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) => (FDIV_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs, AFGR64Opnd:{ *:[f64] }:$ft) |
| 29414 | /* 76791 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_D32), |
| 29415 | /* 76796 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29416 | /* 76800 */ GIR_RootConstrainSelectedInstOperands, |
| 29417 | /* 76801 */ // GIR_Coverage, 162, |
| 29418 | /* 76801 */ GIR_Done, |
| 29419 | /* 76802 */ // Label 1922: @76802 |
| 29420 | /* 76802 */ GIM_Try, /*On fail goto*//*Label 1923*/ GIMT_Encode4(76833), // Rule ID 164 // |
| 29421 | /* 76807 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 29422 | /* 76810 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29423 | /* 76814 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29424 | /* 76818 */ GIM_RootCheckRegBankForClass, /*Op*/2, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29425 | /* 76822 */ // (strict_fdiv:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) => (FDIV_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs, FGR64Opnd:{ *:[f64] }:$ft) |
| 29426 | /* 76822 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FDIV_D64), |
| 29427 | /* 76827 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29428 | /* 76831 */ GIR_RootConstrainSelectedInstOperands, |
| 29429 | /* 76832 */ // GIR_Coverage, 164, |
| 29430 | /* 76832 */ GIR_Done, |
| 29431 | /* 76833 */ // Label 1923: @76833 |
| 29432 | /* 76833 */ GIM_Reject, |
| 29433 | /* 76834 */ // Label 1921: @76834 |
| 29434 | /* 76834 */ GIM_Reject, |
| 29435 | /* 76835 */ // Label 1919: @76835 |
| 29436 | /* 76835 */ GIM_Reject, |
| 29437 | /* 76836 */ // Label 82: @76836 |
| 29438 | /* 76836 */ GIM_SwitchType, /*MI*/0, /*Op*/0, /*[*/GIMT_Encode2(1), GIMT_Encode2(3), /*)*//*default:*//*Label 1926*/ GIMT_Encode4(76950), |
| 29439 | /* 76847 */ /*GILLT_s32*//*Label 1924*/ GIMT_Encode4(76855), |
| 29440 | /* 76851 */ /*GILLT_s64*//*Label 1925*/ GIMT_Encode4(76886), |
| 29441 | /* 76855 */ // Label 1924: @76855 |
| 29442 | /* 76855 */ GIM_Try, /*On fail goto*//*Label 1927*/ GIMT_Encode4(76885), // Rule ID 132 // |
| 29443 | /* 76860 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips2_HasStdEnc_IsNotSoftFloat_NotInMicroMips), |
| 29444 | /* 76863 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s32, |
| 29445 | /* 76866 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29446 | /* 76870 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR32RegClassID), |
| 29447 | /* 76874 */ // (strict_fsqrt:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) => (FSQRT_S:{ *:[f32] } FGR32Opnd:{ *:[f32] }:$fs) |
| 29448 | /* 76874 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_S), |
| 29449 | /* 76879 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29450 | /* 76883 */ GIR_RootConstrainSelectedInstOperands, |
| 29451 | /* 76884 */ // GIR_Coverage, 132, |
| 29452 | /* 76884 */ GIR_Done, |
| 29453 | /* 76885 */ // Label 1927: @76885 |
| 29454 | /* 76885 */ GIM_Reject, |
| 29455 | /* 76886 */ // Label 1925: @76886 |
| 29456 | /* 76886 */ GIM_Try, /*On fail goto*//*Label 1928*/ GIMT_Encode4(76949), |
| 29457 | /* 76891 */ GIM_RootCheckType, /*Op*/1, /*Type*/GILLT_s64, |
| 29458 | /* 76894 */ GIM_Try, /*On fail goto*//*Label 1929*/ GIMT_Encode4(76921), // Rule ID 134 // |
| 29459 | /* 76899 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips2_HasStdEnc_IsNotSoftFloat_NotFP64bit_NotInMicroMips), |
| 29460 | /* 76902 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29461 | /* 76906 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::AFGR64RegClassID), |
| 29462 | /* 76910 */ // (strict_fsqrt:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) => (FSQRT_D32:{ *:[f64] } AFGR64Opnd:{ *:[f64] }:$fs) |
| 29463 | /* 76910 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_D32), |
| 29464 | /* 76915 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29465 | /* 76919 */ GIR_RootConstrainSelectedInstOperands, |
| 29466 | /* 76920 */ // GIR_Coverage, 134, |
| 29467 | /* 76920 */ GIR_Done, |
| 29468 | /* 76921 */ // Label 1929: @76921 |
| 29469 | /* 76921 */ GIM_Try, /*On fail goto*//*Label 1930*/ GIMT_Encode4(76948), // Rule ID 136 // |
| 29470 | /* 76926 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasMips2_HasStdEnc_IsFP64bit_IsNotSoftFloat_NotInMicroMips), |
| 29471 | /* 76929 */ GIM_RootCheckRegBankForClass, /*Op*/0, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29472 | /* 76933 */ GIM_RootCheckRegBankForClass, /*Op*/1, /*RC*/GIMT_Encode2(Mips::FGR64RegClassID), |
| 29473 | /* 76937 */ // (strict_fsqrt:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) => (FSQRT_D64:{ *:[f64] } FGR64Opnd:{ *:[f64] }:$fs) |
| 29474 | /* 76937 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::FSQRT_D64), |
| 29475 | /* 76942 */ GIR_AddImplicitUse, /*InsnID*/0, GIMT_Encode2(Mips::FCR31), |
| 29476 | /* 76946 */ GIR_RootConstrainSelectedInstOperands, |
| 29477 | /* 76947 */ // GIR_Coverage, 136, |
| 29478 | /* 76947 */ GIR_Done, |
| 29479 | /* 76948 */ // Label 1930: @76948 |
| 29480 | /* 76948 */ GIM_Reject, |
| 29481 | /* 76949 */ // Label 1928: @76949 |
| 29482 | /* 76949 */ GIM_Reject, |
| 29483 | /* 76950 */ // Label 1926: @76950 |
| 29484 | /* 76950 */ GIM_Reject, |
| 29485 | /* 76951 */ // Label 83: @76951 |
| 29486 | /* 76951 */ GIM_Try, /*On fail goto*//*Label 1931*/ GIMT_Encode4(76966), // Rule ID 90 // |
| 29487 | /* 76956 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_HasStdEnc_NotInMicroMips), |
| 29488 | /* 76959 */ // (trap) => (TRAP) |
| 29489 | /* 76959 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::TRAP), |
| 29490 | /* 76964 */ GIR_RootConstrainSelectedInstOperands, |
| 29491 | /* 76965 */ // GIR_Coverage, 90, |
| 29492 | /* 76965 */ GIR_Done, |
| 29493 | /* 76966 */ // Label 1931: @76966 |
| 29494 | /* 76966 */ GIM_Try, /*On fail goto*//*Label 1932*/ GIMT_Encode4(76981), // Rule ID 1190 // |
| 29495 | /* 76971 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMicroMips), |
| 29496 | /* 76974 */ // (trap) => (TRAP_MM) |
| 29497 | /* 76974 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::TRAP_MM), |
| 29498 | /* 76979 */ GIR_RootConstrainSelectedInstOperands, |
| 29499 | /* 76980 */ // GIR_Coverage, 1190, |
| 29500 | /* 76980 */ GIR_Done, |
| 29501 | /* 76981 */ // Label 1932: @76981 |
| 29502 | /* 76981 */ GIM_Try, /*On fail goto*//*Label 1933*/ GIMT_Encode4(76996), // Rule ID 2037 // |
| 29503 | /* 76986 */ GIM_CheckFeatures, GIMT_Encode2(GIFBS_InMips16Mode), |
| 29504 | /* 76989 */ // (trap) => (Break16) |
| 29505 | /* 76989 */ GIR_MutateOpcode, /*InsnID*/0, /*RecycleInsnID*/0, /*Opcode*/GIMT_Encode2(Mips::Break16), |
| 29506 | /* 76994 */ GIR_RootConstrainSelectedInstOperands, |
| 29507 | /* 76995 */ // GIR_Coverage, 2037, |
| 29508 | /* 76995 */ GIR_Done, |
| 29509 | /* 76996 */ // Label 1933: @76996 |
| 29510 | /* 76996 */ GIM_Reject, |
| 29511 | /* 76997 */ // Label 84: @76997 |
| 29512 | /* 76997 */ GIM_Reject, |
| 29513 | /* 76998 */ }; // Size: 76998 bytes |
| 29514 | return MatchTable0; |
| 29515 | } |
| 29516 | #undef GIMT_Encode2 |
| 29517 | #undef GIMT_Encode4 |
| 29518 | #undef GIMT_Encode8 |
| 29519 | |
| 29520 | #endif // ifdef GET_GLOBALISEL_IMPL |
| 29521 | |
| 29522 | #ifdef GET_GLOBALISEL_PREDICATES_DECL |
| 29523 | PredicateBitset AvailableModuleFeatures; |
| 29524 | mutable PredicateBitset AvailableFunctionFeatures; |
| 29525 | PredicateBitset getAvailableFeatures() const { |
| 29526 | return AvailableModuleFeatures | AvailableFunctionFeatures; |
| 29527 | } |
| 29528 | PredicateBitset |
| 29529 | computeAvailableModuleFeatures(const MipsSubtarget *Subtarget) const; |
| 29530 | PredicateBitset |
| 29531 | computeAvailableFunctionFeatures(const MipsSubtarget *Subtarget, |
| 29532 | const MachineFunction *MF) const; |
| 29533 | void setupGeneratedPerFunctionState(MachineFunction &MF) override; |
| 29534 | #endif // ifdef GET_GLOBALISEL_PREDICATES_DECL |
| 29535 | #ifdef GET_GLOBALISEL_PREDICATES_INIT |
| 29536 | AvailableModuleFeatures(computeAvailableModuleFeatures(&STI)), |
| 29537 | AvailableFunctionFeatures() |
| 29538 | #endif // ifdef GET_GLOBALISEL_PREDICATES_INIT |
| 29539 | |